Roku: запуск премиум-приложения прямо в определенном видео - PullRequest
1 голос
/ 18 марта 2012

Медиаплеер 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?

Ответы [ 2 ]

1 голос
/ 24 мая 2018

Недавно я написал небольшой скрипт на python, который позволяет мне контролировать мой Roku, запускать и воспроизводить телешоу и фильмы непосредственно в Netflix / Hulu / Amazon / и т. Д.

Он использует функцию поиска API внешнего управления, а затем выполняет серию нажатий клавиш в сценарии для слепого воспроизведения первого результата поиска.

Кажется, до сих пор это работает очень хорошо для меня! Я даже подключил его к своей Amazon Alexa, чтобы я мог запустить практически все, что захочу, полностью голосом!

Вот URL-адрес проекта github, если вы заинтересованы:

https://github.com/tomchapin/roku-search-launcher

1 голос
/ 01 апреля 2012

В настоящее время эти поставщики контента не предоставляют интерфейс для запуска контента извне.Лучшее, что вы можете сделать, это использовать, например, API Netflix для добавления контента в очередь пользователя.Есть несколько сторонних каналов Roku, которые уже делают это, в частности, Instant Watch Browser и MultiQ, оба в Roku Channel Store.

...