“TheEndless” wrote:
“lucasgonze” wrote:
I wonder if there’s a way to have your Roku tell the extension what its IP is? Is there any Brightscript API for that?
The roDeviceInfo component has a GetIPAddrs() method that returns an associative array of IP addresses (wired and/or wireless), but I don’t think that’ll do what you’re talking about. The only way I know of for an external application to get that information be via SSDP broadcast. After all, there’s no way for the extension to talk to the Roku unless it already knows the IP address.I’ve been spending some time thinking about this. SSDP discovery is great if your platform can take advantage of it. But apps like Remoku (and other ‘web’-based services, and apps on platforms that ssdp isn’t implementable in, like WebOS) need another way to determine the Roku addresses on the local network. Here’s one possible way:
-
The Roku device can obviously already determine its own IP, as explained above.
-
The Roku website already provides owners with a list of units registered to their account, protected by a username/password login.
-
What if:
A)The Roku device periodically ‘called home’ its local IP to the the owner website.
B)The website offered an api that would give that information back to a requesting app/service/device, secured using Oauth or another suitable authentication scheme?
Then remoku could poll the Roku web api to get a list of units and their local addresses. This wouldn’t have to be limited specifically to remote apps, either. For instance, the MOG website could let users register their Roku accounts with MOG, then enable playback of the queue directly to the Roku. Obviously, this would require changes to the Roku firmware and web services, and ongoing support for any/all the traffic generated to owner.roku.com from the use of this feature, so I can understand why it might not be a path they’d want to pursue.
Another possibility would be to have a program run on a pc on the local network, that can use SSDP to do the discovery, then publish that info to a third-party website, like apps4tv. This wouldn’t require any involvement from Roku, but would require the user to locally install software, and for the website to maintain a secure database of registered users, and associated units and IP addresses (along with secured communication channels in each direction). I’m not keen on making Remoku server-dependent like that, nor to require users to install software and set up yet more accounts, nor the security implications such a solution would present (not to mention having to implement that software on Windows, Mac and probably Linux too). I’d much prefer calling the roku mothership and (with authorization) being provided the info directly.
