Digital Signage

Headless Digital Signage: Ein Skript, eine Pipeline oder ein Agent steuert die Bildschirme

Bei Headless Digital Signage muss nichts geöffnet bleiben, damit sich ein Bildschirm ändert: Ein Agent, ein Skript oder eine Pipeline aktualisiert über eine API, was läuft, und der Player rendert es. Hier schreibt eine CI-Pipeline mit curl auf einen TV, ohne geöffnetes Dashboard und ohne dass eine Person zusieht.

Aktualisiert am

  1. Sie

    Bringen Sie unsere Release-Pipeline auf den TV des Plattform-Teams. Die Pipeline meldet jeden Schritt, sobald er passiert (gestartet, Tests, Deployment, Rollback), neueste zuerst, mit einer roten Zeile, wenn etwas fehlschlägt. Das geschieht aus einem Shell-Skript mit curl, ohne Person und ohne Agent im Ablauf. Richten Sie die Tafel also einmal ein und sagen Sie mir, was das Skript braucht.

  2. Agent

    Die Tafel läuft auf dem TV des Plattform-Teams: neuester Schritt zuerst, und ein Fehler erscheint als rote Zeile. Das Skript braucht drei Dinge, die API-Adresse, die ID der Tafel und ein Token, und ich habe es für Sie geschrieben. In meinem Test war das fehlgeschlagene Deployment etwa zwei Sekunden, nachdem das Skript es gesendet hatte, auf dem Bildschirm.

Kostenlos startenPreise ansehen

01 Was bedeutet Headless bei Digital Signage?

Was bedeutet Headless bei Digital Signage?

In einem herkömmlichen Signage-System ist die Web-App die Bedienoberfläche, und der Player folgt ihr. In einem Headless-System liegt die Steuerung in einer API. Jeder Client ruft dieselbe Steuerungsebene auf, die Steuerungsebene entscheidet, was jeder Player abspielt, und der Player rendert es und meldet zurück. Das Dashboard ist ein weiterer Client, und kein Client muss geöffnet bleiben, damit ein Bildschirm weiterspielt.

AufgabenbereichHeadless-CMSHeadless-Signage-Plattform
Was sie enthältStrukturierte InhaltseinträgeMedien, Playlists, fertige Apps, eigene Apps und Schlüssel-Wert-Zustand
Wer es rendertIhr eigenes Frontend oder Ihr eigener PlayerDer Player auf jedem Bildschirm
Zeitplanung und ÜbernahmeEin separates System auf der BildschirmseiteDer Server entscheidet, was jeder Bildschirm abspielt
Nachweis, dass der Bildschirm es gezeigt hatEin separates System auf der BildschirmseiteScreenshots und Wiedergabeaufzeichnungen
Verwenden Sie es, wennDerselbe Inhalt speist auch eine Website oder eine AppDie Bildschirme sind der Kanal

Programmierbar bedeutet, dass Code steuert, was läuft. Programmatisch bedeutet meist den automatisierten Einkauf von Werbeplätzen auf Out-of-Home-Bildschirmen, was Player gesondert behandelt.

02 Eine Release-Tafel, die eine Pipeline steuert

Eine Release-Tafel, die eine Pipeline steuert

Das Plattform-Team möchte seine Release-Pipeline auf dem TV an der Kaffeemaschine sehen: jeden Schritt, sobald er passiert, neueste zuerst, mit einer roten Zeile, wenn etwas fehlschlägt. Die Pipeline, ihre Job-Nummern und Hosts sind Demo-Inhalt. Der Lauf ist echt: 26. Oktober 2026, in der Staging-Umgebung von screenRIG, mit den Bildern, die der Player in einem Browserfenster zeichnet, das den TV ersetzt. Jede Pipeline-Stufe führt einmal ein kleines Skript aus:

  1. Pipeline gestartet. main, 3 Commits.
  2. Tests bestanden. 412 Tests in 3 Min. 10 s.
  3. Deployment in Produktion fehlgeschlagen. Zeitüberschreitung beim Health-Check auf web-2, Rollback läuft.
  4. Rollback abgeschlossen. web-1 und web-2 wieder in Ordnung.

