Protocols: Unterschied zwischen den Versionen

Aus ARTECO Wiki
Zur Navigation springen Zur Suche springen
Zeile 1: Zeile 1:
 +
Auf dieser Seite wird die Kommunikation zwischen den Systems und dem Backend beschrieben.
 +
 +
== Client ==
 +
 
===ecoTRACK - Protokollbeschreibung===
 
===ecoTRACK - Protokollbeschreibung===
  
Zeile 212: Zeile 216:
 
     3  Speed (momentane Geschwindigkeit in km/h)
 
     3  Speed (momentane Geschwindigkeit in km/h)
 
     4  Privat (1=ja, 0=nein)
 
     4  Privat (1=ja, 0=nein)
 +
 +
== Server ==
 +
 +
Nachrichten vom Server werden jeweils mit einem \n\r abgeschlossen.

Version vom 30. April 2020, 13:24 Uhr

Auf dieser Seite wird die Kommunikation zwischen den Systems und dem Backend beschrieben.

Client

ecoTRACK - Protokollbeschreibung

PG: PaGe (page_id - block_id)
ST: STatus (siehe: Status-Nummern)
TS: TimeStamp (ddmmyyhhmmss)
LO: LOngitude (World X)
LA: LAtitude (World Y)
DN: Drive Number
CS: CourSe (0 bis 360. 0: Norden, im Uhrzeigersinn)
SP: SPeed (Km/h)
MX: MaX Speed (km/h) - seit Beginn der aktuellen Fahrt
KM: KiloMeter (Strecke aktuelle Fahrt in km, reelle Zahl mit bis zu zwei Nachkommastellen)
IO: InputOutput (accu, ana1, ana2, alert, dig1, dig2, pwr, ign, xout, yout, zout, relay)
GQ: Gsm Quality (1 - 32, je höher, desto besser)
SQ: Satellite Quality (satcnt, accuracy)
DV: DriVer (ID-Chip: dezimal, RFID: hexadezimal oder Garmin Seriennummer: dezimal mit einem "G" davor)
PV: PriVate 
    0: nicht privat, 
    1: privat, 
    2: Bereitschaft, 
    wenn nicht gesendet: privat
CK: ChecKsum (von PG bis PV)
IO-Werte für z.B. Power (pwr) bzw. Ignition (ign):
    8V = 250 / 9,6V = 300 / 13V = 407 (gut für PKW) / 21V = 655 (gut für LKW)

Beispiel als ASCII:

PG:1338-1137 ST:020 TS:031109221826 LO:13.523052 LA:52.553085 DN:48 CS:000 SP:000 MX:066 KM:1.6 IO:430,0,0,0,0,0,384,0,553,520,415 GQ:24 SQ:08,1.28 DV: PV:0 CK:14

Beispiel als JSON:

{"PG":"1338-1137","ST":"020","TS":"031109221826","LO":"13.523052","LA":"52.553085","DN":"48","CS":"000","SP":"000","MX":"066","KM":"1.6","IO":"430,0,0,0,0,0,384,0,553,520,415","GQ":"24","SQ":"08,1.28","DV":"","PV":"0","CK":"14"}

G-Sensor - Beschreibung

PG: PaGe (page_id - block_id)
ST: STatus (siehe: Status-Nummern)
TS: TimeStamp (ddmmyyhhmmss)
LO: LOngitude (World X)
LA: LAtitude (World Y)
SP: SPeed
DN: Drive Number
PV: PriVate
UD: User Data
CK: ChecKsum

Beispiel (ohne Zeilenumbruch):

PG:1301-1327 ST:200 TS:291009173909 LO:13.522683 LA:52.553020 SP:042 DN:1 PV:0
UD:[GALERT_X>499_Y<514_Z<510] CK:15


Trailer - Beschreibung

PG: PaGe (page_id - block_id)
ST: STatus (siehe: Status-Nummern)
TS: TimeStamp (ddmmyyhhmmss)
LO: LOngitude (World X)
LA: LAtitude (World Y)
SP: SPeed
DN: Drive Number
PV: PriVate
UD: User Data
CK: ChecKsum

Beispiel (ohne Zeilenumbruch):

PG:1296-1310 ST:209 TS:291009173530 LO:13.522773 LA:52.553040 SP:042 DN:1 PV:0
UD:[TRAILER_0182721B0C000040] CK:11


MAE - Beschreibung

PG: PaGe (page_id - block_id)
ST: STatus (siehe: Status-Nummern)
TS: TimeStamp (ddmmyyhhmmss)
LO: LOngitude (World X)
LA: LAtitude (World Y)
SP: SPeed
DN: Drive Number
PV: PriVate
UD: User Data
CK: ChecKsum

Beispiel (ohne Zeilenumbruch):

PG:1010-37 ST:210 TS:021109153559 LO:13.522632 LA:52.552959 SP:042 DN:4 PV:0
UD:[MAE,811,159107228,159107228,0] CK:70
UD:[MAE,<status>,<driverId>,<chipId>,<privat>]

Garmin

Driver Status
--------------------------------------------
SN:GARMIN_SERIAL_NUMBER ST:STATUS_NUMBER  
STATUS_NUMBER vom Benutzer im Garmin ausgewählt
STATUS_NUMBERS
1 => Ohne Ladung (frei)
2 => Teilweise beladen
3 => Beladen oder besetzt
4 => Achtung (Panne/Unfall)
5 => Stillstand/Stau
6 => Privatfahrt
7 => Dienstfahrt
8 => Pause


