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: 
georgejecook
Streaming Star

Do not understand deep linking requirement

Deep linking is required for certification. Search integraiton is not.

We don't want to do search integration at this point.

But deep linking uses content ids from the search field.

What does this mean? Can someone please explain? How does one implement deep linking if there is no search integration?

What would our content ids contain? where would they come from?
George Cook
https://georgejecook.github.io/
https://linkedin.com/in/georgejecook/
Roku developers slack group (https://join.slack.com/t/rokudevelopers/shared_invite/zt-4vw7rg6v-NH46oY7hTktpRIBM_zGvwA) : georgejecook

Contact me on roku developer slack group, or via pm to discuss consultancy/work opportunities/rooibos unit testing framework
0 Kudos
4 REPLIES 4
24i
Streaming Star

Re: Do not understand deep linking requirement

Hi georgejecook,

You are correct: the deep linking is a requirement and therefor needs to be implemented, regardless of search integration.
How you can do this is by the following: 
Your media items probably come from some backend, where each media item has an unique id. This id should passed inside the deeplink along with a mediatype, for example:
http://10.24.24.94:8060/launch/dev?cont ... pe=episode 

Then inside the application you should get this contentID from the args passed to the Main(args as Object) in the main.brs.
We normally pass this to our Scene by adding it the application's global field:
Sub Main (args as Dynamic)
m.global.addField("startupArgs", "assocarray", true)
    m.global.startupArgs = args

...
End Sub


Then inside your Scene you can get the startup arguments form the global node and do something with it, like getting the meta-data for the contentID given and go to the video directly or show an episode picker depending on the mediaType. The expected behaviour can be found here: https://sdkdocs.roku.com/display/sdkdoc/Deep+Linking

For Roku's QA you will have to provide these contentID's along with the mediaTypes and they will use those for testing the deeplinking requirement.
0 Kudos
georgejecook
Streaming Star

Re: Do not understand deep linking requirement

Strange requirement;  thanks for the clarification.
George Cook
https://georgejecook.github.io/
https://linkedin.com/in/georgejecook/
Roku developers slack group (https://join.slack.com/t/rokudevelopers/shared_invite/zt-4vw7rg6v-NH46oY7hTktpRIBM_zGvwA) : georgejecook

Contact me on roku developer slack group, or via pm to discuss consultancy/work opportunities/rooibos unit testing framework
0 Kudos
destruk
Binge Watcher

Re: Do not understand deep linking requirement

Not too strange - with all the coverage of streaming services and hardware under attack to police pirated content, the ability for Roku to go in and view anything on any channel without needing to look for it makes perfect sense to me.  Also if you ever do want to implement global search on the Roku platform, having deep linking working will cover half of what you need already.
0 Kudos
genepensiero
Roku Guru

Re: Do not understand deep linking requirement

I've followed the Roku SDK instructions and done as much research as I can...yet when I use the Deep Link Tester it just opens the channel normally, won't play the items. 

Any ideas how I need to change my RSS files? Here's a current example of how one of my videos is listed in my RSS:


<item>
<title>Prayer Pressure</title>
<link>http://media.calvaryhanford.com/psalms/prayerpressure.mp4</link>
<description>David brings big requests to God and receives a big revelation.</description>
<pubDate>Sun, 05 Mar 2017 10:15:00 PT</pubDate>
<guid isPermaLink="false">without-ceasing-01</guid>
<media:content channels="2" type="video/mp4" isDefault="true" url="http://media.calvaryhanford.com/psalms/prayerpressure.mp4">
<media:description>David brings big requests to God and receives a big revelation.</media:description>
<media:keywords>church, bible study, expository sermon</media:keywords>
<media:thumbnail url="http://media.genepensiero.com/roku/withoutceasing.jpg" />
<media:title>Prayer Pressure</media:title>
</media:content>
</item>
0 Kudos