register library

Kopplung und Anmeldung eines Kassengeräts (RKSV-Kasse).

Der Einstieg ist RegisterClient. Diese Aufrufe laufen ohne Anmeldung — der Kopplungs-Code aus dem Panel bzw. das Gerätegeheimnis ist der Nachweis. Sie stehen bewusst neben KasseneckApi, die einen api_key braucht.

Classes

PairedRegisterDevice
Ergebnis der Kopplung — der vollständige Ausweis dieses Geräts.
RegisterClient
Die anmeldungsfreien Aufrufe rund um Kopplung und Anmeldung.
RegisterClientInfo
Kopplung und Anmeldung eines Kassengeräts — der Zwilling von register/pairing.ts im JS-Paket @kreiseck/kasseneck-api.
RegisterDeviceUsers
Antwort von RegisterClient.listRegisterUsersForDevice.
RegisterGeo
Standort (freiwillig); Grundlage der Standortsperre.
RegisterPinPolicy
PIN-Regel des Betriebs — daraus baut die Kasse Kästchen und Tastatur.
RegisterSessionClient
Die beiden Aufrufe der laufenden Sitzung.
RegisterTransport
RegisterUser
Der angemeldete Kassen-Benutzer.
RegisterUserPerms
Rechte eines Kassen-Benutzers.
RegisterUserSession
Ergebnis der Anmeldung.
RegisterUserSummary
Ein Kassen-Benutzer, wie ihn der Anmeldebildschirm zeigt.

Enums

RegisterLoginMode
Anmeldemodus des Geräts; ein unbekannter künftiger Wert gilt als auswahl.
RegisterScope
Reichweite eines Rechts.
RegisterUserKind
Art eines Kassen-Benutzers. Ein künftiger, hier unbekannter Wert gilt als person — beim Lesen ist dieses Paket tolerant.

Constants

kDetailEintraege → const int
kDetailTextMax → const int
kDetailTiefe → const int
Grenzen des Siebs. Benannt, weil ein Test sie namentlich prueft -- eine spaeter heraufgesetzte Grenze soll auffallen und nicht als Zahl im Code untergehen.
kRegisterBaseUrl → const String
Basis-Adresse der Kassen-Aufrufe.

Functions

fehlerDetails(Object? daten, List<String> geheimnisse) Map<String, dynamic>
Siebt das data einer Fehlerantwort zu einer Form, die man gefahrlos an einem Fehler mitfuehren kann.

Exceptions / Errors

KasseneckApiError
Fachlicher Fehler des Backends (PIN falsch, Kasse belegt, Geraet gesperrt ...).
KasseneckHttpError
Die Antwort war keine brauchbare Huelle {status, data} oder der HTTP-Weg scheiterte. Traegt bewusst nichts aus dem Rumpf: dort koennten Werte stehen, die wir gerade nicht ins Protokoll lassen wollen.
KasseneckReceiptFormatError
Ein Beleg kam an, liess sich aber nicht lesen — ein Pflichtfeld fehlt oder hat den falschen Typ.
KasseneckValidationError
Der Aufrufer hat etwas nicht mitgegeben, oder die Antwort trug nicht, was der Aufruf zusagt. Die Meldung nennt immer nur das Feld, nie seinen Wert — sonst stuende ein Geraetegeheimnis im Protokoll.