Ninja Sphere - Chromecast Driver
Introduction
This is a driver for the Google Chromecast, allowing it to be used as part of Ninja Sphere.
It currently only supports applications that export the "urn:x-cast:com.google.cast.media" namespace, though that will be expanded as other namespaces are found and documented.
Supported Sphere Protocols
Name |
URI |
Supported Events |
Supported Methods |
volume |
http://schema.ninjablocks.com/protocol/volume |
set, volumeUp, volumeDown, mute, unmute, toggleMute |
state |
media-control |
http://schema.ninjablocks.com/protocol/media-control |
play, pause, togglePlay |
playing, paused, stopped, buffering, busy, idle, inactive |
To Do
-
Add the media protocol, to gain media meta-data and play position/seeking.
-
Finish the media-control protocol support, adding next/previous/stop etc.
-
Add additional support for the Plex applcation, collecting advanced meta-data from the Plex Server's REST api.
-
See if notifications are possible without using a custom application (i.e. by adjusting the current player's CSS, or using additional namespaces)
-
Expand support for other applications, especially to pull extra meta-data (i.e. YouTube)
Can't Do
- Owing to private APIs, the Netflix application can't currently be supported.
Requirements
Dependencies
https://github.com/ninjasphere/go-castv2
Building
This project can be built with go build
, but a makefile is also provided.
Running
DEBUG=* ./driver-go-chromecast
Options
The usual Ninja Sphere configuration and parameters apply, but these are the most useful during development.
--autostart
- Doesn't wait to be started by Ninja Sphere
--mqtt.host=HOST
- Override default mqtt host
--mqtt.port=PORT
- Override default mqtt host
More information can be found on the project site or by visiting the Ninja Blocks forums.
Contributing Changes
To contribute code changes to the project, please clone the repository and submit a pull-request (What does that mean?).
License
This project is licensed under the MIT license, a copy of which can be found in the LICENSE file.
Copyright
This work is Copyright (c) 2014-2015 - Ninja Blocks Inc.