Roku Developer Program

Developers and content creators—a complete solution for growing an audience directly.
cancel
Showing results for 
Search instead for 
Did you mean: 
roquoonewbie
Level 7

Firmware 7.0 Introduces ECP launch command bug

Prior to updating to firmware 7.0, it was possible to use the ECP launch command to open the channel store to the channel page of a specific *private* channel. For example, this command would launch the device to a channel store screen showing the channel's description and star rating, with an option to "Add Channel":

$ curl -d '' 'http://192.168.1.134:8060/launch/11?contentID=54321'

However, it now does nothing after the firmware update. I have observed that this command still works for public channels in 7.0. But no longer for private channels. I see nothing in the documentation that indicates this was an intentional change, so I presume it to be a bug. Can Roku confirm it was unintended and will be fixed?

The current ECP guide still mentions this specific example also:

http://sdkdocs.roku.com/display/sdkdoc/ ... trol+Guide

6. The following command will launch the channel store app (11) on the box with a contentID equal to 14 (the MLB app).
$ curl -d '' 'http://192.168.1.134:8060/launch/11?contentID=14'
0 Kudos
29 Replies
EnTerr
Level 8

Re: Firmware 7.0 Introduces ECP launch command bug

Seems to be a bug, yes!

See example from three months ago viewtopic.php?f=34&t=88250#p497521
There was a similar bug almost two years ago - viewtopic.php?f=34&t=66292 - but they fixed it back then (retrogression?).
0 Kudos
TheEndless
Level 7

Re: Firmware 7.0 Introduces ECP launch command bug

"EnTerr" wrote:
Seems to be a bug, yes!

I'm not so sure... note that the OP is trying to launch to a private channel in the channel store, which aren't typically installable directly on the device. It still works with public channels, so it's possible Roku just patched something that wasn't intended to be a feature in the first place.
My Channels: http://roku.permanence.com - Twitter: @TheEndlessDev
Instant Watch Browser (NetflixIWB), Aquarium Screensaver (AQUARIUM), Clever Clocks Screensaver (CLEVERCLOCKS), iTunes Podcasts (ITPC), My Channels (MYCHANNELS)
0 Kudos
roquoonewbie
Level 7

Re: Firmware 7.0 Introduces ECP launch command bug

However, nothing in the documentation has ever (nor currently does) indicate that this feature was meant only for public channels.
0 Kudos
EnTerr
Level 8

Re: Firmware 7.0 Introduces ECP launch command bug

"TheEndless" wrote:
It still works with public channels, so it's possible Roku just patched something that wasn't intended to be a feature in the first place.

It doesn't - i tried Netflix, Amazon, Pandora, YouTube - nuh-uh. Curiously, previous time there was such bug it was bouncing a 404 - now it says 200:
$ curl -i -d "" http://192.168.1.28:8060/launch/11?ContentID=12
HTTP/1.1 200 OK
Server: Roku UPnP/1.0 MiniUPnPd/1.4
Content-Length: 0

$ curl -i -d "" http://192.168.1.28:8060/launch/11?ContentID=13
HTTP/1.1 200 OK
Server: Roku UPnP/1.0 MiniUPnPd/1.4
Content-Length: 0

$ curl -i -d "" http://192.168.1.28:8060/launch/11?ContentID=28
HTTP/1.1 200 OK
Server: Roku UPnP/1.0 MiniUPnPd/1.4
Content-Length: 0

$ curl -i -d "" http://192.168.1.28:8060/launch/11?ContentID=837
HTTP/1.1 200 OK
Server: Roku UPnP/1.0 MiniUPnPd/1.4
Content-Length: 0
0 Kudos
RokuMarkn
Level 7

Re: Firmware 7.0 Introduces ECP launch command bug

Do you have those channels already installed? I think it only works if you use a channel that is not currently installed on your box.

Also I don't think it was ever intended to work for private channels, but I'll check on this. You can't get to the Channel Store page for a private channel through the UI, so it doesn't seem right that you could do it via ECP.

--Mark
0 Kudos
roquoonewbie
Level 7

Re: Firmware 7.0 Introduces ECP launch command bug

EnTerr, I think your public channel issue is because you capitalized contentID.
0 Kudos
roquoonewbie
Level 7

Re: Firmware 7.0 Introduces ECP launch command bug

Note it was working for private channels for at least the last 2-3 years. I don't see why it wouldn't work for private channels too. It displays the ratings and provides a description of the channel that is useful for someone interested in installing it. And there are ECP programs out in the wild that were built to use this feature which are now broken.
0 Kudos
EnTerr
Level 8

Re: Firmware 7.0 Introduces ECP launch command bug

"roquoonewbie" wrote:
EnTerr, I think your public channel issue is because you capitalized contentID.
Makes no difference. "Channel 11" is case-insensitive on contentID
0 Kudos
EnTerr
Level 8

Re: Firmware 7.0 Introduces ECP launch command bug

"RokuMarkn" wrote:
Do you have those channels already installed? I think it only works if you use a channel that is not currently installed on your box.

Also I don't think it was ever intended to work for private channels, but I'll check on this. You can't get to the Channel Store page for a private channel through the UI, so it doesn't seem right that you could do it via ECP.

It was working before for any channel - public or private - installed or uninstalled. And the functionality was very neat and self-contained, without semantical leaks*.

See for example my "Remote for Roku" iOS app where a "long tap" on an icon from the channel list would pop the channel details page on TV screen (by calling /launch/11?ContentID=). It makes for a very nice integration and without stealing any Roku thunder - conversely, it re-focuses the user from the mobile device to the TV screen.

(*) Meaning that for any channel it brings a single, self-contained "app info" screen with a short description, average rating, screenshots and choices to add/remove/launch/rate the channel. Which screen is rather elegant and i'd argue it is the screen that should pop when Options is pressed on an icon (or at least should be accessible from the current "move" menu). When invoked with ECP, exiting it with Back did not link to Channel Store, so there couldn't be an implication that say a private channel is endorsed in any way by the Co. That's what i mean by "no leaky semantics"
0 Kudos