ScreenCloud ArrowBack
ScreenCloud Article - Building Smart Digital Signage With Automation

Last Updated: 04/11/2024

Get StartedContact Sales
Resources
>

Building Smart Digital Signage With Automation

ScreenCloud Article - Building Smart Digital Signage With Automation

Last Updated: 04/11/2024

Contents

  1. Show What’s Happening With ScreenCloud News and Travel Apps
  2. Build Automated Dashboards With Webhooks
  3. Automate Your Digital Signage With ScreenCloud’s GraphQL API
  4. Building the 21st Century Wall Clock For Your Company

Ask for an AI Summary

ScreenCloud logo

The best tools are effortless. Clocks, for example, require no thought. You glance at the wall and instantly know the time. It’s enough to know that it’s almost four, as you’re walking to a meeting.

Same for a calendar. One glance tells you today’s halfway through the month, even without counting the exact number of days. The calendar’s picture-of-the-month might catch your attention once or twice, but it’s the utility and actionable information that makes you check it regularly. 

Glanceable, up-to-date information. Just enough value to be worth your attention. Those ingredients are what make environmental information systems valuable and relevant — because they show updated information you need to carry on with your work.

Replicate the relevancy with automated digital signage. The same notices and reminders from HR will quickly get ignored if your signage doesn’t regularly show new, up-to-date information; just like how most static displays on a wall quickly fade into the background. With a few integrations and automations, you can turn your screens into smart displays that always show exactly what you and your team need to see, when you need it.

Show What’s Happening With ScreenCloud News and Travel Apps

A screenshot of ScreenCloud's build-in Weather app
ScreenCloud’s built-in apps show the latest news, weather, transit times, and more—automatically

The easiest way to start automating your digital signage is with ScreenCloud’s built-in Apps‚ since many are designed to show the latest data your team needs.

You can give your team a reason to check the signage—and hopefully not check their phones as often–with ScreenCloud’s Live News app to show today’s headlines (with other ScreenCloud apps for tech, business, and entertainment, plus an RSS Feeds app to show updates from any blog and a Stocks & Exchanges app to see the latest stock prices). Having an on-site party for a big game? The Sports Live Scores and Soccer Scores would let you put the live score on your break room screens.

You might not even need a wall clock anymore. You could use ScreenCloud’s World Clock to show what time it is in the cities that matter most to your company, and the Calendar for Google and Outlook Calendar apps to show today’s date and upcoming team events.

Pull Automated Data Together Into a Playlist

A screenshot of ScreenCloud's Playlists feature
Organize your automated apps into a playlist to display together

ScreenCloud’s apps refresh automatically with the latest info. But the weather or the news alone aren’t the only thing your team needs to see. You need to swap things up to keep your signage useful and interesting.

So build a Playlist—an organized set of apps and other ScreenCloud media.

First, add and configure the apps you want to use from the Apps tab in your ScreenCloud Dashboard. Then open Playlists, add a new one, and drag and drop the apps you want from the Content tab. Rearrange the apps into the order you want, and set how long each one should be visible.

A screenshot of ScreenCloud's Flight Schedule app
Build the perfect signage for an airport hotel or lounge, for your business

Say you have a restaurant or hotel near an airport, and want a screen where your team always knows the travel-related info guests are most likely to need. You could add the Flight Schedules app to show your closest airport’s most recent departures and arrivals, the Currencies app to show live exchange rates, and perhaps a  Weather app to show if it’s going to rain.

Add each of those to one playlist, then set it to show on your lobby signage to keep everyone informed, automatically.

Schedule Automated Content With Channels Options

Perhaps you don’t need to show some of your automated content all the time. Maybe you want to help your team get ready for their commute home, with the weather and perhaps ScreenCloud’s Transport app to show nearby train and bus departures. That info’s handy in the evening, but hardly something most people need at 2 PM.

That type of content is best set to a schedule, in a ScreenCloud Channel.

A screenshot of ScreenCloud's Channels scheduling settings
Use ScreenCloud Channels’ schedules to set when apps and data will be displayed

Set up each app, and put all the stuff that’s needed at a specific time in the same playlist. Then open ScreenCloud Channels, select the channel that’s powering your signage, click Add Content, and add that playlist to your screen’s rotation. Now, click the schedule button—which by default will be a blue bar saying Everyday. There you can pick the exact days and times to show those apps—or even choose a single date, for info only needed once.

