Kommandos
Die Kommandos verteilen sich auf vier Bereiche. Nur der erste ist Pflicht; die
übrigen darf eine Anzeige anbieten oder nicht, und sie sagt in der Antwort auf
hello, was bei ihr
vorhanden ist.
Die vier Bereiche#
| Bereich | Kennung in caps |
Kommandos |
|---|---|---|
| Grundlage | – (immer vorhanden) | hello, ping, status |
| Sitzung | session |
session.open, session.update, session.close |
| Anzeige | idle, message, media, venue |
idle.show, idle.slides, message.show, message.clear, media.show, venue.set |
| Gerät | monitor, config, lifecycle |
monitor.*, config.get, config.set, lifecycle.* |
Profile#
An diesen Profilen bemisst sich die Konformität. Ein Erzeugnis erfüllt die Grundlage vollständig und mindestens ein Profil:
| Profil | Verlangt |
|---|---|
| Kundenanzeige | Grundlage + session.open, session.update, session.close + idle.show |
| Hinweisanzeige | Grundlage + message.show, message.clear |
| Verwaltbar | zusätzlich monitor.*, config.get, lifecycle.* |
Eine Anzeige an der Ausleihtheke erfüllt üblicherweise „Kundenanzeige" und „Verwaltbar", ein Bildschirm im Eingangsbereich nur „Hinweisanzeige".
Zustände#
Eine Anzeige befindet sich immer in genau einem Zustand. Welchen, verrät
status.
| Zustand | Was zu sehen ist |
|---|---|
idle |
Ruhebild – Begrüßung, Öffnungszeiten, Bildfolge |
active |
eine laufende Sitzung |
farewell |
die Verabschiedung nach session.close |
saver |
Bildschirmschoner nach längerer Ruhe |
session.open session.close (delay, seconds)
idle ──────────────► active ─────────────────────────────────► farewell
▲ │ │
│ idle.show │ Leerlauf (idle.timeout_s) │ seconds
└────────────────────┴──────────────────────────────────────────┘
│
▼ Leerlauf (saver.timeout_s)
saver ───── beliebiger Auftrag ─────► voriger Zustand
Dazu drei Regeln:
- Jeder gültige Auftrag gilt als Betrieb und beendet den
Bildschirmschoner – auch ein bloßes
ping. - Solange eine Sitzung offen ist, gibt es keinen Leerlauf-Übergang nach
idle. Wer eine Person vor sich hat, wird nicht plötzlich zum Ruhebild. - Ein Sitzungskommando hebt eine angekündigte Verabschiedung auf. Wird nachgebucht, während der Countdown läuft, bleibt die Sitzung bestehen.
Wie ein Steuerprogramm vorgeht#
hello einmal je Verbindung: Fähigkeiten merken
↓
venue.set einmal beim Start und bei jeder Änderung
↓
session.open Leser aufgerufen
↓
session.update nach jeder Buchung
↓
session.close Vorgang beendet, Verabschiedung
Die Angaben aus venue.set gelten über alle Sitzungen hinweg: Sie sagen der
Anzeige, was sie zeigen soll, wenn niemand davorsteht.
Fehlt ein Bereich (404/501), lässt das Steuerprogramm ihn aus und arbeitet
mit dem Rest weiter. Es gibt keinen Auftrag, dessen Fehlschlag den Vorgang an
der Theke anhalten dürfte.