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: 
adamkaz
Level 7

GetChannelCred

I was wondering if anyone has been able to get GetChannelCred working as intended. It looks like it would be a pretty slick way to authenticate users. Its a bit hard to debug, since I'm guessing that it only works for channels in the store (private or public). Even so, when I've played around with it, I seem to always get an empty json object back.

Here is what I'm trying:
store = CreateObject("roChannelStore")
channelcredjson = store.GetChannelCred().json
pucid = "none"
if channelcredjson <> invalid and channelcredjson <> ""
    channelcredobj = ParseJSON(channelcredjson)
    if channelcredobj<>invalid and channelcredobj.roku_pucid<>invalid
        pucid = channelcredobj.roku_pucid
    end if
end if


When I POST this to my server, pucid == "none"
0 Kudos
3 Replies
renojim
Level 8

Re: GetChannelCred

It works for me with a private channel, but returns an empty JSON object when sideloaded. Although the docs claim it's of type "JSON", it's really just roString. I didn't bother parsing the JSON object; I just dumped the string. It looks ok to me.

-JT
0 Kudos
adamkaz
Level 7

Re: GetChannelCred

JT - thanks for the reply. Mind giving us an example of what that roString looks like? Does it have curly braces, etc? (replace some letters/numbers so you don't give away YOUR channelcred Smiley Happy )
0 Kudos
renojim
Level 8

Re: GetChannelCred

{"error":null,"roku_pucid":"eb0a2d4b-0bad-59fe-aae3-25ccfcbf5fbf","token_type":"urn:rokuSmiley Tongueucid:token_typeSmiley Tongueucid_token"}


This is interesting and I don't know what it means, but when I ran my test channel on my Roku 4 I got back an empty string.  The same channel on my Roku 3 or TV returns something similar to the above.  Make sure you check the value of status.  I've only ever seen two values:  0 when it works and 400 when I get the empty string.  400 is also the value of status I get when sideloaded.

Hope this helps!
-JT
0 Kudos