Now, as evening rolls around, your signage will start showing the upcoming train departures and how cool it is outside, so your team knows what to expect before they head out. And if you want, tomorrow morning, your signage could greet them with today’s schedule, headlines, and other quick info to start their day.

Build Automated Dashboards With Webhooks

An example of what you can create with webhooks and ScreenCloud Playgrounds
Use Playgrounds and Webhooks to build automated dashboards

There’s more to ScreenCloud than just the built-in apps. You can also build custom live-updating dashboards and screens with ScreenCloud’s built-in tools plus a bit of coding.

The simplest options include Excel, Google Sheet, and Microsoft BI) integrations—and more—that can show live-updating tables and charts of data.

Or, with ScreenCloud Playgrounds, you can push new data to ScreenCloud from almost any app. Playgrounds is a coding environment where you can write HTML, CSS, and JavaScript code in ScreenCloud, then add live data to your code with Webhooks. Check out our Build an Automated Dashboard With ScreenCloud Playgrounds for a quick guide to Playgrounds, then try coding your own live-updating dashboard by hand or with code samples online from Replit and other coding communities.

Automate Your Digital Signage With ScreenCloud’s GraphQL API

Once you’ve got your content pulled together, you can automate everything else about your signage with ScreenCloud’s GraphQL API. You can check which of your screens are active right now, list your ScreenCloud subscription details, and see which playlists and channels your team has configured. If you can see something in your ScreenCloud account, odds are you can view it with the GraphQL API. And you can do tasks with the API’s mutations, too, to add files to a channel or playlist, create a new screen or group programmatically, delete folders and files to clean things up, cast data when it's most needed, and much more.

If you’re new to GraphQL APIs, or haven’t used ScreenCloud’s API yet, first check our beginner’s guide to GraphQL. It’s relatively easy to use—and you can query the API directly from Terminal on your computer, with tools like Postman for more detailed queries, or Zapier to automatically change stuff on your screens.

Here are some examples of ways to automate your signage with ScreenCloud’s GraphQL API:

Change Signs Based on Weather or Breaking News

The weather doesn’t matter all that much … until it does, and you’ll get drenched if you go out for lunch and don’t take an umbrella. Perhaps your team doesn’t want to see the weather every day, but they’ll be glad the signage let them know on days it’ll rain.

You could make your signage only show the Weather app on days when it’s most likely to rain. Here’s how.

A screenshot of Postman running a ScreenCloud GraphQL query
Run a ScreenCloud GraphQL query in Postman to get info about your signage

