Drupal-based digital signage

We encourage users to post events happening in the community to the community events group on https://www.drupal.org.
You are viewing a wiki page. You are welcome to join the group and then edit it. Be bold!

There seems to be some interest and use case for Drupal-based digital signage. bneil, AndrewGearhart, and btopro had a good conversation in #drupal-edu about some ideas and thought we needed to start collecting our ideas.

Let's use this wiki as a place to start organizing ourselves around what our requirements are and what general functionality we can share between our institutions.

Hopefully we'll end up with a nice list of requirements that we can work together to build a solid base for Drupal digital signage.

Structure/Features

  • We need a way to group signs together so an editor can manage multiple signs (Multisite + Organic Groups?)
  • Intuitive sign building interface. Currently, I'm thinking we go the direction of a sign being a panelized node and use the Panels IPE to manage all layout switching and pane placement.
  • Standardized way to query and display data from other sources. News, events, etc. There will also be the use case to import nodes via feeds and flag them to be shown for those editors who want fine-grained control over their signs.
  • A generic sign "override" module, that would ping an RSS feed and if there's data in the feed, overlay over the sign and display the data in the feed. (PSU and UIowa both have this requirement).
  • Refresh all data periodically.

Standard panes

  • Weather (Separate module, Forecast.io?)
    As a requirement, it would be necessary to be able to specify the icons used for the forecast
  • Date/Time
  • Slideshow reference pane
  • Sign Title
  • Stock Ticker (business schools)

Content types

  • Group
  • Sign
  • Slideshow
  • Slide
  • Article
  • Event

Theme

  • A very, very minimal base theme that makes no assumptions.
  • A standard neutral signage theme (based on the base theme) that is useful out of the box.