Nach dem dritten Schritt ist der Fehler die große Zeile, die früheren Schritte stehen mit ihrem Alter in der Liste, und die Fußzeile zählt die Ereignisse und Fehler der Stunde. Nach dem vierten steht der Rollback oben und das fehlgeschlagene Deployment darunter.

Eine Release-Tafel: eine rote Fehlerzeile, Deployment in Produktion fehlgeschlagen, mit der Health-Check-Meldung, daneben Tests bestanden und Pipeline 4182 gestartet
Nach Schritt 3. Die Stufe der Zeile bestimmt ihre Farbe: Info, Erfolg, Warnung oder Fehler.
Die Release-Tafel nach dem Rollback: eine grüne Zeile „Erfolg“, Rollback abgeschlossen, daneben das fehlgeschlagene Deployment und frühere Schritte
Nach Schritt 4. Die Fußzeile zählt weiterhin einen Fehler in der letzten Stunde.

03 Was macht das Skript der Pipeline?

Was macht das Skript der Pipeline?

Der Part des Agenten ist kurz und geschieht einmalig. Er erstellt eine Tafel vom Typ Aktivitätsfeed, gibt ihr eine erste Zeile, damit die Seite nicht leer ist, und bringt sie auf den Bildschirm. Dann übergibt er der Pipeline ein Skript. Das Skript liest die Tafel und ihre Revision, setzt die neue Zeile an den Anfang und schreibt sie nur zurück, wenn zwischenzeitlich niemand geschrieben hat:

Terminal
# $url is the board's address and $auth carries your token.
# 1. Read the board and its revision (the ETag).
etag=$(curl -sS -D - -o current.json -H "$auth" "$url" | awk 'tolower($1) == "etag:" { print $2 }' | tr -d '\r')
# 2. Write the board back with the new row first. A stale revision is refused, and the script reads again.
curl -sS -X PUT "$url" -H "$auth" -H "Content-Type: application/json" -H "If-Match: $etag" -H "Idempotency-Key: board-$(date -u +%s%N)" --data @next.json

04 Woher weiß die Pipeline, dass der Bildschirm es hat?

Woher weiß die Pipeline, dass der Bildschirm es hat?

Sie führt kein Polling durch. Der Ereignisstream des Projekts ist wiedergabefähig, und eine Pipeline kann ihn lesen, während er geschrieben wird. Beim fehlgeschlagenen Deployment enthielt der Stream den Schreibvorgang, die Änderung und dann den eigenen Bericht des Players, dass er diese Revision auf dieser Seite angewendet hatte (Zeiten in UTC, auf Ereignis und Revision gekürzt):

Text
03:43:47.501  kv.updated                 revision 5 written
03:43:47.505  screen.card_data_changed   revision 5
03:43:49.306  screen.card_data_applied   revision 5, page "board"

Der Player meldete die Revision 1,8 Sekunden, nachdem der Schreibvorgang akzeptiert wurde. Ein Job, der erst weitermachen darf, wenn der Bildschirm einen Fehler anzeigt, kann auf diese letzte Zeile warten, und ein Job, dem das egal ist, kann sie ignorieren. Bildschirmereignisse sind im Listen-Stream kostenlos, und eine erneute Verbindung setzt am letzten Cursor fort.

05 Zwei Schreiber, eine Revision

Zwei Schreiber, eine Revision

Zwei Jobs können gleichzeitig schreiben. Ein Schreibvorgang mit einer veralteten Revision wird abgelehnt, und die Ablehnung nennt die aktuelle Revision, sodass niemand eine neuere Zeile überschreibt. Das Skript liest erneut und versucht es bis zu dreimal noch einmal.

06 Was bleibt bei Headless Digital Signage auf dem Server?

Was bleibt bei Headless Digital Signage auf dem Server?

Alles, was weiterlaufen muss, wenn kein Client verbunden ist. Der Player rendert; der Server entscheidet.

