Roku Developer Program

Join our online forum to talk to Roku developers and fellow channel creators. Ask questions, share tips with the community, and find helpful resources.
cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Luchin
Channel Surfer

ECP (port 8060) not working within dev app in OS 12.0

Hi everyone,

Since update to OS 12.0, the ECP commands are not working within the dev app, whereas in OS 11.5 and before it worked just fine. Are you having the same issue on your Roku devices ? 

It seems that Roku is now blocking port 8060 even for in-app testing (within the dev channel app) because I got now 403 as response code when previously it was always 200.

'cmd = [ECP command]
'RokuIP = [local IP of Roku device, RFC1918 address]

request = CreateObject("roUrlTransfer")
m.port = CreateObject("roMessagePort")
request.setMessagePort(m.port)
urlString = "http://" + RokuIP + ":8060/" + cmd
request.SetUrl(urlString)

if request.AsyncGetToString() then
' or if request.AsyncPostFromString("") then
msg = m.port.waitMessage(0)
print msg.GetResponseCode()
end if

So far, this new restraint for the dev app was never notified by Roku as being part of the OS 12.0 update. Such control is understandable and already existing since a while for published channel apps but it's a major setback for development as the main goal of the dev app is testing !

If instead an ECP command is sent from a local pc, the same Roku device on OS 12.0 executes it and the response code is 200. So definitely this new observed restraint is affecting the dev app.

>~ curl -s -o /dev/null -w "%{http_code}" "http://"$RokuIP":8060/"$cmd
200
0 Kudos
5 REPLIES 5
Chris-DP
Channel Surfer

Re: ECP (port 8060) not working within dev app in OS 12.0

This was an intentional change from Roku ad people where abusing this to link to other apps and such. This violates there certification policy’s so it was blocked from within the device.  

0 Kudos
Luchin
Channel Surfer

Re: ECP (port 8060) not working within dev app in OS 12.0

Hi Chris,

Thanks for your reply. Reasonably I can only in partial agree with your explanation and here's why:


@Chris-DP wrote:

... This violates there certification policy’s so it was blocked from within the device.  


As mentioned, that kind of control is understandable for published channels in line with the certification policy which was notified time ago by Roku and the community is well aware. However, dev apps are primarily intended for testing and not to be published right away as such.

About the misemploy statement, please notice that all channel apps must pass static analysis before they can be published, therefore adding restraints for the dev channel app is non-sense.

ECP commands are a useful tool during the development phase, so hopefully Roku will waive soon this pointless limitation and reenable ECP commands within the device for in-app testing purposes (as it was before OS 12.0).

RokuBen
Community Moderator
Community Moderator

Re: ECP (port 8060) not working within dev app in OS 12.0

I've passed on this suggestion to the dev platform team, and this proposal is under consideration.  They did not expect it to affect in-app testing.  In the meantime, you could use a webserver on your local machine as a proxy to connect back to ECP so you're not making a local connection from the device.

Luchin
Channel Surfer

Re: ECP (port 8060) not working within dev app in OS 12.0

@RokuBen  Hi Ben,
Could you give us a feedback, please? Is there an OS update in progress to solve this limitation?

It has been over two months since the suggestion was passed to the dev platform team and so far the same limitation is still affecting in-app testing when trying to use an ECP command from the roku device with OS 12.0

0 Kudos
RokuBen
Community Moderator
Community Moderator

Re: ECP (port 8060) not working within dev app in OS 12.0

It looks like this change won't be reverted. The security team didn't want to leave this mechanism open, even for sideloaded applications.

0 Kudos