Nice to have

  • Layout switching based on time slot/date
  • Check to see if browser has connection before implementing any ajax/refresh of data.
  • method for doing wayfinding applications
  • QR code integration
    the idea being that someone can scan the qr code to find out more about a headline. as an alternative, short code integration (displays short code for URLs provided in feeds / content

UIowa Specific Requirements

  • Panes for bus prediction information
  • UIowa Branding elements
  • Master Calendar events - SOAP API :(
  • News data source: http://now.uiowa.edu

PSU Specific Requirements

  • Emergency channel sign overlay
  • PSU Branding elements

Comments

Get involved

bneil's picture

If you're interested in getting involved in any way, please leave a comment about how you can help. Or contact myself or AndrewGearhart directly.

Interested

ydahi's picture

Interested and will keep tabs on this topic - however my hands are tied with a few other projects currently on the go, hopefully find some time in October to get more involved.

My first impressions:

  • Panopoly for the layout & site building
  • Feeds for pulling in twitter or other rss feeds
  • OG + OG theme to control themes per specific signage system OR domain access

Missing in action:
- Video playlists that can be scheduled

PS. I'm at Ryerson University in Toronto and can help beta test and will eventually be available to join in on theming, site building, etc.

Web & Multimedia Developer

Quick thoughts - I've used

btopro's picture

Quick thoughts -
I've used https://drupal.org/project/timefield in the past for capturing times without dates. I think something like timefield + a module similar to but not https://drupal.org/project/context_date so that you can set a context condition of "if the content / og / logical grouping item / sign" is between time x and y then execute condition either to change the delta in use (if omega based) or the theme entirely (more desirable imo) via this (or something like it) https://drupal.org/project/context_reaction_theme

Something I need to investigate more for another project is https://drupal.org/project/context_entity_field which would allow you to assess changes based on the values set on an entity

Been doing stuff with zurb-foundation recently which works really well and is minimalist though bootstrap, adaptive, zen, or omega would all be suitable for a base. Something color-izable would allow for easy implementation at other universities / locations at least as a proof of concept.

RestWS for web-services integration as that's just sort of a turn it on and at least the possibility is there.

I hate panels but for this kind of project it does seem fitting; The Panopoly stack might be worth building off of for this reason.

Information architecture of OG or OG + Multisite would be required for administration / building the foundation. I'm currently advocating focusing on a smaller institutional piece like college or department centric. Build the tool as if it's for 1 unit to manage their world. Then, if you need another unit to also have this tool, that's where the multi-siting of a distro comes into play. I'd be happy to show the way forward on this type of architecture as we are currently implementing it for courses and I have large aspirations for how this could be used to implement things system wide here. That's my selfish motivation in this project, we don't do digital signage but I know many that do and this structural organism if successful in other contexts (multi-site + OG) could prove how to go about university scale deployments without getting bottlenecked by scope.

Why not use workflow instead of OG?

mercergirl's picture

We don't use OG. Using Workbench Moderation to govern workflow. Couldn't we do the same by creating different pages/content types for different audiences and control their usage by normal workbench workflow?

I've been playing around with

bneil's picture

I've been playing around with an OG-based solution and it certainly does have it's pros and cons. I'm not sure yet if something like a taxonomy-based access control (like Workbench access) might be a better alternative or not. I'm hoping to wrap up the distro I've been testing hopefully by the end of the week for some feedback.

I'm pretty sure we'll want to go the panelizer/panels in place editor route, so we'll want to find an access control solution that works well with it.

But, as far as moderation goes, I haven't had a need for it on any of my sites, so I do not have much of an opinion.

Interested as well.

Jeana_with_a_j's picture

I'm super interested in this project. I've set up a signage system using themekey + views on one node. But, I only have to worry about it in one context for our business school.

Right now the event content type has a field that asks if the user wants to show the event on the signage and if yes, where on the signage should the event appear (ticker, announcement, image slide). And then there's an additional date field that allows the user to say when should the event show up on the signage. This allows our calendar to be populated with events and with the option to show events on the signage. The problem is when there is not a 'date based' announcement we want to show on the screen. I didn't want to be creating 14 different content types. But now I'm thinking an 'Announcement' content type might not be so bad. In the future, I imagine also allowing feature stories from our news section to have the option to 'show on the signage'.

Currently only the screens and our college calendar are in drupal. I'm working on building a few more sites and eventually we'll migrate everything over.

"Layout switching based on

Dustin@PI's picture

"Layout switching based on time slot/date" - this might be optional for your project but it wouldn't be for many places. I think a good digital-signage distribution would need some way to map the Layout to a Sign with a date time (i.e. from 8 am to 10 am show the conference welcome layout on entrance sign, at 10:01 switch to the conference schedule)

Content types
-Group
-Sign
-Slideshow
-Slide
-Article
-Event
-++Playlist (schedule or whatever you want to call it)
-++Sign Layout (the panalized node)

You could also display/manage the Playlist/schedule with https://drupal.org/project/views_gantt

Digital Signage

Everett Robinson's picture

We're hoping to upgrade from Drupal 6 to 7 in the next 3-6 months. I'm no programmer, but like the list of features you are wanting to include.
We're currently pulling content (not fancy and has plenty of limitations in the content type) from our website, with local weather and a CNN feed to display on monitors around our 4 campuses [basically VDI boxes running a browser with a campus-specific URL (i.e: http://www.npc.edu/npctv/show-low-campus)]. Our web developer, imageXmedia, custom built this for us five years ago.
When I create an "Event" or "News" content type I can choose whether to list only on the main website, or web & TV with an option to select which campuses to include in the display.
If we create an "Alert" notice, it auto populates to both the web home page and all monitors.
Will monitor progress on this possible module to include when we upgrade.

AMX installation

mercergirl's picture

We have many AMX displays around our five campuses which are officially used for emergency alerts, but at all other times are used for informational purposes. It would be great to control the content from Drupal. I have been unsuccessful at creating useful RSS news feeds for them from Drupal views (The formatting for the feeds is totally not useful).

We currently use a custom SharePoint app to set the emergency alert message and toggle the displays into emergency mode.

We use AMX software to add content to the displays.

I could definitely test and may be available for some light programming. I have never done any Drupal module development, but am a mediocre PHP scripter.

@mercergirl, we had a similar

Dustin@PI's picture

@mercergirl, we had a similar issue with using the default Drupal RSS with our Digital Signs (we use FWI), so we switched to using the views_datasource module to generate the feeds.

I anticipate providing

bneil's picture

I anticipate providing solutions using either Feeds to directly import content into the site for manipulation/flagging/propoting, etc. as well as using something like Views XML Backend to just pull into various feeds and display them as is, for a more hands-off approach.

Digital Signs

dkroneb's picture

At Drupal Corn 2013, the University of Iowa did a great presentation on what they are doing. They have put a profile up at https://github.com/UICLAS/signs an organic groups version is for different departments/ buildings to manage their own.

Hi Dennis, The work UI CLAS

bneil's picture

Hi Dennis,

The work UI CLAS has been doing is what actually started motivating me to have this conversation. (We're from the same university.)

I've been working closely with them and have started splitting out components of their signage into their own modules, on github for now, that we can utilize as part of this signage project.

Support to low-cost, text-based digital signs?

leoburd's picture

Hello all,

I'm also very interested in integrating digital signs to Drupal, especially the low-cost, text-based ones that we usually see on store windows and train stations. Has anyone done anything along those lines?

We've ran a pilot system a couple of years ago that was quite successful: youtube.com/watch?v=ToBvwEjNET8 However, we're still looking for good alternatives.

Best,

Leo

Sample Signage

Jeana_with_a_j's picture

Here is a sample of our drupal signage that shows up on our screens in our building: http://gattondrupal.uky.edu/calendar/signage. We use Chrome in Kiosk mode.

Nice, very nice

mercergirl's picture

I want what you have! What modules are you using? Any custom code?

media library

xxiao's picture

how to manage all those media files(video,pictures,etc), IMCE seems like the only choice? as DS will have to deal with quite a few those media files.

Recently I have alse been

RikD's picture

Recently I have alse been looking to a good signage player. Couple week ago I came across this (http://www.digitalsignage.com/_html/open_source_digital_signage.html).

Maybe this can be useful.

the server side is not really

xxiao's picture

the server side is not really open source though the client side is, I would not call this a full open source platform as it's claimed, eventually you have to pay to use its closed backend platform.

Here's the direction that we

ydahi's picture

Here's the direction that we are testing at Ryerson:

I copied nearly verbatim the style and concept for the Drupal site from @dkroneb.

Screenly is something that everyone should be looking at as a possible solution. They provide an open source and paid/cloud version of their service.

Screenly is pre-compiled for the Raspberry Pi. It uses chromium (or some version there of) to display websites. You can list one website, queue several websites, and/or queue both websites and videos. We have also been able to get Screenly to display a live rtmp stream!

At any rate, Screenly to manage the backend/scheduling for a screen and Drupal as a front-end for managing the content is a winning combination thus far. There are limitations to what the Pi can do in terms of Javascript (or any heavy client side scripts like video players) That said, the drupal site (hostc) and the UICLAS digital signage site both run fairly smoothly on this system.

Web & Multimedia Developer

I thought screenlyapp has its

xxiao's picture

I thought screenlyapp has its own player(rpi+debian) and backend(the server side for content editing/publish/management which is closed source), what's the drupal frontend here for? to replace screenlyapp's backend?

if you want to go browser-based signage, you can always run a browser on those cheap android boxes too, other than RPI+debian here.

there are other open source signages, but their backend is always closed source. the only open source one, xibo, does not support browser-based signage.

"I thought screenlyapp has

ydahi's picture

"I thought screenlyapp has its own player(rpi+debian)"

Correct, it uses omxplayer which runs 1080p as smooth as butter on the RPI.

"backend(the server side for content editing/publish/management which is closed source)"

I haven't come across any sort of content publishing app on screenly. The Screnly backend is for loading/queuing content (websites, videos, and images are the available content types). You can upload images and videos directly to the RPI using screenly.

"what's the drupal frontend here for? to replace screenlyapp's backend?"

Nope, its for content publishing. To create news items, slider items, etc. The URL to the specific "screen" (or path in the drupal site) gets placed in the screenly queue and screenly takes care of cycling through the queued content. For example, if you have three videos and a website in your queue, screenly cycles through each of these items (i.e. plays video 1, displays the drupal site for 10 minutes, plays videos 2, displays the drupal site for 10 minutes, etc.)

"if you want to go browser-based signage, you can always run a browser on those cheap android boxes too, other than RPI+debian here."

Definitely, I started with the android stick. In fact, there are lots of options to explore. For something more powerful than a RPI we are looking at the beagle board, udoo, even mac minis.

"there are other open source signages"

There are lots of offerings, screenly so far has the most to offer IMO.

Web & Multimedia Developer