AufgabenbereichWas der Server tut
ZeitpläneWählt aus, was jeder Bildschirm abspielt: seine Übernahme, sonst die erste Kampagne, die greift, sonst den ersten Zeitplaneintrag, der zur Ortszeit des Bildschirms passt, sonst die zugewiesene Playlist. Wechsel greifen innerhalb von etwa einer Minute nach einer Zeitgrenze.
KampagnenSchaltet jeden Bildschirm einer getaggten Flotte auf eine Playlist um, solange ihre Datumsangaben und Wochenfenster gelten, jeweils nach der eigenen Uhr.
ÜbernahmeLegt eine Playlist auf einen Bildschirm oder eine getaggte Flotte, vor Kampagnen, Zeitplänen und Zuweisungen, und endet dann von selbst.
AnzeigeleistungLegt fest, wann jedes Display eingeschaltet ist. Der Player wertet den Zeitplan auf dem Gerät aus und funktioniert daher auch offline weiter.
Nachweis der WiedergabeErfasst jeden sichtbaren Start eines Bildes oder Videos. Ein CSV-Export deckt bis zu 31 Tage ab.
GerätezustandPlayer melden ihren Zustand regelmäßig und sofort, wenn sich die Displayverbindung oder die Stromversorgung ändert.

Ein Tag wählt eine Flotte aus, sodass ein Befehl jeden Bildschirm erreicht, der ihn trägt.

07 Wann brauche ich noch das Dashboard?

Wann brauche ich noch das Dashboard?

Das Dashboard ist ein weiterer Client, und manche Aufgaben passen besser zu einem Menschen.

  • Überprüfungen. Ein Agent, der mit dem Zugriff „Vorschlagen“ angemeldet ist, oder ein Projekt, das eine Überprüfung verlangt, sendet Änderungen an die Seite „Überprüfungen“. Eine Person genehmigt, fordert Änderungen an oder lehnt ab, und vorher erreicht nichts einen Bildschirm.
  • Zugriff. Die Seite „Zugriff“ listet jeden Agenten, jede verbundene App und jeden Service-Client auf, und eine Person kann dort jeden davon beenden.
  • Personen und Projekte. Einladungen und Projekteinstellungen sind Sache von Personen.

08 Häufig gestellte Fragen

Häufig gestellte Fragen

Ist Headless Digital Signage dasselbe wie API-first Digital Signage?

Sie beschreiben dasselbe Design von zwei Seiten. API-first bedeutet, dass die API zuerst entworfen wird und jeder Client sie nutzt. Headless bedeutet, dass keine bestimmte Oberfläche nötig ist, um die Bildschirme zu betreiben.

Brauche ich einen Entwickler, um Headless Digital Signage zu betreiben?

Nein. Ein Agent kann es aus einem einzigen Satz heraus betreiben, und eine Person genehmigt, was er vorschlägt, wenn das Projekt eine Überprüfung verlangt. Ein Entwickler ergänzt Skripte wie das obige, wenn ein System von sich aus auf einen Bildschirm schreiben soll.

Kann ich meine Inhalte in einem anderen System halten?

Ja. Ein Skript liest das System und schreibt die Werte auf eine Tafel. Die Bildschirme rendern, was der Server hält.

Welche Player steuert ein Headless-Setup?

Zwölf: der Web-Player, Android und Google TV, der Amazon Signage Stick, Apple TV, macOS, iPhone und iPad, Windows, Linux, Raspberry Pi, LG webOS Signage, Samsung Smart Signage (Tizen) und BrightSign. Der Player-Leitfaden enthält die Installationsschritte.

Ist Headless Digital Signage kostenlos?

screenRIG ist kostenlos, mit unbegrenzt vielen Bildschirmen. Bezahlte Tarife bieten Business-Tools, mehr Personen, persönliche Ansprechpartner, Governance und Vertragsbedingungen. Siehe Preise; Entwickler zeigt jede Schnittstelle.

09 Ihre erste Zeile schreiben

Ihre erste Zeile schreiben

Lesen Sie die REST-API-Referenz für die Aufrufe, die das Skript macht, oder starten Sie kostenlos und lassen Sie Ihren Agenten das Skript schreiben.

10 Verwandt

11 Weitere Themen

screenRIG ist kostenlos.

Installieren Sie das offizielle Plugin, koppeln Sie einen Bildschirm, und Ihr Agent veröffentlicht darauf.

Kostenlos startenPreise ansehen →