Are there known parameters that can be passed to Netflix player when started with ECP /launch ?
In particular i have in mind being able to pass movie ID to be started. To illustrate the need, check the neat iPhone app DvpRemote (http://claytongrafix.com/pirey4/apps/DVPRemote.html ) - it’s wifi remote for Roku and it uses Netflix SDK for access to user instant queue. Stariong a flic from there is really awkward though - it asks if you are positioned right in the movie selection screen and then sends keypresses trying to hunt positionally the movie in the list. It’s clumsy and with risks being out of sync, bad UI etc.
So, any parameters that can be passed when ECP starting netflix or chance of adding that?
The developer of DVPRemote is pretty well on top of things when it comes to controlling the Roku, so if his app doesn’t do it, there’s a good chance it can’t be done, yet.
“TheEndless” wrote:
The developer of DVPRemote is pretty well on top of things when it comes to controlling the Roku, so if his app doesn’t do it, there’s a good chance it can’t be done, yet.
I am hoping for a first-hand answer (from s/o whose name begins with “Roku”). If i understand correctly, Netflix channel is a closed-source app developed by Roku in cooperation with Netflix - and the developer of said iPhone app is a private citizen.
There might be unpublished API or Roku may consider adding parameter handling to the Netflix app, seeing it useful.
My point was that pirey is unlikely to have implemented it in his app the way he did if it were possible to do otherwise. By “pretty well on top of things” I meant he would have already inquired with Roku about this before going through the hassle he did to get it working the way he has.
EDIT: I should also add that I’m working on a project that would greatly benefit from some ECP control of the Netflix channel, so I too have a vested interest in this kind of functionality.
“EnTerr” wrote:
Are there known parameters that can be passed to Netflix player when started with ECP /launch ?
In particular i have in mind being able to pass movie ID to be started. To illustrate the need, check the neat iPhone app DvpRemote (http://claytongrafix.com/pirey4/apps/DVPRemote.html ) - it’s wifi remote for Roku and it uses Netflix SDK for access to user instant queue. Stariong a flic from there is really awkward though - it asks if you are positioned right in the movie selection screen and then sends keypresses trying to hunt positionally the movie in the list. It’s clumsy and with risks being out of sync, bad UI etc.
So, any parameters that can be passed when ECP starting netflix or chance of adding that?
I’ve asked before as well, and there’s currently no parameters implemented for ECP control for Netflix in the public version of the channel :(.
it would be awesome to be able to do this. I want to write a chrome extension or greasemonkey script to tell the MOG app to play something based on a web click on mog.com, which would be a lot nicer than navigating with the remote and would mean you wouldn’t have to switch your tv to the roku source if you’re playing a game or something. I tried doing it in the same way the web-based roku remotes work but it’s not workable for the reasons listed above. you have to assume you’re in the MOG app at the first selection, arbitrarily pause for a long time between button presses so you know they have been fully processed, and since you’re doing it blind if anything happens that you weren’t expecting you’re completely lost. if roku implemented a call to start an application (or ensure you’re already in one), and allowed app developers to implement a single call like “play song/album/video with unique ID x” then this would be trivial. as it is, I don’t think it’s possible.
does anyone have any more information I can look at to try and make it work?
edit: I see that some of this may be in the works, but I can’t find the ECP docs everyone is talking about on the roku developer site. does anybody have a link?
“whaleface” wrote:
if roku implemented a call to start an application (or ensure you’re already in one), and allowed app developers to implement a single call like “play song/album/video with unique ID x” then this would be trivial. as it is, I don’t think it’s possible.
there is already a easy REST API for staring a channel - and parameters can be passed too. now whether MOG channel supports any arguments (like song ID or album) is something to bark at MOG’s tree, Roku had done their part
“whaleface” wrote:
if roku implemented a call to start an application (or ensure you’re already in one), and allowed app developers to implement a single call like “play song/album/video with unique ID x” then this would be trivial. as it is, I don’t think it’s possible.
there is already a easy REST API for staring a channel - and parameters can be passed too. now whether MOG channel supports any arguments (like song ID or album) is something to bark at MOG’s tree, Roku had done their part
I see that now, thanks. sorry for not reading first but somehow I missed this document the last time I looked at the sdk. I’m going to ask mog to add some support for ecp now.
“whaleface” wrote:
if roku implemented a call to start an application (or ensure you’re already in one), and allowed app developers to implement a single call like “play song/album/video with unique ID x” then this would be trivial. as it is, I don’t think it’s possible.
there is already a easy REST API for staring a channel - and parameters can be passed too. now whether MOG channel supports any arguments (like song ID or album) is something to bark at MOG’s tree, Roku had done their part
I see that now, thanks. sorry for not reading first but somehow I missed this document the last time I looked at the sdk. I’m going to ask mog to add some support for ecp now. It was introduced with the 2.7 sdk, in October. If you looked at an older sdk, the document wouldn’t have been in there. There’s a release notes document in the sdk that has pretty good details for each release.
What does it mean for MOG to add support for arguments? As I understand it ECP is basically keystroke macros, except mapping to the Roku remote. Do we do arguments by creating a form that only a keystroke macro would want?
“lucasgonze” wrote:
What does it mean for MOG to add support for arguments? As I understand it ECP is basically keystroke macros, except mapping to the Roku remote. Do we do arguments by creating a form that only a keystroke macro would want?It’s possible to send specific parameters via a url command so that at launch time the channel can access those parameters and act accordingly, as explained by TheEndless in this post. See also the ECP document in the Roku sdk. Be aware that the ExternalControlGuide.pdf document in the 2.8 sdk says this is in the simplevideoplayer example code. This is wrong, but TheEndless has provided an example at the link above.
/edit: And in case it wasn’t clear, those parameters could be any imaginable param and it’s associated data, for instance:
songid=4567890
page=2
backgroundcolor=blue
and so on…your app just needs to check for the existence of the object at launch and then take action as appropriate.
“lucasgonze” wrote:
What does it mean for MOG to add support for arguments? As I understand it ECP is basically keystroke macros, except mapping to the Roku remote. Do we do arguments by creating a form that only a keystroke macro would want?It’s possible to send specific parameters via a url command so that at launch time the channel can access those parameters and act accordingly, as explained by TheEndless in this post. See also the ECP document in the Roku sdk. Be aware that the ExternalControlGuide.pdf document in the 2.8 sdk says this is in the simplevideoplayer example code. This is wrong, but TheEndless has provided an example at the link above.
As a real world example, I’ve implemented it in my SHOUTcast channel as a way for users to provide custom streams. Details here: viewtopic.php?f=28&t=31913&p=232475#p232468
You can have a look at the source of remoku. You’ll have to manually hardcode your appid into it, there’s no way(that I know of, currently) to auto-detect that from javascript. You can download the code from http://code.google.com/p/remoku/ (it’s in the source tree, under the gonzotek branch), or just browse to Apps4TV and have a look at the source from the browser. It’d be pretty easy to recreate.
If you do anything fun with it and want to share it back, I’m open :). And/or you can use it (with or without modifications) in your project, it’s under a permissive new bsd license.
/edit: I’ll see if I can put together a form on the apps4tv domain for other developers to play with as well, might be useful.
I’ve got something workable started, but I won’t get a chance to finish it tonight. I think I should have time tomorrow evening to get something up that will be generally helpful for channel developers to test their ecp launch param-enabled channels, as well as for end users to, err, use the implemented features.
And by the way, thanks TheEndless for doing the Shoutcast channel, it’s going to be the default example for the form :). Unless you have any objection, of course
“gonzotek” wrote:
I’ve got something workable started, but I won’t get a chance to finish it tonight. I think I should have time tomorrow evening to get something up that will be generally helpful for channel developers to test their ecp launch param-enabled channels, as well as for end users to, err, use the implemented features.
And by the way, thanks TheEndless for doing the Shoutcast channel, it’s going to be the default example for the form :). Unless you have any objection, of course
No objections here! I’m about to send you a PM about Remoku too, so check your PMs…
lurking with interest over here. btw lucasgonze, since I’m assuming you are one of MOG’s channel developers, thanks for tracking this forum post down. I’m excited to see if you manage to get something working.