Here's a simple channel to get you started.
Create an Xml file containing the list of image urls on your server, e.g:
kittens.xml:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<feed>
<Period>10</Period>
<TextOverlayIsVisible>True</TextOverlayIsVisible>
<TextOverlayHoldTime>2000</TextOverlayHoldTime>
<item>
<TextOverlayBody>Cute Kitten #1</TextOverlayBody>
<Url>http://r.ddmcdn.com/s_f/o_1/APL/uploads/2014/05/128942088217813223400601197_MilkMoustache.jpg</Url>
</item>
<item>
<TextOverlayBody>Cute Kitten #2</TextOverlayBody>
<Url>http://www.welikeviral.com/files/2014/12/8325_8_site.jpeg</Url>
</item>
<item>
<TextOverlayBody>Cute Kitten #3</TextOverlayBody>
<Url>http://rosegalaxy.com/wp-content/uploads/2015/08/Beautiful-kittens-Wallpaper.jpg</Url>
</item>
<item>
<TextOverlayBody>Cute Kitten #4</TextOverlayBody>
<Url>https://i.ytimg.com/vi/3dzUgmpXPX0/hqdefault.jpg</Url>
</item>
<item>
<TextOverlayBody>Cute Kitten #5</TextOverlayBody>
<Url>http://vignette3.wikia.nocookie.net/clubpenguinpookie/images/d/d0/Extremely-cute-kitten_large.jpg</Url>
</item>
<item>
<TextOverlayBody>Cute Kitten #6</TextOverlayBody>
<Url>http://static.tumblr.com/vlykcdf/lN2l9mwte/cute-kitten-303.jpg</Url>
</item>
</feed>
Use this channel code to read the Xml file from your server (or from your local channel pkg: directory), and display the images in a slideshow:
main.brs:
Sub Main ()
'content = getContent ("pkg:/xml/kittens.xml")'
content = getContent ("http://belltown.tk/kittens.xml")
displayUI (content)
End Sub
Function getContent (path As String) As Object
content = {}
content.period = 0
content.textOverlayIsVisible = False
content.textOverlayHoldTime = 0
content.contentList = []
contentData = getPath (path)
xml = CreateObject ("roXmlElement")
If xml.Parse (contentData)
content.period = getXml (xml, "period").ToInt ()
content.textOverlayIsVisible = LCase (getXml (xml, "TextOverlayIsVisible")) = "true"
content.textOverlayHoldTime = getXml (xml, "TextOverlayHoldTime").ToInt ()
For Each item In xml.item
content.contentList.Push ({
Url: getXml (item, "Url")
TextOverlayBody: getXml (item, "TextOverlayBody")
TextOverlayUL: ""
TextOverlayUR: ""
})
End For
Else
Print "Xml failed to parse"
End If
Return content
End Function
Function getXml (xml As Object, elementName As String) As String
returnValue = ""
elementList = xml.GetNamedElementsCI (elementName)
If elementList.Count () > 0
returnValue = elementList [0].GetText ()
End If
Return returnValue
End Function
Function getPath (path As String) As String
data = ""
http = "http"
If LCase (Left (path, Len (http))) = http
ut = CreateObject ("roUrlTransfer")
ut.SetUrl (path)
data = ut.GetToString ()
Else
data = ReadAsciiFile (path)
End If
Return data
End Function
Function displayUI (content As Object) As Void
port = CreateObject ("roMessagePort")
ui = CreateObject ("roSlideShow")
ui.SetMessagePort (port)
If content.textOverlayIsVisible
ui.SetTextOverlayHoldTime (content.textOverlayHoldTime)
End If
ui.SetPeriod (content.period)
ui.SetContentList (content.contentList)
ui.Show ()
While True
msg = Wait (0, port)
If Type (msg) = "roSlideShowEvent"
If msg.IsScreenClosed ()
Exit While
Else If msg.IsRemoteKeyPressed ()
key = msg.GetIndex ()
If key = 0 ' Back Button '
ui.Close ()
Else If key = 6 ' OK Button '
ui.Close ()
EndIf
EndIf
EndIf
End While
End Function
It shouldn't be too hard to write a script on your server to read a folder and generate the Xml file from its contents.