Skip to content

bertrandmartel/bboxapi-stb

Repository files navigation

BboxApi STB client library

Build Status Download Maven Central Javadoc codecov License

Bbox Miami API client library for Kotlin/Java/Android

Go to Documentation

Features

MDNS

  • discover Rest API service
  • discover Websocket API service (only for next version)

REST

Actions & Resources

  • get channel list (GET /media/tvchannellist)
  • get list of Android apps installed (GET /applications)
  • get information about a specific installed Android app (GET /applications/$packageName)
  • get application icon (GET /applications/$packageName/image)
  • get current channel (GET /media)
  • get volume (GET /userinterface/volume)
  • start application (POST /applications/$packageName)
  • display toast (POST /userinterface/toast)
  • set volume (POST /userinterface/volume)
  • get VOD catalog (GET /media/vod) (cloud)
  • get EPG catalog (GET /media/live) (cloud)

Notifications

  • register application for notifications (POST /applications/register)
  • get all opened notification channels (GET /notification)
  • subscribe notification with specific resource type (POST /notification)
  • unsubscribe notification channel (DELETE /notification/$channelId)
  • create a notification on a specific channel (POST /notification/$channelId)

Websocket

  • open websocket stream for receiving notifications
  • parse notification messages : channel change, application state, error message

Tests

Run test on mockserver :

./gradlew test

External Library

  • Fuel: Http client for REST API
  • Gson : deserialize JSON objects
  • RxBonjour : MDNS discovery
  • OkHttp : websocket client

API documentation

https://api.bbox.fr/doc/#API%20Box

License

The MIT License (MIT) Copyright (c) 2018 Bertrand Martel