session.open und session.update
- Kommandos
session.open,session.update- Bereich
- Sitzung (
session) - Profil
- Kundenanzeige
- Antwort
{"state":"active"}
Eine Sitzung ist die Zeitspanne, in der die Anzeige einer bestimmten Person
zugeordnet ist. session.open eröffnet sie, session.update schreibt sie fort –
nach jeder Buchung, jeder Verlängerung, jeder Zahlung. Beide Kommandos tragen
dieselben Felder.
Der Unterschied liegt allein im Umgang mit dem Vorherigen:
| Kommando | Wirkung |
|---|---|
session.open |
beginnt neu; alle Angaben der vorigen Sitzung verfallen |
session.update |
ändert nur die mitgesendeten Felder; alle übrigen bleiben stehen |
Auftrag#
{"v":1,"cmd":"session.open","lang":"de",
"customer":{"masked":"B. L.","number":"10245","has_debt":true,
"balance":"-3.50","currency":"EUR"},
"counters":{"loans":7,"holds":2,"holds_ready":1,"borrowed":3,"returned":1},
"dates":{"due_next":"2026-08-29"},
"items":[{"kind":"loan","title":"Der Schwarm","author":"Frank Schätzing",
"due":"2026-08-29","cover":"https://…/cover.jpg"},
{"kind":"return","title":"Momo"},
{"kind":"hold","state":"ready","title":"Tintenherz"}],
"notes":[{"severity":"warn","key":"card_expires","date":"2026-09-30"}]}
lang gibt die Sprache vor, in der die Anzeige formulieren soll. Fehlt sie,
entscheidet die Anzeige.
customer – die Person#
| Feld | Inhalt |
|---|---|
masked |
verkürzte Anrede, etwa Initialen. Darf leer sein. |
number |
Lesernummer als Zeichenkette. Zur Anzeige bestimmt: Sie hilft beim Abgleich mit dem Ausweis. |
lang |
Sprachwunsch dieser Person; überstimmt lang des Auftrags |
has_debt |
es bestehen offene Forderungen |
balance, currency |
Kontostand; negativ bedeutet Schulden |
valid_until |
Ablauf der Mitgliedschaft (Datum) |
Ein Klarname gehört nicht auf eine öffentlich stehende Anzeige – dazu und zur Lesernummer siehe Betrieb.
counters – die Zählwerte#
| Feld | Inhalt |
|---|---|
loans |
ausgeliehene Medien insgesamt |
holds |
Vorbestellungen insgesamt |
holds_ready |
davon abholbereit |
borrowed |
in dieser Sitzung ausgeliehen |
returned |
in dieser Sitzung zurückgegeben |
renewed |
in dieser Sitzung verlängert |
items – was vorliegt#
Jeder Eintrag hat ein kind:
kind |
Bedeutung | Weitere Felder |
|---|---|---|
loan |
ausgeliehen | title, author, due, cover, barcode |
return |
zurückgegeben | title, author, cover, barcode |
renew |
verlängert | wie loan, mit neuem due |
hold |
vorbestellt | state: waiting oder ready |
fee |
Gebühr | amount, currency, reason |
items ist immer der vollständige Stand der Sitzung, nie ein Zuwachs. Geht
ein Auftrag verloren, ist der nächste damit wieder richtig.
Ein kind, das die Anzeige nicht kennt, übergeht sie. Wer keine Liste führt,
sendet nur counters; wer nur items sendet, überlässt der Anzeige das
Auszählen. Sind beide vorhanden, gilt counters.
notes – Hinweise#
{"severity":"warn","key":"card_expires","date":"2026-09-30"}
key benennt den Hinweis, severity (info, warn, error) seine
Dringlichkeit. Formuliert wird der Hinweis von der Anzeige – die Schlüssel
stehen in der Feldübersicht.
Kennt die Anzeige einen Schlüssel nicht, zeigt sie nichts, es sei denn, der
Eintrag führt zusätzlich ein Feld text mit fertigem Wortlaut.
Antwort#
{"v":1,"ok":true,"result":{"state":"active"}}
Zusammenspiel#
- Beide Kommandos beenden den Bildschirmschoner und heben eine angekündigte Verabschiedung wieder auf.
- Solange eine Sitzung offen ist, wechselt die Anzeige nicht von selbst zum Ruhebild.
- Verlässt der Arbeitsplatz die Aufsicht – Sperrbildschirm, Pause –, sendet das
Steuerprogramm
idle.showund nichtsession.close: Es soll nichts stehen bleiben, aber auch niemand verabschiedet werden, der noch da ist.