This section outlines the steps to implement the mobile app and TV App functionality necessary to support the Device Interface. These implementation steps include:
Yahoo! Connected TV issues and authenticates all mobile apps that connect to the Engine by requiring developers to obtain application developer keys from Yahoo!. Each time a new device requests access to the Engine, a check is made to Yahoo!'s authorization service. This step allows Yahoo! to revoke access from malicious applications. Before initiating communication, the mobile app must be authorized and all messages must be encrypted using SSL.
Each Device Communication mobile app needs to have its own application key. Follow these steps to generate a unique application key:
consumerKeybelow) and the Consumer Secret (referred to as
secretbelow) as follows:
secret = HMAC-SHA1(consumerSecret, consumerKey)
application_key = "app_id="+appId+"&consumer_key="+consumerKey+"&secret="+secret
application_keyas your Application Key in the First Time Authentication Device Interface Protocol as follows:
There is no prescribed order for the arguments for
application_key, your result should be similar to the following example for the test client:
The following software is required to test Device Communication:
To install the software for Device Communication:
pybonjourif you want to use Bonjour discovery in your mobile app using these steps:
Configure the SSL port by adding the following setting to the
The default port number is
To run the client test use the following command syntax:
python ./client.py [<hostname> <port>]
To connect through the YCTV Discovery Service, do not specify the hostname and port.
To connect directly, bypassing the YCTV Discovery Service, specify the hostname and port.
python ./client.py localhost 8099
q for quit, then
cntrl+z, and then
kill %1 respectively if previous exiting commands fail.