Driver ID
--------------------------------------------
SN:GARMIN_SERIAL_NUMBER TX:DRIVER_NAME
DRIVER_NAME Freitext vom Benutzer definiert


Status - Beschreibung

PG: PaGe (page_id - block_id)
ST: STatus (siehe: Status-Nummern)
TS: TimeStamp (ddmmyyhhmmss)
LO: LOngitude (World X)
LA: LAtitude (World Y)
SP: SPeed
DN: Drive Number
PV: PriVate
UD: User Data (alle folgenden Parameter stehen mit "|" statt " " getrennt hinter UD: siehe Beispiel)
 
SN: Serial Number
SV: Software Version
ST: System Typ [ALL|STATION|SINON[TABORA|UFO|VARUNA]
SM: System Mode [NORMAL|LIVE]
GS: GSM Infos
GP: GPS Infos
RT: Run Time (Days)
SS: System Starts
BL: BootLoader (0=alt/1=neu)
DN: Drive Number
RC: Reset Counter (Anzahl Modem-Starts seit Boot, ab r1678)
PV: PriVate

CK: ChecKsum

Beispiel (ohne Zeilenumbruch):

PG:1003-13 ST:211 TS:031109132202 LO:13.522688 LA:52.552990 SP:042 DN:4 PV:0
UD:SN:01E1AF1B0C000068|SV:2.10|ST:ALL|SM:NORMAL|GS:E-Plus(21)|GP:8(1.2)|RT:0.004|SS:2|BL:1|DN:4|RC:1|PV:0 CK:96

Variable - Beschreibung

PG: PaGe (page_id - block_id)
ST: STatus (siehe: Status-Nummern)
TS: TimeStamp (ddmmyyhhmmss)
LO: LOngitude (World X)
LA: LAtitude (World Y)
SP: SPeed
DN: Drive Number
PV: PriVate
UD: User Data (alle folgenden Parameter stehen mit "_" statt " " getrennt hinter UD: siehe Beispiel)
 
GPRS: Konfiguration der GSM Provider-Zugangsdaten (siehe: Zugangsdaten)
PI: Position Interval (siehe: Position Interval)
HB: HeartBeat (siehe: Heartbeat)
MC: Move Check (siehe: Move Check)
PC: Power Check (siehe: Power Check)
IC: Ignition Check (siehe: Ignition Check)
PS: Power Save (siehe: Power Save)
SS: Soft Start (siehe: Soft Start)
ROAM: Roaming (siehe: Roaming)
GR: GSM Reset (siehe: GSM Reset)
GE: GSM Escape (siehe: GSM Escape)
GT: GPRS Timeout (siehe: GPRS Timeout)
DI: Device Id (siehe: Hardware-Erweiterungen)

CK: ChecKsum

Beispiel (ohne Zeilenumbruch)

PG:3586-02745 ST:223 TS:250418083450 LO:13.484272 LA:52.566082 SP:051 DN:4250 PV:0
UD:GPRS:m2m,sim,m2m-net2.sa.t-mobile_PI:60_HB:1440_MC:50_PC:200_IC:0_PS:5_SS:0_ROAM:0_GR:24_GE:0_GT:5_DI:20,30,0,0_OK CK:80

Variable2 - Beschreibung

PG: PaGe (page_id - block_id)
ST: STatus (siehe: Status-Nummern)
TS: TimeStamp (ddmmyyhhmmss)
LO: LOngitude (World X)
LA: LAtitude (World Y)
SP: SPeed
DN: Drive Number
PV: PriVate
UD: User Data (alle folgenden Parameter stehen mit "_" statt " " getrennt hinter UD: siehe Beispiel)
 
BT: (B)lue(t)ooth aktiv, Bluetooth Pairing MAC-Addresse (siehe: (B)lue(t)ooth)
CC: (C)harge(C)ontrol Intervalle (siehe:  (C)harge(I)nterval)
GPSCHK: GPS-Check Intervall (siehe:  GPSCHECK)
EC21: EC21 GPS Startup Parameter (siehe:  GPSINIT)

CK: ChecKsum

Beispiel (ohne Zeilenumbruch)

PG:3586-02745 ST:223 TS:250418083450 LO:13.484272 LA:52.566082 SP:051 DN:4250 PV:0
UD:BT:1,00AB1D86DDEF_CC:60,300_GPSCHK:120,60_EC21:50,255

Liveortung - Beschreibung

Die Liveortungs-Nachrichten nutzen ein komprimiertes Format zur Datenübertragung. Der Datensatz wird durch ein Ausrufezeichen (ASCII 0x21) eingeleitet, gefolgt von fünf Datenfeldern, die jeweils durch Pipes ("|", ASCII 0x7c) getrennt werden. Abgeschlossen wird die Nachricht von einem Zeilenumbruch "\r\n".

Beispiel:

!13.522573|52.552879|12|48|0

Legende:

 Feld   Inhalt
-------------------------------------------------------------
    !   markiert den Beginn
    0   Longitude (Länge)
    1   Latitude (Breite)
    2   Course (Richtung in °, 0=Norden, 90=Osten, 180=Süden)
    3   Speed (momentane Geschwindigkeit in km/h)
    4   Privat (1=ja, 0=nein)

Server

Nachrichten vom Server werden jeweils mit einem \n\r abgeschlossen.