Local RSS Feeds
Must RSS feeds (xml files) be available publicly to be displayed on a Rise Vision display or may they be content locally available to the display (like images)?
-
-
-
Thank you for your prompt response.
Do you have any suggestions about how I could securely display locally available list-type information (i.e. project due dates, employee anniversaries, etc.)?
I was hoping that a locally generated RSS feed would be my answer. -
-
Nevermind. Question answered... I can attempt to use a local webpage with some fancy javascript... that should work.
-
-
Ok. Here is the (beautiful) solution:
Prerequisite: A webserver capable of hosting files and running PHP scripts (this tutorial will use IIS).
1) Set up your webserver to host your rss feed in a location accessible by browsers on your intranet via http. (This should mean that if you type in
http://webserveraddress/rsshostinglocation/myrss.rss
to a browser on your intranet that browser will display the rss content.)
2) Configure your webserver to run PHP scripts. Step by step tutorials to do this for IIS are available at http://blogs.iis.net/bills/archive/20...
3) Obtain a the FeedForAll rss2html.php script located at http://www.feedforall.com/more-php.htm and set up your webserver to host it in a location accessible by browsers on your intranet via http.
3) Use the rss2html documentation to create a template html file. This file will dictate the formatting of your RSS feed entries. The body of mine looks like this:
~~~BeginItemsRecord~~~
<div class=title>~~~ItemTitle~~~</div>
<div class=datetime>Posted: ~~~ItemPubLongDate~~~</div>
<div class=description>~~~ItemDescription~~~</div>
<hr>
<br>
~~~EndItemsRecord~~~
and set up your webserver to host it in a location accessible by browsers on your intranet via http.
4) Now if all was done correctly you should be able to browse to something like:
http://webserveraddress/scripthostinglocation/rss2html.php?XMLFILE=http://webserveraddress/rsshostinglocation/myrss.rss&TEMPLATE=http://webserveraddress/htmlhostinglocation/mytemplate.htm
Replacing the generic names in the above example should give you a page displaying the contents of your RSS file. Add css styling and html goodness to your heart's content. Also try adding &MAXITEMS=20 or &NOFUTUREITEMS=1 to display only the first 20 items or not show items whose post dates haven't happened yet.
!!) Now the fun part! Let's make this baby scroll.
5) Download the HTML file with embedded javascript from http://allwebco-templates.com/support... and place the HTML that you generated in step 3 between "<!-- SCROLLER CONTENT STARTS HERE -->" and "<!-- SCROLLER CONTENT ENDS HERE -->"
6) Rename the HTML file modified in step 5 to have the same name as the template from step 3 and overwrite the template from step 3. Using the URL from step 4 you should now see your RSS feed scroll!
7) Finishing touches: I personally didn't see the need for the scroller to pause on mouseover so I removed all parameters from the body tag of the HTML document except for OnLoad. Tune the parameters (especially height) to fit your RiseVision display placeholder and apply any styling that you would like to use.
8) Put it in your placeholder. Now you should be able to use the URL from step 4 in a URL gadget in your placeholder. My final html file is below:
Enjoy!
<html>
<head>
<title>~~~FeedTitle~~~</title>
<style type="text/css">
body {
}
h1 {
color: white;
font-size: 38pt;
font-weight: bold;
text-shadow: 0.1em 0.1em #333;
}
#constrain {
position: absolute;
left: 0;
top: 0;
/*width: 292px;
height: 604px;
background-color: black;*/
}
#NewsDiv {
position: absolute;
left: 0;
top: 0;
width: 292px;
}
.title {
color: white;
font-size: 20pt;
font-weight: bold;
text-shadow: 0.1em 0.1em #333;
}
.datetime {
color: white;
text-shadow: 0.1em 0.1em #333;
}
.description {
color: white;
font-size: 16pt;
font-weight: bold;
/*text-indent: 25px;*/
text-shadow: 0.1em 0.1em #333;
}
</style>
</head>
<body OnLoad="NewsScrollStart();">
<div id="constrain">
<div id="NewsDiv">
<!-- SCROLLER CONTENT STARTS HERE -->
~~~BeginItemsRecord~~~
<div class=title>~~~ItemTitle~~~</div>
<div class=datetime>Posted: ~~~ItemPubLongDate~~~</div>
<div class=description>~~~ItemDescription~~~</div>
<hr>
<br>
~~~EndItemsRecord~~~
<!-- SCROLLER CONTENT ENDS HERE -->
</div>
</div>
<!-- YOU DO NOT NEED TO EDIT BELOW THIS LINE -->
<script language="JavaScript" type="text/javascript">
<!-- HIDE CODE
var scrollspeed = "1" // SET SCROLLER SPEED 1 = SLOWEST
var speedjump = "30" // ADJUST SCROLL JUMPING = RANGE 20 TO 40
var startdelay = "2" // START SCROLLING DELAY IN SECONDS
var nextdelay = "0" // SECOND SCROLL DELAY IN SECONDS 0 = QUICKEST
var topspace = "2px" // TOP SPACING FIRST TIME SCROLLING
var frameheight = "657px" // IF YOU RESIZE THE WINDOW EDIT THIS HEIGHT TO MATCH
current = (scrollspeed)
function HeightData(){
AreaHeight=dataobj.offsetHeight
if (AreaHeight==0){
setTimeout("HeightData()",( startdelay * 1000 ))
}
else {
ScrollNewsDiv()
}}
function NewsScrollStart(){
dataobj=document.all? document.all.NewsDiv : document.getElementById("NewsDiv")
dataobj.style.top=topspace
setTimeout("HeightData()",( startdelay * 1000 ))
}
function ScrollNewsDiv(){
dataobj.style.top=parseInt(dataobj.style.top)-(scrollspeed)
if (parseInt(dataobj.style.top)<AreaHeight*(-1)) {
dataobj.style.top=frameheight
setTimeout("ScrollNewsDiv()",( nextdelay * 1000 ))
}
else {
setTimeout("ScrollNewsDiv()",speedjump)
}}
// END HIDE CODE -->
</script>
</body>
</html> -
-
-
-
-
-
-
-
-
-
I decided just to use two ASME feeds (downloaded so as to be local) (right and left panes) to replace my company private data. the "calendar" in the middle is actually also a local RSS feed with projects and employee names redacted.
The BEAUTIFUL background photo is from flikr http://www.flickr.com/photos/efiguere... and since I have not yet had a chance to contact it's owner I hope that he won't mind me displaying it early. I used GIMP to overlay some classiness so that my placeholders didn't look naked. You will notice that this layout was heavily influenced inspired by Rise Vision's "Picturesque" template.
I will keep the video (just shot with my phone for simplicity) up for a few days at https://docs.google.com/open?id=0B3SS...
Notice what happens as the left feed ends. That timing is a function of the height parameter in the javascript.
Let me know what you think.-
Looks good thanks!
-
-
-
-
-
-
-
-
-
-
Loading Profile...



Twitter,
Facebook, or email.

EMPLOYEE

EMPLOYEE
CHAMP
