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: 
jamilou
Visitor

DeviceUniqueId condition

Hello,

I'm using the videoplayer template and I want to add registration to my channel or some sort of not complicated (to me) restriction.
We'll be a few persons using my channel (4 friends for now will be using my french channel) and I thought of asking them their DeviceUniqueId (if it is possible) to restrict the access to only their rokus and mine.

Do someone have an idea to how to do that ? I thought of something like : If DeviceUniqueId in (rokuFriend1Id,rokuFriend2id, etc..) then give access to channel, else No access

Where can I add this kind of code and what will be the proper way to write it ?
Thank you for your help

Jean-Marie
0 Kudos
4 REPLIES 4
EnTerr
Roku Guru

Re: DeviceUniqueId condition

Since you will be making private channel, the mere "access/vanity code" to add it can be the secret shared only with the limited few friends. But, you can also do what you asked in three lines:

allowed_list = "123456789abc 123456789ab1 123456789ab2 ..."
serNo = createObject("roDeviceInfo"). GetDeviceUniqueId()
if inStr(1, allowed_list, serNo) > 0 then ' yes, device is on the approved list

Now, that's fine for a "toy channel" like this but let me disclaim that hacks like this should not be used for public channels: one, using S/N is discouraged (people sell/gift players, get new ones etc); two, hard-coding it like that is a pain to update the list - have to push new version.
0 Kudos
jamilou
Visitor

Re: DeviceUniqueId condition

"EnTerr" wrote:
Since you will be making private channel, the mere "access/vanity code" to add it can be the secret shared only with the limited few friends. But, you can also do what you asked in three lines:

allowed_list = "123456789abc 123456789ab1 123456789ab2 ..."
serNo = createObject("roDeviceInfo"). GetDeviceUniqueId()
if inStr(1, allowed_list, serNo) > 0 then ' yes, device is on the approved list

Now, that's fine for a "toy channel" like this but let me disclaim that hacks like this should not be used for public channels: one, using S/N is discouraged (people sell/gift players, get new ones etc); two, hard-coding it like that is a pain to update the list - have to push new version.


Hello,
Thank you for your reply.
Where do I add this code? (I'm using the VideoPlayer template). Do I have to create a new brs file ? or use it with categoryFeed.brs ?
If I can use your code with categoryFeed.brs, is this viable :

allowed_list = "123456789abc 123456789ab1 123456789ab2 ..."
serNo = createObject("roDeviceInfo"). GetDeviceUniqueId()
if inStr(1, allowed_list, serNo) > 0 then

'******************************************************
' Set up the category feed connection object
' This feed provides details about top level categories
'******************************************************
Function InitCategoryFeedConnection() As Object

conn = CreateObject("roAssociativeArray")

conn.UrlPrefix = "http://pastebin.com/raw"
conn.UrlCategoryFeed = conn.UrlPrefix + "/Wed454XXX"

conn.Timer = CreateObject("roTimespan")

conn.LoadCategoryFeed = load_category_feed
conn.GetCategoryNames = get_category_names

print "created feed connection for " + conn.UrlCategoryFeed
return conn

End Function

else

Function InitCategoryFeedConnection() As Object

conn = CreateObject("roAssociativeArray")

conn.UrlPrefix = "http://pastebin.com/raw"
conn.UrlCategoryFeed = conn.UrlPrefix + "/blankpage"

conn.Timer = CreateObject("roTimespan")

conn.LoadCategoryFeed = load_category_feed
conn.GetCategoryNames = get_category_names

print "created feed connection for " + conn.UrlCategoryFeed
return conn

End Function


Thank you very much

JM
0 Kudos
EnTerr
Roku Guru

Re: DeviceUniqueId condition

Oh boy.
When i answered, i assumed you already know some on how to develop on Roku. (My apologies, can't teach you in a paragraph how to do that)

I don't know at all RokuCo's examples - but putting above inside main() seems about right - because that's where everything is started from. Let's say in the beginning - and being absolutely minimalistic, the "if" should change to say "if inStr(1, allowed_list, serNo) < 1 then STOP"
0 Kudos
jamilou
Visitor

Re: DeviceUniqueId condition

"EnTerr" wrote:
Oh boy.
When i answered, i assumed you already know some on how to develop on Roku. (My apologies, can't teach you in a paragraph how to do that)

I don't know at all RokuCo's examples - but putting above inside main() seems about right - because that's where everything is started from. Let's say in the beginning - and being absolutely minimalistic, the "if" should change to say "if inStr(1, allowed_list, serNo) < 1 then STOP"


Hey thank you for your help, it works !!!!
I added the condition inside the first function and it opens only if I specify the good Device Id"
Thank you again
0 Kudos