OKAI IoT-Integration
Levy Fleets bietet umfassende Unterstuetzung fuer OKAI ZK-Serie IoT-Geraete und implementiert 100% des @Track Air Interface Protocol v80.56. Diese Anleitung behandelt die vollstaendige Integration, einschliesslich unterstuetzter Befehle, Telemetrieverarbeitung und Fehlerbehebung.
Protokollversion
Levy Fleets implementiert das ZK-Serie @Track Air Interface Protocol Version 80.56 und bietet vollstaendige Abdeckung aller 77 dokumentierten Befehle.
Ueberblick
OKAI IoT-Geraete kommunizieren mit Levy Fleets ueber einen sicheren API-Endpunkt, der Telemetriedaten, Standortberichte und Fahrzeugsteuerbefehle verarbeitet. Die Integration unterstuetzt:
- Echtzeit-GPS-Tracking mit Standortverlauf
- Batterieueberwachung einschliesslich Ladestatus
- Sperr-/Entsperrsteuerung mit Statusbestaetigung
- Geschwindigkeitsbegrenzung fuer Zonendurchsetzung
- Alarm- und Warnungsbehandlung fuer Sicherheitsereignisse
- Diagnosedaten fuer Wartung und Fehlerbehebung
Geraetekonfiguration
Servereinstellungen
Konfigurieren Sie Ihr OKAI-Geraet fuer die Kommunikation mit Levy Fleets mit diesen Einstellungen:
| Einstellung | Wert |
|---|---|
| Server-IP/Domain | Ihr Levy Fleets IoT-Endpunkt |
| Port | Wie bei der Einrichtung angegeben |
| Protokoll | HTTPS/TCP |
Authentifizierung
OKAI-Geraete authentifizieren sich per API-Schluessel. Stellen Sie sicher, dass Ihre IoT-Geraete mit dem korrekten API-Schluessel im x-api-key-Header konfiguriert sind.
API-Schluessel-Sicherheit
Halten Sie Ihren IoT-API-Schluessel vertraulich. Dieser Schluessel authentifiziert alle Geraet-zu-Server-Kommunikation. Kontaktieren Sie den Support, wenn Sie Ihren API-Schluessel rotieren muessen.
Geraeteidentifikation
Geraete werden durch ihre IMEI-Nummer identifiziert. Wenn ein Geraet eine Verbindung herstellt:
- Die IMEI wird aus der Nachricht extrahiert
- Das System sucht das mit dieser IMEI verknuepfte Fahrzeug
- Telemetrie wird dem korrekten Fahrzeug zugeordnet
- Wenn kein Fahrzeug gefunden wird, wird die Nachricht als "nicht zugeordnet" protokolliert
Unterstuetzte Befehle
Levy Fleets implementiert vollstaendige Abdeckung des OKAI-Protokolls. Befehle sind in funktionale Kategorien organisiert:
Standort & Telemetrie
| Befehl | Code | Beschreibung |
|---|---|---|
| Festes Berichtsintervall | GTFRI | Periodische GPS-Standortberichte |
| Ereignis-Berichtsintervall | GTERI | Ereignisgesteuerte Standortberichte |
| Echtzeit-Vorgang | GTRTO | On-Demand-Standortabfrage-Antwort |
| Echtzeit-Standort | GTRTL | Sofortige Standortantwort |
Status & Informationen
| Befehl | Code | Beschreibung |
|---|---|---|
| Statusbericht | GTSTT | Aktueller Fahrzeugstatus |
| Geraeteinformationen | GTINF | Hardware-/Softwareinformationen |
| Versionsinformationen | GTVER | Firmware-Versionen |
| Zell-ID/Netzwerk | GTCID | Mobilfunknetzwerk-Informationen |
| Lebendstatus | GTALI | Geraete-Heartbeat/Lebendpruefung |
| Abfrageantwort | GTQRY | Konfigurationsabfrage-Antwort |
| Seriennummer | GTQSN | Geraete-Seriennummer-Abfrage |
Batteriemanagement
| Befehl | Code | Beschreibung |
|---|---|---|
| Batteriestatus | GTBAT | Hauptbatteriestand und Spannung |
| Batterie niedrig | GTBPL | Niedrige Batterie-Warnung |
| Batteriemanager-Info | GTBMI | Detaillierte Batteriemanagement-Daten |
ECU (Elektronische Steuereinheit)
| Befehl | Code | Beschreibung |
|---|---|---|
| ECU-Status | GTECU | ECU-Betriebsstatus |
| ECU-Zustandsaenderung | GTECS | ECU-Zustandsuebergangs-Ereignisse |
| ECU-Fehlercode | GTCFU | ECU-Fehler-/Stoerungscodes |
| ECU-Abschaltung | GTCSD | Abnormales ECU-Abschalt-Ereignis |
| ECU-Firmware verloren | GTCFL | ECU-Firmware-Fehler |
Sperrvorgaenge
| Befehl | Code | Beschreibung |
|---|---|---|
| Sperrstatus | GTLCK | Aktueller Sperrzustand |
| Sperrzustandsaenderung | GTLKS | Sperrzustandsuebergang |
| Sperre erfolgreich | GTLOC | Sperrbefehl bestaetigt |
| Sperre fehlgeschlagen | GTLOF | Sperrbefehl fehlgeschlagen |
| Entsperrung erfolgreich | GTULS | Entsperrbefehl bestaetigt |
| Entsperrung fehlgeschlagen | GTULF | Entsperrbefehl fehlgeschlagen |
| Sperranfrage | GTLOR | ECU-Sperranfrage |
| Mechanische Sperre | GTMLS | Aenderung des mechanischen Sperrstatus |
Bewegung & Alarme
| Befehl | Code | Beschreibung |
|---|---|---|
| Bewegungserkennung | GTJDR | Stoerung/Bewegung erkannt |
| Bewegungsstart | GTJDS | Bewegungserkennung ausgeloest |
| Alarm | GTALM | Allgemeines Alarm-Ereignis |
| SOS-Alarm | GTSOS | Notfall-/SOS-Warnung |
| Umkippen | GTBOV | Scooter umgekippt |
| Wiederherstellung | GTBRN | Von Umkippen erholt |
| Alarmliste | GTALS | Liste aktiver Alarme |
Geschwindigkeit & Geofencing
| Befehl | Code | Beschreibung |
|---|---|---|
| Gasgriff-Status | GTSPD | Geschwindigkeit-/Gasgriffzustand |
| Geschwindigkeitsalarm | GTSPA | Geschwindigkeitslimit ueberschritten |
| Geofence-Ereignis | GTGEO | Allgemeiner Geofence-Ausloeser |
| Geofence-Eintritt | GTGEI | Geofence-Zone betreten |
| Geofence-Austritt | GTGEX | Geofence-Zone verlassen |
System & Netzwerk
| Befehl | Code | Beschreibung |
|---|---|---|
| Heartbeat | GTHBD | Keep-Alive-Signal |
| Diagnosebericht | GTDGN | Geraetediagnose |
| Fehlerbericht | GTERR | Fehlerinformationen |
| Netzwerkverbindung | GTNCN | Neue Serververbindung |
| Watchdog-Neustart | GTDOG | Geraete-Neustart durch Watchdog |
Stromereignisse
| Befehl | Code | Beschreibung |
|---|---|---|
| Einschalten | GTPNA | Fahrzeug eingeschaltet |
| Einschalten (Fest) | GTPNL | Einschalten mit festem Bericht |
| Ausschalten | GTPFA | Fahrzeug ausgeschaltet |
| Ladestart | GTSCE | Batterieladung gestartet |
| Ladestopp | GTPCE | Batterieladung gestoppt |
| Backup-Ladestart | GTBTC | Backup-Batterieladung |
| Backup-Ladestopp | GTSTC | Backup-Batterieladung abgeschlossen |
| Hauptstrom | GTEPN | Hauptstromversorgungsereignis |
| Backup-Strom | GTEPF | Backup-Stromversorgungsereignis |
Konfiguration
| Befehl | Code | Beschreibung |
|---|---|---|
| Alle Konfigurationen | GTALC | Vollstaendige Geraetekonfiguration |
| GPS-Konfiguration | GTCGP | GPS-Einstellungen |
| CAN-Version | GTCVR | CAN-Bus-Version |
| CAN-Version II | GTCVI | Erweiterte CAN-Version |
| CAN-Transparent | GTCAT | CAN-Transparent-Befehl |
NFC & Service
| Befehl | Code | Beschreibung |
|---|---|---|
| NFC-Ereignis | GTNFC | NFC-Karten-/Tag-Interaktion |
| Serviceanfrage | GTRSS | Anfrage zum Stoppen des Dienstes |
| Reservierung | GTRES | Reservierungsereignis |
| Kabelloses Laden | GTWLC | Status kabelloses Laden |
| Helmbox | GTHLM | Helmbox-Entsperr-Ereignis |
Bindung & Bluetooth
| Befehl | Code | Beschreibung |
|---|---|---|
| Bindungsinformationen | GTBND | Geraetebindungsbericht |
| Beacon-Informationen | GTBEI | Bluetooth-Beacon-Daten |
Datenerfassung
| Befehl | Code | Beschreibung |
|---|---|---|
| Bewegungsdaten | GTMDR | Bewegungs-/Fortbewegungsdaten |
| Beschleunigungsdaten | GTADR | Beschleunigungssensor-Messwerte |
Telemetrieverarbeitung
Standortberichte
Wenn das Geraet einen Standortbericht sendet (GTFRI, GTERI oder GTRTO), fuehrt Levy Fleets folgendes aus:
- Parsen der GPS-Koordinaten (Breitengrad, Laengengrad)
- Extrahieren von Geschwindigkeit, Richtung und Hoehe
- Aktualisierung der aktuellen Position des Fahrzeugs
- Falls eine aktive Fahrt existiert, Speicherung des Standorts im Fahrtverlauf
- Ausloesen der Zonendurchsetzung, wenn sich die Koordinaten geaendert haben
Batterie-Updates
Batteriestatus-Nachrichten beinhalten:
- Batteriestand - Prozentsatz (0-100%)
- Batteriespannung - Tatsaechlicher Spannungswert
- Ladestatus - Ob das Fahrzeug laedt
- IoT-Batterie - Backup-/IoT-Modul-Batterie (falls separat)
Das System verwendet den Batteriestand, um:
- Die Fahrzeugverfuegbarkeit zu aktualisieren (niedrige Batterie = nicht verfuegbar)
- Fahrzeuge im Dashboard nach Batteriestatus zu filtern
- Warnungen bei niedriger Batterie auszuloesen
Sperrstatus
Sperrzustandsaenderungen aktualisieren den Fahrzeugdatensatz:
| Ereignis | Fahrzeugstatus |
|---|---|
GTLOC (Sperre erfolgreich) | lock_status: 'locked' |
GTULS (Entsperrung erfolgreich) | lock_status: 'unlocked' |
GTLOF (Sperre fehlgeschlagen) | Status unveraendert, Fehler protokolliert |
GTULF (Entsperrung fehlgeschlagen) | Status unveraendert, Fehler protokolliert |
Zonendurchsetzung
Nach der Verarbeitung von Standort-Updates waehrend einer aktiven Fahrt:
- Die Koordinaten des Fahrzeugs werden gegen alle Zonen geprueft
- Wenn das Fahrzeug eine Geschwindigkeitsbegrenzungszone betritt, wird ein Gasgriffbefehl gesendet
- Wenn das Fahrzeug eine Verbotszone betritt, wird der Gasgriff deaktiviert
- Wenn das Fahrzeug das Servicegebiet verlaesst, wird eine Warnung ausgeloest
- Fahrtstatistiken werden neu berechnet
Fahrzeugidentitaetsaufloesung
Die OKAI-Integration verwendet intelligentes Caching fuer Fahrzeugabfragen:
Abfrageprozess
- Cache pruefen - Zuerst im Fahrzeugidentitaets-Cache nach IMEI suchen
- Cache-Treffer - Gecachte Fahrzeug-UUID und -Nummer zurueckgeben
- Cache-Fehler - Datenbank nach Fahrzeug mit passender
iot_imeiabfragen - Im Cache speichern - Ergebnis fuer 1 Stunde cachen
- Identitaet zurueckgeben - Fahrzeug-UUID fuer Telemetrie-Zuordnung bereitstellen
Nicht zugeordnete Geraete
Wenn kein Fahrzeug fuer eine IMEI gefunden wird:
- Die Nachricht wird trotzdem fuer die Protokollierung verarbeitet
- Das Geraet wird in der Tabelle "nicht zugeordnete Geraete" erfasst
- Betreiber koennen nicht zugeordnete Geraete im Dashboard anzeigen
- Sobald das Geraet registriert ist, werden zukuenftige Nachrichten korrekt zugeordnet
Aktive Fahrterkennung
Fuer jede eingehende Nachricht prueft das System auf aktive Fahrten:
- Abfrage von Fahrten mit Status
activeoderpaused - Filtern nach
vehicle_uuid, die dem identifizierten Fahrzeug entspricht - Falls gefunden, Telemetrie mit der Fahrt verknuepfen
- Standortdaten werden dem Fahrtverlauf hinzugefuegt
- Fahrtstatistiken (Strecke, Dauer) werden aktualisiert
Legacy-Fahrt-Unterstuetzung
Fuer Rueckwaertskompatibilitaet mit aelteren Fahrtdatensaetzen:
- Wenn keine Fahrt per UUID gefunden wird, Suche nach
vehicle_number - Falls eine Legacy-Fahrt gefunden wird, Kennungen normalisieren
- Das Feld
vehicle_uuidfuer zukuenftige Abfragen nachfuellen
Befehle an Geraete senden
IoT-Passwort
Befehle an OKAI-Geraete erfordern das korrekte Passwort. Stellen Sie dies ein unter:
Einstellungen > Fahrzeuge > IoT-Passwoerter > Okai
Standard-Passwort: zk200
Verfuegbare Befehle
Von der Fahrzeugdetailseite koennen Sie senden:
| Befehl | Aktion |
|---|---|
| Sperren | Radsperre aktivieren, Gasgriff deaktivieren |
| Entsperren | Radsperre loesen, Gasgriff aktivieren |
| Ton | Warnton am Fahrzeug abspielen |
| Orten | Lichter blinken lassen, um Fahrzeug zu finden |
Befehlsablauf
- Betreiber klickt auf Befehlsschaltflaeche im Dashboard
- Befehl wird fuer das Geraet in die Warteschlange gestellt
- Geraet empfaengt Befehl beim naechsten Heartbeat (oder sofort, wenn online)
- Geraet fuehrt Befehl aus und sendet Bestaetigung
- Dashboard aktualisiert sich mit neuem Status
Befehlszustellung
Befehle werden innerhalb von Sekunden an Online-Geraete zugestellt. Wenn ein Geraet offline ist, werden Befehle zugestellt, wenn es sich wieder verbindet.
Fehlerbehebung
Geraet meldet keinen Standort
Symptome: Fahrzeug zeigt keinen Standort oder veraltete Standortdaten
Loesungen:
- Geraetestrom pruefen - sicherstellen, dass die Batterie geladen ist
- GPS-Antenne ueberpruefen - muss freie Sicht zum Himmel haben
- Mobilfunkverbindung pruefen - Geraet benoetigt Netzwerkzugang
- Geraetekonfiguration ueberpruefen - Servereinstellungen verifizieren
- Auf GPS-Fix pruefen - neue Installationen benoetigen moeglicherweise 5-10 Minuten
Sperr-/Entsperrbefehle funktionieren nicht
Symptome: Befehle gesendet, aber Fahrzeug reagiert nicht
Loesungen:
- IoT-Passwort in den Einstellungen ueberpruefen
- Bestaetigen, dass Geraet online ist (Zeitstempel der letzten Verbindung pruefen)
- Auf ECU-Fehler in der Telemetrie pruefen
- Ueberpruefen, ob Fahrzeug ausreichend Batterie hat
- Fahrzeug aus- und wieder einschalten
Batterie aktualisiert sich nicht
Symptome: Batteriestand bleibt auf gleichem Wert
Loesungen:
- Berichtsintervall-Konfiguration pruefen
- Ueberpruefen, ob Geraet tatsaechlich berichtet (letzte Verbindung pruefen)
- Einige Geraete berichten Batterie nur bei bestimmten Ereignissen
- Telemetrieprotokolle auf GTBAT-Nachrichten ueberpruefen
Geofence loest nicht aus
Symptome: Fahrzeug betritt Zone, aber keine Durchsetzung erfolgt
Loesungen:
- Ueberpruefen, ob Zone korrekt konfiguriert und aktiv ist
- Pruefen, ob Zonentyp Durchsetzung unterstuetzt
- Bestaetigen, dass Fahrt aktiv ist (Zonendurchsetzung gilt nur waehrend Fahrten)
- Standortgenauigkeit ueberpruefen - GPS kann ungenau sein
- Zonengrenzen auf Luecken pruefen
Geraet wird als nicht zugeordnet angezeigt
Symptome: Geraet berichtet, erscheint aber in der Liste der nicht zugeordneten Geraete
Loesungen:
- Geraet im Bereich IoT-Geraete registrieren
- Ueberpruefen, ob IMEI exakt uebereinstimmt (keine Leerzeichen/Bindestriche)
- Geraet mit einem Fahrzeug verknuepfen
- Cache loeschen, falls kuerzlich hinzugefuegt (Cache aktualisiert stuendlich)
Datenspeicherung
Telemetrietabelle
Alle OKAI-Nachrichten werden in der Tabelle vehicle_telemetry gespeichert mit:
vehicle_uuid- Zugeordnetes Fahrzeugimei- Geraetekennungraw_payload- Vollstaendige Nachrichtendaten als JSONmessage_type- Befehlstyp (z.B. "GTFRI")timestamp- Nachrichten-Zeitstempelbattery_level,speed,latitude,longitude- Extrahierte Werte
Aufbewahrung
Telemetriedaten werden gemaess der Datenaufbewahrungsrichtlinie Ihres Plans aufbewahrt. Kontaktieren Sie den Support fuer Informationen ueber erweiterte Aufbewahrungsoptionen.
API-Referenz
Endpunkt
POST /api/iot/okai
Header
x-api-key: your-iot-api-key
Content-Type: application/json
Anfragebody
{
"imei": "867648045123456",
"message": "+RESP:GTFRI,...",
"timestamp": "2025-12-25T12:00:00Z"
}
Antwort
{
"success": true,
"imei": "867648045123456",
"messageType": "+RESP",
"command": "GTFRI",
"processed": true
}
Health Check
GET /api/iot/okai
Gibt den Servicestatus und eine Liste der unterstuetzten Befehle zurueck.
Technischer Support
Bei OKAI-Integrationsproblemen kontaktieren Sie support@levyelectric.com mit:
- Geraete-IMEI
- Zeitstempel des Problems
- Beschreibung des erwarteten vs. tatsaechlichen Verhaltens
- Alle Fehlermeldungen aus dem Dashboard