Медиаплеер Roku предоставляет RESTful API со следующими командами:
- query / apps Этот "query / apps" возвращает карту всех каналов, установленных на коробке Roku, в паре с их идентификатором приложения. Эта команда доступна через http GET.
- keydown принимает аргумент, описывающий нажатую клавишу. Keydown эквивалентно нажатию на удаленную клавишу, значение которой является переданным аргументом. Эта команда отправляется через POST без тела.
- keyup принимает аргумент, описывающий ключ для освобождения. Keyup эквивалентно освобождению удаленного ключа, значением которого является переданный аргумент. Эта команда отправляется через POST без тела.
- нажатие клавиши принимает аргумент, описывающий нажатую клавишу. Keyup эквивалентно нажатию и отпусканию удаленного ключа, значением которого является переданный аргумент. Эта команда отправляется через POST без тела.
- launch принимает идентификатор приложения в качестве аргумента и список параметров URL, которые отправляются идентификатору приложения в качестве roAssociativeArray, прошедшего через точку входа RunUserInterface () или Main (). Эта команда отправляется через POST без тела.
После того, как я получу запрос, список приложений будет выглядеть так:
<apps>
<app id="5127" version="1.0.28">Roku Spotlight</app>
<app id="11" version="2.2.2002">Roku Channel Store</app>
<app id="28" version="2.0.20">Pandora</app>
<app id="12" version="2.4.6">Netflix</app>
<app id="13" version="3.2.7">Amazon Instant Video</app>
<app id="2285" version="2.1.1">Hulu Plus</app>
</apps>
Я хочу запустить приложение Netflix (ID 12) в определенной телевизионной программе или фильме:
POST /launch/12?foo=bar&someVar=someValue HTTP/1.1
Где foo и someVar - это переменные, которые я отправляю в Netflix и которые соответствуют этой конкретной части содержимого. Однако я не знаю, какие переменные и какие значения мне нужно отправить в приложения премиум-класса.
Есть ли список параметров, которые принимаются Netflix / Amazon / Hulu / etc?