First, you’ll want to set up a Weather app in ScreenCloud. Then, you’ll need that app’s ID. Use the GraphQL API—in Terminal or Postman—and run the following query to find it (check our [GraphQL tutorial](https://screencloud.com/digital-signage/graphql-query-mutation-examples) if you’re unsure how to do so):

allAppInstances { 
          totalCount 
          nodes { 
               Id 
               Name 
          } 
}

Search for your weather screen’s name in the results, and copy the ID.

You’re going to need one more query, to find the ID of the playlist that’s currently playing on your screen. Check your screen in ScreenCloud, first, to make sure which playlist it’s playing. Then run this query to grab that playlist’s ID—and copy it as before:

allPlaylists { 
          totalCount 
          nodes { 
               Id 
               Name 
          } 
}
A screenshot of a Zapier Code step to watch apps for changes and automatically execute code
Use Zapier to watch your apps—such as the weather app for rainy days—then have it automatically run code to change your signage

Now, you’ll need to make a Zap that watches the weather, checks if it’ll rain today, and then use the addAppInstanceToPlaylist mutation to get that. Start your automation with the Weather app, choose the “Will it rain today?” trigger, and enter your office’s location.

Add a Code by Zapier step and choose a JavaScript action, then enter the following code to query the mutation and add your ScreenCloud weather app to your playlist, adding your playlist ID, app ID, and ScreenCloud GraphQL token in the correct spots:

	const query = ` 
	  mutation { 
	    addAppInstanceToPlaylist(input: {playlistId: "PLAYLIST_ID", appInstanceId: "APP_ID"}) { 
        clientMutationId 
    } 
 
	   } 
	`; 
 
	const token = 'YOUR_TOKEN'; // Replace with your actual token 
 
	const response = await fetch('https://graphql.us.screencloud.com/graphql', { 
	  method: 'POST', 
	  headers: { 
	    'Content-Type': 'application/json', 
	    'Authorization': `Bearer ${token}` 
	  }, 
	  body: JSON.stringify({ query }) 
	}); 
 
	const data = await response.json(); 
	output = { result: data };

Run your Zap, then go check your ScreenCloud playlist … and any screens with that playlist will now have the weather app playing alongside your other content.

Cast Data to a Screen for Urgent Announcements

Now what if you’d rather change your screens instantly to make sure everyone on your team sees an announcement

That’s where Casting comes in. Much like a Chromecast, where you can push a YouTube video from your phone to your TV, on ScreenCloud you can Cast content to a screen and have it take over what’s currently playing. With the GraphQL API, you could cast anything to your screen, then resume normal programming when the announcement’s no longer needed.

Here’s how.

First, you’re going to need to get the ID of the screen you’ll cast to, using the following GraphQL query—search the response for your screen’s name then copy its ID:

allScreens {nodes { id name } }

Then, for this tutorial we’ll cast a Playlist (perhaps the one you just added a weather notice to, previously) to a screen. You’ll need the ID of the Playlist—use the `allPlaylists` query from the previous section to grab that. Or, if you want, you could cast a Channel or individual piece of content—check the GraphQL documentation for details there.

Now, let’s cast the content to our screen with the following GraphQL query, replacing your screen and playlist ID in the query:

createCasts( 
          input: { 
          screenIds: "SCREEN_ID" 
          content: { 
               _ref: { type: "playlist", id: "PLAYLIST_ID" } 
               } 
          } 
) { 
          clientMutationId 
          casts { 
               Id 
          } 
}

Then check your screen or your ScreenCloud dashboard, and you’ll see that playlist playing instead of its default playlist or channel.

A screenshot of ScreenCloud's dashboard showing content triggered by GraphQL
After running the createCasts mutation, ScreenCloud’s dashboard will show it’s casting your playlist—and your screen will instantly change to the new content

Want to stop the cast? You could add a `cast {expiresAt}` with a timestamp when you’d like the content to stop playing, in the original mutation. Or, you could run the following mutation—this time, including the castID from the createCasts response:

castStop( 
     input: { 
               castId: "CAST_ID", 
               screenIds: "SCREEN_ID"} 
     ) { 
clientMutationId 
}

Keep Building Automations for Your Team

With those skills down, you can take ScreenCloud digital signage automation even further. You could add steps to your Zap to watch for rain, then wait until 11:30AM to cast your playlist to your screen before your team heads out to lunch, then revert to normal programming an hour later.

You could write a local script on your computer that runs your GraphQL query in Terminal or Command Prompt whenever you press a hotkey, so you could press perhaps Ctrl+Alt+C to switch your screens to your Weather playlist—then press Ctrl+Alt+N to switch back to your screen’s original content.

You could even tie a bunch of ideas together to build advanced signage automations. Imagine you manage signage for a quick service restaurant and want to build a queue for your business in ScreenCloud. You could code a custom queue signage in Playgrounds, and use Webhooks in Playgrounds to update it with new people in the queue. 

Perhaps you could have one keyboard shortcut to add people to the queue, another to show which queue number is ready to be served, and a third to cast another playlist to your screen if no one’s in the queue. It’d take a bit of coding, a bit of playing around, but the sky’s the limit with automating digital signage once you learn your way around ScreenCloud’s GraphQL API.

Building the 21st Century Wall Clock For Your Company

With ScreenCloud’s automation tools in hand, it’s time to step back and think through what your team needs from your signage. Dig into your digital signage audience, and think about what info matters most to them. The travel idea above might be great in the lobby of a travel agency, but might not be as relevant for a tech company—where, perhaps, Google Analytics and Microsoft BI data would be something your team would want to see. Holiday messages might be great at the holidays, but no one’s going to want to see them come January 1st. And so on.

Think through what you and your team want to see on your screens, build automations that fit those use cases, and you’ll be ready to build automated signage that boosts your ROO—return on objective.

Your office still might have a clock on the wall, but with a bit of dedication and a bit of automation, your digital signage will become the number-one tool captivating your team’s attention as they walk through the office.

Image Credit: Header image via Unsplash.