Added sitemap, Added digital signage project
All checks were successful
Build Site / Build-Site (18.x) (push) Successful in 39s

This commit is contained in:
Thomas Cole 2023-04-17 10:21:36 -04:00
parent 002e1aa234
commit db794ff582
3 changed files with 44 additions and 3 deletions

View File

@ -9,7 +9,11 @@ import svelte from "@astrojs/svelte";
// https://astro.build/config // https://astro.build/config
import mdx from "@astrojs/mdx"; import mdx from "@astrojs/mdx";
// https://astro.build/config
import sitemap from "@astrojs/sitemap";
// https://astro.build/config // https://astro.build/config
export default defineConfig({ export default defineConfig({
integrations: [tailwind(), svelte(), mdx()] site: 'https://thomaspcole.com',
integrations: [tailwind(), svelte(), mdx(), sitemap()]
}); });

View File

@ -1,7 +1,7 @@
{ {
"name": "@example/basics", "name": "@thomaspcole/website",
"type": "module", "type": "module",
"version": "0.0.1", "version": "0.1",
"private": true, "private": true,
"scripts": { "scripts": {
"dev": "astro dev", "dev": "astro dev",
@ -12,6 +12,7 @@
}, },
"dependencies": { "dependencies": {
"@astrojs/mdx": "^0.13.0", "@astrojs/mdx": "^0.13.0",
"@astrojs/sitemap": "^1.2.2",
"@astrojs/svelte": "^1.0.2", "@astrojs/svelte": "^1.0.2",
"@astrojs/tailwind": "^2.1.3", "@astrojs/tailwind": "^2.1.3",
"astro": "^1.6.15", "astro": "^1.6.15",

View File

@ -0,0 +1,36 @@
---
layout: "../../layouts/InteractiveDemoLayout.astro"
title: "Set and Forget Digital Signage"
tagline: "Using slideshow.digital for cheap reliable signs"
date: "April 17, 2023"
image: "https://images.unsplash.com/photo-1496442226666-8d4d0e62e6e9?ixlib=rb-4.0.3&ixid=MnwxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8&auto=format&fit=crop&w=1470&q=80"
imageattr: "https://unsplash.com/photos/TaCk3NspYe0"
---
### Overview
A recent project at work gave me the opportunity to explore the fascinating world of digital signage. I was tasked with making use of a few tvs that we had laying around to display the current events and advertisements for our organization.
After a quick google search I found no shortage of off the shelf solutions. However, I couldn't find a product that really suited our needs and that was reasonably priced. So, being a tinkerer and not having any form of budget to purchase an off the shelf solution I decided to take a stab at creating my own signage solution.
### What didn't work
My first attempt to tackle this was to create a web first approach. I thought if the web server did all the heavy lifting that it would be trivial to attach any old device that could display a web page to a tv and be done. For the most part this worked but it had some drawbacks, the biggest among them being the signage could not operate without an internet connection. I also had issues with the Raspberry pi 4 and gpu acceleration, so displaying a large collection of pictures was a bit choppy at times (*To be fair that might be my fault*).
The second attempt was to have each sign rsync with a master folder of images and display them locally using a python script. This was functional but not visually appealing. We can do better.
### Enter Slideshow
I don't remember how I managed to stumble across Slideshow but I sure am glad that I found it.
[Slideshow](https://slideshow.digital/) bills itself as a free digital signage app for android devices. AND. IT. DELIVERS.
The app is configured through a web interface that runs locally on device. It has a simple yet powerful screen builder and allows for content to be synced from remote sources.
The initial setup is a bit cumbersome but after getting everything configured on a test device the built in backup and restore feature allows for easy export of a configuration file that can be dropped onto a new device. Thanks to the built in file sync server, it is able to drop into our existing workflow for marketing content. Our marketing team does not have to do any additional work to make sure the advertisements make it to the signage.
I chose to pair slideshow with a new (but extremely cheap) [Chromecast with Google TV](https://store.google.com/us/product/chromecast_google_tv?hl=en-US) and it works flawlessly. The worst part of the setup is the rather forceful insertion of ads onto the Chromecast home screen. Putting the device in app only mode mostly resolved that issue though and makes it simple enough to restart slideshow if the chromecast reboots for any reason.
The app does offer the ability to restart itself after a device reboot however I personally have not gotten that working yet. I don't think it is the apps fault; I have a feeling the Chromecast does not like having its launcher overridden.
Slideshow has way more features than we are using in our setup but it scratches that itch that other solutions could not and the end product is a very clean and professional looking sign.