Sharee Fleet
Vezetőelemzés

Adatforrás

Teltonika IO paraméterek, esemény-eco párosítás, sofőr-attribúció

A Vezetőelemzés adatai három forrásból állnak össze: a Teltonika GPS eszköz IO paramétereiből, a Traccar szerver alarm-detekciójából, és a Sharee belső sofőr-jármű hozzárendelési rekordjaiból. Ez az oldal a háttérben futó adatfolyam fontosabb részleteit dokumentálja -- főleg fejlesztőknek és haladó flottakezelőknek.

Teltonika IO paraméterek

A telematikai egység a következő IO mezőket küldi minden pozíciójelentésben (vagy esemény-driven módon):

IONévTartalomHatás a pontszámra
io253Green Driving Type1 = harsh accel, 2 = harsh brake, 3 = harsh corneringPontozott (1, 2) / kiegészítő (3)
io254Green Driving ValueG-erő × 0.01 (pl. érték 75 = 0.75 G)Súlyosság -- Green Driving Score
io243Green Driving DurationEsemény hossza ms-benMegjelenítés
io15Eco ScoreMultiplier 0.01 -- események száma távolságra normalizálvaEco Score elsődleges forrás
io258Eco Maximum acceleration8-byte X/Y/Z csomagEco részletek
io259Eco Average acceleration8-byte X/Y/Z csomagEco Score fallback ha nincs io15
io260Eco DurationEco mérési időszakNormalizálás
io36Motor RPMFordulatszámTrip-szintű kontextus
io82CAN Accelerator Pedal Position0--102 (0--1 decimális %)Eco részletek
io41OBD Throttle PositionOBD-II adatEco részletek
io911CAN Clutch Switch0/1Trip-szintű kontextus
io1331/1332Selected/Current GearSebességfokozatTrip-szintű kontextus
io37 / io24 / io81SpeedPrioritás-alapú sebességCsúcs- és átlagsebesség

A io258 és io259 8 bájtos csomagok három tengely (X/Y/Z) gyorsulását kódolják. A backend a hossztengely (X) értéket használja az Eco Score számításához, a többi tengely diagnosztikai kontextus.

Esemény-detekció (Traccar)

A Traccar szerver az IO csomagokból position.attributes.alarm mezőbe írja a vezetési eseményeket:

Alarm értékEsemény típusPontozás
hardAccelerationHirtelen gyorsítás1.5×
hardBrakingHirtelen fékezés1.0×
hardCorneringHirtelen kanyar-- (kiegészítő)

Esemény ↔ Eco párosítás (30 másodperces ablak)

A Teltonika eszköz az Eco mutatókat (io15, io258--260) nem szigorúan az események időpontjához kötve küldi -- külön pozíciójelentésekben érkeznek. A backend ezért minden harsh eseményhez ±30 másodperces időablakon belül keresi a legközelebbi Eco-pozíciót, és onnan veszi az Eco értékeket.

event.time = 14:32:18  →  search Eco position in [14:31:48, 14:32:48]
                       →  closest match: 14:32:21 → use io15 = 0.42

Ha nincs Eco-pozíció a 30 s ablakon belül, az esemény Eco mezője null marad. Ez nem rontja a Weighted Score-t, csak az adott esemény Eco-kontextusát.

Sofőr-attribúció

Egy esemény járműhöz van rendelve, de a flottában egy jármű több sofőrt is kiszolgálhat. A backend a következő prioritás szerint dönti el, melyik sofőr kapja az esemény "számláját":

1. VehicleAllocation

Először ellenőrzi, van-e érvényes VehicleAllocation rekord az esemény időpontjában (sofőr-jármű hozzárendelés from/to időszakkal). Ha igen, az allokáció sofőre kapja az eseményt.

2. DriverSignIn (fallback)

Ha nincs allocation, a DriverSignIn rekordok adják az attribúciót: az utolsó sign-in esemény járműhöz az adott időpont előtt -- amíg nincs sign-out -- a megfelelő sofőr. Ez fedi le a flexibilis vagy ad-hoc használatot.

3. Nincs hozzárendelés

Ha sem allocation, sem sign-in nincs, az esemény nem kerül sofőr-szintű elemzésbe (a flotta-szintű aggregátumokba viszont igen, mint "ismeretlen sofőr"). Ezt jelzi a dashboard "ismeretlen attribúció" figyelmeztetése.

Adatfolyam összefoglaló

Teltonika eszköz (IO 15 / 253-260)

Traccar szerver (alarm detection: hard*)

greenDriving.list endpoint
  ├─ szűrés alarm típusra
  ├─ ±30s eco párosítás (io15/259)
  └─ sofőr-attribúció (allocation → signIn)

driver-scoring.ts (5 párhuzamos pontszám)

Web UI: dashboard / individual / trips / comparison
Native: Sharee Driver app sofőri visszajelzés

API végpontok

A Web UI a következő greenDriving oRPC eljárásokra épül:

EndpointMit ad?
listNyers események listája (szűrhető vehicle, user, type, time)
getRoutesPozíciók térkép útvonalrajzhoz
getPositionEgy pozíció részletei (esemény-modal)
dashboardFlotta-szintű összegzés (5 perces cache)
driverScoresMinden sofőr 5 pontszáma
driverDetailEgy sofőr deep-dive + flotta-összevetés
driverTripsTrip-szintű lebontás
eventsTrendNapi esemény-aggregátum (line chart)
compareDrivers2--5 sofőr párhuzamos összehasonlítása

A dashboard végpont eredménye 5 percig cache-elt szervert oldali rétegben, így a flotta-nézet nem terheli minden lapozásnál a Traccar-t. A részletes nézetek (driverDetail, driverTrips) cache nélkül, élőben kérdeznek le.