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: 
newchannel
Roku Guru

setadurl question

Where within the code on the PosterScreen is the correct place to type in the setadurl? Is it after this:

screen.SetListNames(getCategoryList(category))
screen.SetContentList(getShowsForCategoryItem(category, m.curCategory))

Thanks in advance.
http://www.victoryNOWfilmsandtv.com
0 Kudos
57 REPLIES 57
Anonymous
Visitor

Re: setadurl question

This would be best (right before those lines calling SetListNames and SetContentList):

screen.SetAdURL(sdAdURL, hdAdURL)
screen.SetListNames(getCategoryList(category))
screen.SetContentList(getShowsForCategoryItem(category, m.curCategory))

Cheers,
Jon
0 Kudos
newchannel
Roku Guru

Re: setadurl question

Thank you Jon!!
http://www.victoryNOWfilmsandtv.com
0 Kudos
newchannel
Roku Guru

Re: setadurl question

I attempted to edit the posterscreen.brs to add the test url of a sample graphic for the display advertisement. My first attempt didn't work.

Before making too many changes....the image for the test display ad, should it be in the image folder on the server side or in the image folder on the device side where I have the channel images that the manifest refers too?

Thank you.
http://www.victoryNOWfilmsandtv.com
0 Kudos
TheEndless
Channel Surfer

Re: setadurl question

If I'm not mistaken, I believe the ad url has to be an http URL. A local image won't work.

EDIT: Yep, see RokuKevin's response here: viewtopic.php?f=34&t=33206&p=230179#p230179
My Channels: http://roku.permanence.com - Twitter: @TheEndlessDev
Instant Watch Browser (NetflixIWB), Aquarium Screensaver (AQUARIUM), Clever Clocks Screensaver (CLEVERCLOCKS), iTunes Podcasts (ITPC), My Channels (MYCHANNELS)
0 Kudos
newchannel
Roku Guru

Re: setadurl question

I must have done something incorrect in the coding or placement.

Thank you.
http://www.victoryNOWfilmsandtv.com
0 Kudos
destruk
Streaming Star

Re: setadurl question

It also only works in two screen types.
0 Kudos
newchannel
Roku Guru

Re: setadurl question

I'n sure it's me because I am new at this. I am using the arced-landscape.

I also need to find a way to have the ads dynamically changed. I know about some scripts but how to apply them is another learning curve.

Thank you.
http://www.victoryNOWfilmsandtv.com
0 Kudos
newchannel
Roku Guru

Re: setadurl question

If you know of a tutorial on how to apply the scripts to get the display ads working, please let me know. Important I get this part of the channel working.

Thank you.
http://www.victoryNOWfilmsandtv.com
0 Kudos
newchannel
Roku Guru

Re: setadurl question

Within the following pasted code below, can someone tell me where to place this information? I have tried several spots but I cannot get the adURL to work. Also, can someone tell me how to use a PhP ad rotating script? Is it code I put on my server which also includes the url to the image? My goal is to first get a diplay ad to show on the posterscreen and next then to figure out how to get the ads to change randomly without me having to change the ads manually each week.



screen.SetAdURL("http://myserver.com/mySDadvertisement.jpg", "http://myserver.com/myHDadvertisement.jpg")



'******************************************************
'** Video Player Example Application -- Poster Screen
'** November 2009
'** Copyright (c) 2009 Roku Inc. All Rights Reserved.
'******************************************************

'******************************************************
'** Perform any startup/initialization stuff prior to
'** initially showing the screen.
'******************************************************
Function preShowPosterScreen(breadA=invalid, breadB=invalid) As Object

if validateParam(breadA, "roString", "preShowPosterScreen", true) = false return -1
if validateParam(breadB, "roString", "preShowPosterScreen", true) = false return -1

port=CreateObject("roMessagePort")
screen = CreateObject("roPosterScreen")
screen.SetMessagePort(port)
if breadA<>invalid and breadB<>invalid then
screen.SetBreadcrumbText(breadA, breadB)
end if

screen.SetListStyle("arced-landscape")
return screen

End Function


'******************************************************
'** Display the home screen and wait for events from
'** the screen. The screen will show retreiving while
'** we fetch and parse the feeds for the game posters
'******************************************************
Function showPosterScreen(screen As Object, category As Object) As Integer

if validateParam(screen, "roPosterScreen", "showPosterScreen") = false return -1
if validateParam(category, "roAssociativeArray", "showPosterScreen") = false return -1

m.curCategory = 0
m.curShow = 0
temp=getcategorylist(category)


if temp.count() > 1 then
screen.SetListNames(temp)
?temp.count();" categories"
else
?"only ";temp.count();" category"
end if
screen.SetContentList(getShowsForCategoryItem(category, m.curCategory))
screen.Show()

while true
msg = wait(0, screen.GetMessagePort())
if type(msg) = "roPosterScreenEvent" then
print "showPosterScreen | msg = "; msg.GetMessage() " | index = "; msg.GetIndex()
if msg.isListFocused() then
m.curCategory = msg.GetIndex()
m.curShow = 0
screen.setcontentlist([])
screen.SetFocusedListItem(m.curShow)
screen.showmessage("Retrieving")
screen.SetContentList(getShowsForCategoryItem(category, m.curCategory))
screen.clearmessage()
print "list focused | current category = "; m.curCategory
else if msg.isListItemSelected() then
m.curShow = msg.GetIndex()
print "list item selected | current show = "; m.curShow
m.curShow = displayShowDetailScreen(category, m.curShow)
screen.SetFocusedListItem(m.curShow)
print "list item updated | new show = "; m.curShow
else if msg.isScreenClosed() then
return -1
end if
end If
end while


End Function

'**********************************************************
'** When a poster on the home screen is selected, we call
'** this function passing an associative array with the
'** data for the selected show. This data should be
'** sufficient for the show detail (springboard) to display
'**********************************************************
Function displayShowDetailScreen(category as Object, showIndex as Integer) As Integer

if validateParam(category, "roAssociativeArray", "displayShowDetailScreen") = false return -1

shows = getShowsForCategoryItem(category, m.curCategory)
screen = preShowDetailScreen(category.Title, category.kids[m.curCategory].Title)
showIndex = showDetailScreen(screen, shows, showIndex)

return showIndex
End Function


'**************************************************************
'** Given an roAssociativeArray representing a category node
'** from the category feed tree, return an roArray containing
'** the names of all of the sub categories in the list.
'***************************************************************
Function getCategoryList(topCategory As Object) As Object

if validateParam(topCategory, "roAssociativeArray", "getCategoryList") = false return -1

if type(topCategory) <> "roAssociativeArray" then
print "incorrect type passed to getCategoryList"
return -1
endif

categoryList = CreateObject("roArray", 100, true)
for each subCategory in topCategory.Kids
categoryList.Push(subcategory.Title)
next
return categoryList

End Function

'********************************************************************
'** Return the list of shows corresponding the currently selected
'** category in the filter banner. As the user highlights a
'** category on the top of the poster screen, the list of posters
'** displayed should be refreshed to corrrespond to the highlighted
'** item. This function returns the list of shows for that category
'********************************************************************
Function getShowsForCategoryItem(category As Object, item As Integer) As Object

if validateParam(category, "roAssociativeArray", "getCategoryList") = false return invalid

conn = InitShowFeedConnection(category.kids[item])
showList = conn.LoadShowFeed(conn)
return showList

End Function
http://www.victoryNOWfilmsandtv.com
0 Kudos