Roku Binding Request

Has anyone started work on a Roku binding? I am not a coder, but would be willing to test.

The protocol is well documented by the manufacturer. http://sdkdocs.roku.com/display/sdkdoc/External+Control+Guide

What would you like to do with a Roku binding?

No binding is necessary, as far as I can tell. the controls appear to be REST based so the HTTP Binding should work just fine.

Thank you for your reply. I am just getting started. I thought having a binding might make it easier for new users get started. I’ll try to control it with http.

There are currently more than 120 officially supported bindings (based on counting the number listed on the wiki). I think any time that an existing binding can do the job it is better to use it than create a new one. In my completely uninfluential opinion, a new binding should provide a significant value over the existing ones to warrant the extra work required to maintain it and its documentation.

1 Like

I created a new posting linked to this one with an example of how to interact with Roku from OH.

I did hack one together. If there’s any interest I can publish it for testing.
I do see advantage in separate bindings to promote wide user adoption, you can hardly expect everyone interested in automation to do heavy scripting for a device.

The binding would currently support:

  • Automated discovery of all roku players in the network
  • Automated generation of item files for each player with items supporting launch/shutdown of every application installed on the same player
  • For each application switch item a channel icon is downloaded and generated for display in the UI

All required from user to start using it immediately is to add a group item in the sitemap for every player (I could automate that as well, but I see no point).
No support for player browsing buttons yet, but it can be easily added.
My main use for it is launching or stopping apps in different scenes (e.g. - dim lights + trigger Pandora with a jazz station or YouTube with specific video, or once movement is detected on one of cameras or sensors, trigger camera app on Roku). This does require tweaking of items to achieve, but at least the binding does the heavy lifting of the initial setup.

So long as you are doing more than just wrapping a bunch of HTTP REST calls in a binding I would agree. It seems what you are describing does indeed do more than that so I have no heartburn with this being implemented in a binding.

However, I would recommend implementing it as an OH 2 binding and instead of generating Items file use the built in OH 2 auto discovery approach.

Haven’t gotten to play with OH 2 yet, yet to test if it would work.
Some screenshots of the generated interface below.

I would like to play with that binding where can I find it?

Can I see your code for that?