Legacy-Clients
HandyCafe kann V3- und V4-Client-Installationen gemeinsam mit modernen Clients auf demselben Server verwalten. Legacy-Clients erscheinen im Admin-Panel als eigener Kartentyp mit einem reduzierten Aktionssatz, der dem entspricht, was das ursprüngliche Protokoll unterstützt.
Bevor Sie Legacy-Clients im Admin-Panel sehen können, aktivieren Sie die Laufzeitunterstützung unter Einstellungen > Legacy-Clients.
So Erscheinen Legacy-Clients
Legacy-Clients verbinden sich über das ursprüngliche UDP-Multicast-Protokoll mit dem Server. Sie verwenden nicht mDNS wie moderne Clients. Stattdessen erkennt der Server sie auf zwei Wegen:
| Erkennungsweg | Auslöser |
|---|---|
| TCP-Anmeldung | Der Client sendet eine LoginRequest an den TCP-Befehlsport. Der Server speichert den Peer und löst ein Connected-Ereignis aus. |
| UDP-Ping | Der Client sendet einen Ping-Frame an die Multicast-Gruppe. Der Server empfängt ihn, aktualisiert den Peereintrag und löst ein Online-Ereignis aus. |
Pro MAC wird ein Zustand in einem Legacy-Client-Speicher mit IP, Hostname, angemeldetem Benutzer, Client-Version, Sitzungstimer und Zeitstempel des letzten Kontakts geführt. Jeder eingehende Frame setzt den Inaktivitäts-Timer zurück. Wenn der Timer ohne Verkehr abläuft (standardmäßig 10 Sekunden), wird der Client offline markiert. Der Datensatz bleibt in der Datenbank erhalten, damit die Historie nicht verloren geht.
Die Legacy-Client-Karte
Jeder Legacy-Client wird als eigene Karte dargestellt, die sich von den Karten moderner Clients unterscheidet. Der Kopfbereich zeigt den Anzeigenamen (Hostname, wenn vorhanden, sonst MAC), ein farbiges Online- oder Offline-Badge und ein Statuslabel.
Statusfarben Und -Labels
| Status | Farbe | Bedeutung |
|---|---|---|
| Online | Grün | Eine aktive Sitzung läuft. |
| Idle | Cyan | Der Client ist verbunden und wartet. Keine aktive Sitzung. |
| Paused | Bernstein | Die Sitzung ist pausiert. Die Abrechnung ist angehalten. |
| Busy | Lila | Der Client verarbeitet eine Anfrage. |
| Payment | Rosa | Der Client befindet sich in einem Zahlungsablauf. |
| Admin | Indigo | Der Client befindet sich im Admin- oder Wartungsmodus. |
| Offline | Grau | Kein aktueller Verkehr. Aktionen sind deaktiviert, bis der Client wieder online ist. |
| Timed | Himmelblau | Eine zeitlich begrenzte Sitzung läuft mit einer Frist. |
Sitzungstimer
Wenn eine Sitzung aktiv ist, zeigt die Karte einen Zeitblock an:
- Startzeit.
- Endzeit (bei zeitlich begrenzten Sitzungen).
- Verbrauchte Minuten.
- Verbleibende Minuten mit Live-Countdown.
- Anfallende Kosten.
Identitätsdaten
Die Karte zeigt immer:
- MAC-Adresse.
- IP-Adresse.
- Client-Version (zum Beispiel "3.4.01").
- Angemeldeter Benutzer, falls vorhanden.
Aktionsleiste
Wenn der Client online ist, bietet eine Aktionsleiste unter den Identitätsdaten die verfügbaren Operationen an.
Sitzungssteuerung
| Schaltfläche | Sichtbar wenn | Verhalten |
|---|---|---|
| Anmelden | Status ist idle | Öffnet den Dialog Geräteanmeldung. Wählen Sie Minuten und Zahlungsmethode. Der Server sendet einen Login-Befehl mit den gewählten Werten. Die Sitzung startet auf dem Client. |
| Abmelden | Status ist online, timed, paused, busy oder payment | Wenn die Sitzung nachbezahlt ist, erfasst ein Zahlungsdialog Betrag und Zahlungsmethode. Eine Transaktion wird im Kassenbuch geschrieben. Der Server sendet einen Logout-Befehl. Die Sitzung wird auf dem Client beendet. |
Zeit Hinzufügen
Öffnet einen Minutenauswähler. Akzeptiert positive Werte (verlängern) oder negative Werte (abziehen). Die maximale Größe beträgt in beide Richtungen 10.000 Minuten. Funktioniert sowohl für vorausbezahlte als auch für nachbezahlte Sitzungen.
Wenn Sie in den Preiseinstellungen voreingestellte Minutwerte konfiguriert haben, zeigt die Karte zusätzlich eine Reihe von Preset-Schaltflächen. Tippen Sie auf ein Preset, um den Wert ohne Öffnen des Auswählers zu übernehmen.
Screenshot
Fordert über den Dateiübertragungsport einen Live-Screenshot vom Legacy-Client an. Der Ablauf ist:
- Der Server sendet einen Screenshot-Anforderungsbefehl.
- Der Client öffnet einen kurzlebigen TCP-Listener auf einem temporären Port.
- Der Server verbindet sich, sendet einen 9-Byte-Dateiübertragungs-Header und wartet.
- Der Client nimmt den Bildschirm auf, kodiert ihn als komprimiertes BMP und streamt ihn zurück.
- Der Server dekomprimiert das BMP und speichert es im Ordner
legacy_screenshotsunter Ihrem HandyCafe-Datenverzeichnis. - Der Screenshot-Viewer öffnet sich mit dem neuen Bild.
Wenn der Client nicht innerhalb des Timeouts antwortet (standardmäßig 30 Sekunden für die Verbindung, 20 Sekunden für die Daten), schlägt die Anfrage fehl und eine Fehlermeldung erscheint. Sie können sofort erneut versuchen.
Energieaktionen
| Aktion | Bestätigung | Wirkung |
|---|---|---|
| Abmelden (Windows) | Keine | Meldet den Windows-Benutzer am Client-Rechner ab. Die Windows-Sitzung endet, der Computer bleibt jedoch eingeschaltet. |
| Neustart | Ja | Sendet einen Neustartbefehl. Der Client-Rechner startet neu. |
| Herunterfahren | Ja | Sendet einen Herunterfahrbefehl. Der Client-Rechner schaltet sich aus. |
Neustart und Herunterfahren zeigen einen Bestätigungsdialog, um versehentliche Energieaktionen zu verhindern.
Nicht Unterstützte Funktionen
Legacy-Clients unterstützen nicht jede Funktion moderner HandyCafe-Clients. Wichtige Lücken:
- Keine Anpassungen während der Pause. Während die Sitzung pausiert ist, werden Zeitänderungen zwar in eine Warteschlange gestellt, der Client kann sie aber ignorieren. Setzen Sie die Sitzung zuerst fort, nehmen Sie die Änderung vor und pausieren Sie dann bei Bedarf erneut.
- Kein Admin-Modus per Serverbefehl. Der interne Admin-Status des Clients kann vom Server aus nicht umgeschaltet werden. Der Admin-Modus wird nur direkt am Client-Rechner gesteuert.
- Keine Lizenzregistrierung vom Server. Der Server spiegelt zwar die Lizenzbytes aus den Client-Frames, kann aber keine neue Lizenz an den Client senden. Registrieren Sie den Client lokal.
- Keine Member-Wallet-Integration für Sitzungen auf Legacy-Clients. Zahlungen werden als normale
transactions-Zeilen mittransaction_type=sessionsund der Client-MAC erfasst. Moderne Wallet-Abläufe gelten nicht. - Kein Remote-Desktop. Die Remote-Desktop-Funktion verwendet einen UDP-Streaming-Pfad, den es in Legacy-Clients nicht gibt.
- Kein Datei-Sync-Push. Sync Explorer sendet Dateien nur über das moderne Protokoll.
Für den vollen Funktionsumfang migrieren Sie möglichst zu modernen HandyCafe-Clients.
Offline-Verhalten
Wenn das Inaktivitäts-Timeout abläuft, wird die Karte ausgegraut, das Status-Badge grau und jede Aktionsschaltfläche deaktiviert. Der Client-Datensatz bleibt im Speicher, damit Historie, MAC, Hostname und zuletzt gesehene Daten erhalten bleiben. Wenn der Client wieder online kommt (neuer UDP-Ping oder TCP-Anmeldung), wird die Karte wieder aktiv und die Aktionen stehen erneut zur Verfügung.
Der Datensatz wird nicht automatisch entfernt. Um einen alten Client dauerhaft zu löschen, bearbeiten Sie ihn in der Admin-Datenbank oder löschen Sie ihn über das jeweilige Admin-Tool.
Tipps
- Lassen Sie das Inaktivitäts-Timeout bei 10 Sekunden, sofern Sie nicht wissen, dass Ihre Legacy-Clients langsamer Beacons senden. Ein kürzeres Timeout markiert gesunde Clients bei kurzen Netzwerkaussetzern fälschlicherweise als offline.
- Wenn ein Legacy-Client online erscheint, aber nicht auf Befehle reagiert, prüfen Sie die Protokollvariante in den Einstellungen. Ein Mismatch zwischen der Servervariante (STE vs. Standard) und dem Client-Build führt dazu, dass Befehle stillschweigend verworfen werden.
- Screenshots von Legacy-Clients sind komprimierte BMPs und damit größer als moderne PNG-Aufnahmen. Bewahren Sie den Ordner
legacy_screenshotsauf einem Laufwerk mit ausreichend freiem Speicherplatz auf, wenn Sie viele Aufnahmen machen. - Verwenden Sie Zeit hinzufügen mit Preset-Schaltflächen bei Schichtwechseln. Ein einzelner Tap verlängert eine Sitzung um einen vordefinierten Schritt und ist schneller als das manuelle Eintippen von Minuten.
- Führen Sie Legacy-Clients schrittweise ab. Migrieren Sie immer nur einen Stapel, prüfen Sie im Admin-Panel, ob die neuen Clients identisch funktionieren, und nehmen Sie erst dann die alten außer Betrieb.