Signagepost in Kürze
- Software zur Anzeige von Bildschirmpräsentationen und Digital Signage (Digitalbeschilderung)
- Eigenentwicklung von Computerservice Graßler
- Manuelle oder automatisierte Beschickung mit Inhalten via Netzwerk/Internet
- Über Python-API programmsteuerbare Sekundäranzeigen
Grundfunktion: Anzeige von Präsentationen
Anzeige einer Werbepräsentation im Schaufenster
Viele Neuhauser haben das Programm, das ich in diesem Artikel vorstelle, bereits in Aktion erlebt. Denn die Software Signagepost nahm ihren Anfang in meinem Schaufenster in Neuhaus. Dort entwickelte und verwendete ich zunächst ihre Grundfunktion: Die Anzeige von Bildschirmpräsentationen für Werbe- und Informationszwecke. Das ist auf den ersten Blick eine einfache Aufgabe. Wenn da nicht die Auslegung handelsüblicher Betriebssystem für Interaktivität - und nicht die Automatisierung - wäre: Es ist sehr einfach, eine Präsentation in interaktiver Weise zu starten - an einem Rechner mit Tastatur und Maus, vor dem ein Mensch sitzt.
Weniger einfach ist es, dafür zu sorgen, dass das System auch zuverlässig bei jedem Neustart die Präsentation anzeigt - die dann auch immer sichtbar bleibt und nicht von Popup-Benachrichtigungen oder sich nach vorne drängelnden Anwendungsfenstern gestört wird. Und auch eine Neuinstallation sollte voll automatisiert erfolgen und selbst auf komplett anderer Hardware wieder genauso funktionieren, sobald die Präsentation wieder eingespielt wurde. Diese Anforderungen erfüllt Signagepost. Von einer leeren SSD oder SD-Karte bis zur Betriebsbereitschaft sind es rund 20 Minuten. Hierbei muss nur die Installation gestartet und nach Abschluss eine Präsentation aufgespielt werden - den Rest erledigt die Automatisierung. Nach einem Stromausfall oder absichtlichem Herunterfahren bootet das System wieder und zeigt die Präsentation.
Steuerung: .ODP-Dateien über Dateifreigabe oder SSH
.ODP-Datei in einer Signagepost-Freigabe
Die Steuerung ist bewusst einfach gehalten. Auf dem System liegt genau eine Präsentation namens screensaver.odp, die automatisch abgespielt wird. Bei dieser Präsentation handelt es sich um eine .ODP-Datei, die in Libreoffice bearbeitet werden kann. Sämtliche "Regieanweisungen", wie zum Beispiel die Sekunden bis zum Folienwechsel, werden beim Bearbeiten der Präsentation durch den Anwender festgelegt. Selbstverständlich ist auch eine statische Anzeige ohne Folienwechsel möglich - in diesem Fall verwendet man eine einzige Folie ohne Folienwechselanimation.
Zugriff auf diese Präsentationdatei erhält man auf zwei verschiedenen Wegen. Der einfachere ist eine passwortgeschützte Dateifreigabe auf dem Präsentationsrechner. Diese kann zum Beispiel als Netzlaufwerk eingebunden werden. Auf dieser Freigabe bearbeitet man die .ODP-Datei mit der Präsentation und speichert sie wieder ab. Signagepost prüft in regelmässigen Abständen, ob sich die .ODP-Datei geändert hat und startet gegebenfalls die Präsentation neu.
Anspruchsvollere Benutzer können per SSH auf das Signagepost-System zugreifen um die .ODP-Datei auszutauschen und die Präsentation neu zu starten. Diese Zugriffsmethode eignet sich nicht zuletzt auch für automatisierte Änderung und die koordinierte Verwaltung mehrer Signagepost-Systeme.
Digital Signage: Programmsteuerbare Sekundäranzeigen
Bildschirmanzeige beim Auslösen des Türöffners.
Neben der einfachen Präsentationsanzeige kann Signagepost auch vom Präsentationsmodus auf programmgesteuerte Sekundäranzeigen umschalten. Hierbei handelt es sich um verschiedene Anzeigeansichten (unter anderem mehrere Textzeilen, zweispaltige Text/Graphikblöcke mit Zeilenumbruch, nummeriertes Menü, Video-Player), die per Python-API oder Shellskript mit Inhalten beschickt werden können.
Im Video links verwende ich diesen Mechanismus um beim Auslösen des elektrischen Türöffners zusätzlich eine Nachricht auf dem Bildschirm anzuzeigen. Diese hat sich in diesem Fall als hilfreich erwiesen, da mein Betrieb an einer viel befahrenen Strasse liegt und man das leise Klicken des elektrischen Türöffners oft nicht hört.
Plattform und Hardware
Das Signagepost-System funktioniert prinzipiell auf jedem Computer, auf dem ein Linux-System läuft. Als Linux-System verwende ich auf x86-Plattformen Ubuntu 24.04, das ich mit hauseigener Automatisierung für den Betrieb als Signage-System anpasse. Andere Linux-Systeme sind prinzipiell unterstützbar, erfordern aber - kostspielige - Anpassungen an das jeweilige System. Wo das gewünscht wird, kann ich mich darum kümmern.
Bei der Hardware ist das System recht genügsam. Ein Monitor und ein Odroid M1 mit 4GB RAM und einer SSD oder SD-Karte ab 16GB reicht für den reinen Präsentationsbetrieb völlig aus und ist das Mittel der Wahl wenn man den Stromverbrauch minimieren will. Braucht man mehr Leistung (zum Beispiel zum Abspielen hochauflösender Videodateien), kann man die meisten x86-basierten Mini-PCs der letzten 8 Jahre verwenden.
Weiterentwicklung und Anpassungen
Die Weiterentwicklung des Produkts findet kontinuierlich statt, soweit ich selbst Handlungsbedarf sehe. Darüber hinausgehende kundenspezifische Anpassungen sind zu meinem Stundensatz Tarif C (siehe (siehe Preise; zum Veröffentlichungszeitpunkt EUR 120/Stunde netto) möglich.
Der Kunde hat Zugriff auf den kompletten Quellcode des Systems und kann ihn unter zwei Bedingungen modifizieren: (1) Jegliche Unterstützung für modifizierten Code ist nicht Teil der Lizenz, (2) der Kunde muss Updates der Basisversion manuell integrieren.
Wenn Unterstützung für modifizierten Quellcode oder die Integration zukünftiger Updates in modifizierten Quellcode gewünscht wird, ist das zum selben Stundensatz wie die Entwicklung kundenspezifischer Anpassungen möglich.
Entwicklungsstand und Zielgruppe
Signagepost befindet sich in der frühen Betaphase. Das heisst, dass Dokumentation spärlich ist. Weiterhin ist Signagepost selbst zwar ein normal installierbares Python-Modul, die Installationsautomatisierung darum herum besteht aber derzeit aus Shell-Skripten. Somit ist es nur bedingt zur eigenständigen Installation durch den Kunden geeignet. Ich werde daher in der Anfangsphase in aller Regel nur fertig installierte Systeme anbieten beziehungsweise diese auf Kundenhardware installieren. Wenn das Produkt sich gut verkauft, werde ich ein Ansible-Playbook für die Installation entwickeln und die Dokumentation nach und nach erweitern. Aktuell ist Signagepost eher für Nutzer der ersten Stunde oder Entwickler, die Signagepost in ihre eigenen Anwendungen integrieren möchten, geeignet. Deshalb betreue ich auch die ersten Kunden persönlich - auch um Wünsche und Anregungen für die weitere Entwicklung zu sammeln.