When you enter Brinn Labs you are greeted by digital signage that shows (among other things) a calendar of upcoming events. There’s a TV with a Raspberry Pi attached running Screenly OSE. This is somewhat similar to the MMPIS I created at Milwaukee Makerspace.
Compared to the MMPIS doing this upcoming events list was quite a bit easier! For Milwaukee Makerspace the data is pulled from a Google Calendar and uses a hacked-up version of PHP iCalendar to do the heavy lifting. It works, almost always, and only occasionally breaks. I’ve got a few emails from people asking how I did it, and I’ve sent them files with a small write-up. For dealing with a Google Calendar, it works fine…
On the Brinn Labs web site we’re using The Events Calendar WordPress plugin, which exposes the upcoming events as an RSS feed. Well that’s easy!
Sitting on the server I’ve got a few files. A Perl script, which fetches and parses the RSS file, and an HTML-Template file, which the Perl script uses to make things look pretty. Oh, there’s also a background image, and the whole thing outputs a simple HTML file that Screenly then displays on the TV. Between the script and template there’s probably less than 75 lines of code. The script is set to run with a cron job and updates a few times an hour.
I’m pleased with the results, and not including the time it took me to run CPAN it was probably less than an hour to actually get it all working and looking nice. If you haven’t checked out the Brinn Labs events yet, take a look! I’ll be teaching classes there, and we’ve got an Open House set for March 1st, 2018.