DashPlay

Easy dashboard screen management

DashPlay is an easy way to present multiple dashboards on standalone wall mounted screens using just a browser.

Amazing Features

Slideshow

Define the list of dashboard URLs and a delay, and DashPlay will automatically cicle between those URLs. Next URL is preloaded in background to ensure a smooth transitions.

Remote Control

Point your screens' browser to your dashplay URL once. Change its settings later from the confort of you laptop, and see those changes applied on all your screens in real-time.

Flash Messages

A flash banner can be shown on top of the screen when something important happen like a rollout or a maintaince.

Group Management

You can easily manage groups of different dashplays sharing same set of base dashboards in addition to their own. Use groups to broadcast flash message to all your dashplays sharing a common root dashplay.

API

Configure your dashplays and send flash info programatically using our REST API.

Free & Open Source

DashPlay is free and open-source. No account is required to use it and you may host it yourself or improve it by forking it on GitHub repository.

Documentation

DashPlay Creation

DashPlay is an easy way to manage screens cycling on a set of dashboards. You can create as many DashPlay URLs as you want, and organize them the way you want. You may want to reuse the same DashPlay URL over several screens so they all display the same dashboards, or you may want to have a different DashPlay URL for each of them.

To create a DashPlay URL, append any unused arbitrary string to the https://dashplay.io/<your-dashplay-name>. DashPlay URLs are created on the fly. The main purpose of a DashPlay is to cycle over a set of dashboard URLs. So the first thing you have to do on a new DashPlay is to setup the list of URLs to cycle on. Click on the cog () button on the lower right of the screen to open the settings panel, and start adding URLs. The page should start loading the first URL and after a moment, transition to the next and so on. You can then set this URL on your TVs right away. Any future change to the settings of this page will be replicated on all TVs displaying it in real-time.


Group Management

DashPlay let you organise your DashPlay URLs hiearchically by using forward slashes (/) in the URLs you are choosing. For instance if you have a set of dashboard for you company ACME, you may organize them as follow: /acme/serviceA/screen1.

DashPlay is able to do usefull thing with such hierarchy. If, for instance, you add a set of URLs on /acme/serviceA, the dashplay at /acme/serviceA/screen1 will automatically inherit those URLs. This let you create slighy different version of the same DashPlay.


Flash Info

In addition to URLs cycling, DashPlay is also able to display some important flash message in a top banner. This can be useful to inform people across the company of events such a rollout or maintainance in progress. The hability to manage DashPlay URLs in heararchy is very powerful when combined with flash messages. Taking our previous example, any flash message set on /acme will be also set on all screens of all services (children in the hiearchy). You can set flash message from the on page settings of programatically by using the API.

API

Fetch DashPlay Information

To gather all info about a dashplay, perform a GET on it's path. Provided that /foo is your dashplay URL:

$ curl -i http://api.dashplay.io/foo

HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8

{
    "delay": 10000,
    "flash": {"message": "Rollout in progress"},
    "urls": [
        "http://mydashboard.com/dash1",
        "http://mydashboard.com/dash2"
    ]
}

Set a Flash Info

To display or hide the flash info banner, you must set the flash key of your the dashplay URL. Provided that /foo is your dashplay URL, the following request sets a message with severity info (blue background):

$ curl -iX PATCH http://api.dashplay.io/foo \
       -d '{"flash": {"severity": "info", "message": "Rollout in progress"}}'

To remove the flash info, just set the flash key to null:

$ curl -iX PATCH http://api.dashplay.io/foo -d '{"flash": null}'

Not that if you set the flash message of the parent of a sub-dashboard (i.e.: /foo/bar, the parent's flash will be displayed if no flash is set on the sub-dashboard. The most specific flash message wins (/foo/bar wins over /foo).

A good practice is to have a root dashplay with no dashboard set acting as a flash info broadcaster all your dashplays.

Support

I don't have a dashboard, how to create them?

Dashing is a popular framework to create custom dashboards. For moving things, Grafana is also popular. Also some commercial product like Tableau Online and the excellent Datadog offer such capabilities.


How can I add a browser to my TV?

The most popular and cheap solution is to plug a Raspberry Pi with a chromium in kiok mode on the HDMI port of your TVs. Check this project for more info projects.


Some URLs won't load

Open the Developer Console and look for errors. Most common issue is due to the presence of the X-Frame-Options HTTP header set to DENY.


I have a feature request

Great! Contact us at support at dashplay dot io or open a ticket on GitHub.