Već dugi niz godina za svoje kupce pogonimo vlastitu platformu za GPS praćenje: vozila i uređaji javljaju svoj položaj našem tracking poslužitelju, kupci uživo vide svoj vozni park na karti, vode knjige vožnji, definiraju geozone i obavještavaju se o alarmima. Sučelje za to bilo je organski izrasla PHP aplikacija s vlastitim upravljanjem korisnicima, vlastitim izdavanjem računa i vlastitim izvještavanjem – paralelno sa svime ostalim što inače koristimo u tvrtki.
To smo sada promijenili. Praćenje je od sada modul u našem Odoo-u 19 Community i time dio istog sustava u kojem se vode i kupci, ugovori, računi i podrška. Za naše kupce usluge praćenja to znači: jedna prijava, jedno sučelje, a račun za praćenje nalazi se tamo gdje su i svi drugi računi.
Zašto smo praćenje prenijeli u Odoo
Dva odvojena sustava znače dvostruke matične podatke. Svaki je kupac postojao jednom u praćenju i jednom u ERP-u, svaku promjenu adrese trebalo je napraviti dvaput, a obračunski ciklus praćenja stvarao je dokumente koji su zatim ručno prelazili u računovodstvo.
Prelaskom u Odoo sada vrijedi jednostavno načelo: matični podaci u Odoo-u, masovni podaci izvan njega. Kupci, korisnici, trackeri, grupe, geozone, proizvodi i cijene nalaze se u Odoo-u i ondje su povezani s financijskim računovodstvom, portalom i upravljanjem pravima. Podaci o položaju – stvarni tok podataka uređaja, danonoćno – ostaju u zasebnoj pohrani pozicija. ERP baza podataka nije pravo mjesto za milijune GPS točaka, a i ne mora biti.
Tracking poslužitelj koji prihvaća uređaje prelaskom nije dotaknut. Upravo je to preinaku uopće učinilo realnom: sučelje je moglo nastati iznova bez diranja prijema podataka.
Što naši kupci sada imaju u portalu
Kupci usluge praćenja prijavljuju se u Odoo korisnički portal i ondje nalaze područje Praćenje. Tko koristi isključivo praćenje, nakon prijave odmah dolazi na kartu i ne vidi nikakve druge sadržaje portala.
Karta uživo
Karta prikazuje sva vlastita i odobrena vozila sa statusom (u pokretu, miruje, izvan mreže), brzinom, smjerom kretanja i razriješenom adresom. Pozicije stižu u stvarnom vremenu putem WebSocket veze s tracking poslužiteljem – jedna jedina veza za cijelu instalaciju, a ne po jedna za svaki otvoreni preglednik – i distribuiraju se filtrirano: svaki kupac dobiva samo vozila koja su njegova ili su mu odobrena. Vozila se između dviju poruka kreću glatko umjesto da skaču.
Kao podloge za odabir stoje OpenStreetMap, topografska karta, službena austrijska Basemap zajedno sa zračnim snimkom i crno-bijela karta; teren i 3D zgrade mogu se uključiti kao slojevi. Prikaz s kojim se karta otvara – vrsta karte, isječak, standardna grupa – Odoo pamti po korisniku.
Knjiga vožnji s poslovnim i privatnim vožnjama
Vožnje se prepoznaju na poslužitelju, a ne u pregledniku: vožnja se bilježi i kada nitko nema otvorenu kartu. Početak, završetak, polazna i odredišna adresa, stanje brojila, dionica i trajanje bilježe se za svaku vožnju.
Svaka se vožnja može razvrstati kao poslovna vožnja ili privatna vožnja – po vožnji, a ne po vozilu, jer isti automobil prijepodne vozi do kupca, a navečer kući, a to je razlikovanje u Austriji porezno relevantno. Pri početku vožnje na karti se odmah pojavljuje prozor za razvrstavanje; tko to učini kasnije, vožnju pronalazi u knjizi vožnji zajedno s poljem za bilješku. Vozači se prepoznaju putem iButton ključ-čipova ako je vozilo njima opremljeno.
Na raspolaganju su dva izvješća, oba kao PDF i Excel:
- Pojedinačna knjiga vožnji – vožnje jednog vozila u odabranom razdoblju s rutom, razvrstavanjem i bilješkom
- Knjiga vožnji voznog parka – jedan redak po vozilu s vremenom vožnje, dionicom, podjelom na poslovne i privatne kilometre i procijenjenom potrošnjom, uz zbrojeve po grupama i ukupne zbrojeve
Geozone i alarmi
Geozone se crtaju izravno na karti – kao krug, kvadrat ili slobodan poligon – ili se preuzimaju iz zajedničkih predložaka poput „Austrija“ ili „Beč“. Za svaku zonu i vozilo može se odrediti hoće li se alarmirati pri ulasku ili izlasku i kamo: putem SMS-a, e-pošte, webhooka ili kao poruka našem pozivnom centru.
Alarmi – promjena zone, brzina, paljenje, gubitak napona, hitni poziv, kretanje, izvan mreže – pojavljuju se kao zasebni zapisi u Odoo-u, s vremenom, pozicijom i statusom obrade.
Pretraga: Koje je vozilo bilo ovdje?
Stigne kaznena obavijest, na njoj je mjesto mjerenja – ali koje je vozilo bilo u pitanju? Pretraga u toku rute odgovara upravo na to: odaberite točku na karti ili adresu, ograničite radijus i razdoblje, a praćenje prikazuje koja su vozila ondje bila. Mjesta mjerenja brzine iz OpenStreetMapa za to su već na karti kao sloj.
Upravljanje od strane samog kupca
Ono što se ranije moralo delegirati nama, kupci sada obavljaju u portalu:
- Aktivirati tracker – utipkati IMEI s naljepnice uređaja, odabrati grupu ili izraditi novu, gotovo
- Trackeri i grupe – nazivi, simboli, dodjela grupi, točenja goriva s količinom i cijenom, izvješća po vozilu
- Ovlasti – odobriti vozila drugim korisnicima ili tvrtkama, s pravom čitanja ili pisanja i mogućnošću skrivanja pojedinih polja poput adrese ili stanja brojila
- Geozone – crtati, uređivati, odrediti alarmiranje
- iButtoni – ključ-čipovima dodijeliti imena vozača
Što se interno promijenilo za nas
U Odoo backendu postoji područje Praćenje s kartom uživo, upravljanjem trackerima, alarmima, vožnjama, matičnim podacima (grupe, geozone, vrste uređaja, proizvođači) i obračunom.
Upravljanje trackerima. Svaki uređaj ima IMEI, SIM broj, vrstu uređaja, ulaze i izlaze (paljenje, blokada motora, grijanje u mirovanju i druge), kalibraciju, korekciju brojila, prag izvan mreže i parametre knjige vožnji. Povijest chattera u Odoo-u bilježi svaku promjenu.
SMS uređajima. Trackeri se konfiguriraju putem SMS-a. Slanje sada ide iz Odoo-a, bilježi se bez praznina i zaštićeno je od pogrešnog rukovanja: gornja granica po postupku slanja sprječava da jedan klik pokrene stotine poruka koje se naplaćuju, a nepotpuni telefonski brojevi uopće se ne predaju.
Pozivni centar. Prijave krađe i nezgoda pojavljuju se kao predmeti s podacima o vozilu, kontaktnim podacima vlasnika i vođenim tijekom: Vlasnik dostupan? Lažni alarm? Daljnje mjere? Svaki se korak bilježi, a nadležni djelatnici obavještavaju se putem push obavijesti.
Obračun. Obračunski ciklus uzima u obzir sve trackere kojima je dostignut sljedeći termin obračuna i iz toga u Odoo-u stvara nacrte računa – s cijenom za krajnjeg kupca ili partnerskom cijenom. Odobrenje namjerno ostaje kod računovodstva: ciklus ništa ne knjiži, on priprema. Interval obračuna, proizvod i sljedeći termin vezani su uz tracker; nakon ciklusa retci računa nalaze se izravno na uređaju.
Arhitektura iza toga
GPS uređaji
│
▼
Tracking poslužitelj ──► Pohrana pozicija Odoo 19 Community
(nepromijenjen) danas: postojeća ├─ Matični podaci (trackeri, kupci, geozone)
baza podataka ├─ Korisnički portal /my/ortung
kasnije: PostGIS ├─ Backend Praćenje / …
▲ ├─ Obračun (nacrti računa)
└── samo čitanje ──┘
Pristup pozicijama odvija se isključivo putem zamjenjivog sučelja. Danas Odoo čita iz postojeće baze podataka praćenja koju tracking poslužitelj nepromijenjeno i dalje puni. Prelazak na vlastiti PostGIS poslužitelj time je promjena konfiguracije, a ne preinaka – prostorne analize poput provjera geozona tada izračunava sam PostGIS. Za razvoj i obuku postoji dodatno demo pohrana sa sintetičkim podacima uz koju modul radi i bez tracking poslužitelja.
Adrese se razrješavaju putem vlastitog geokodera i međupohranjuju u Odoo-u, zaokružene na otprilike jedanaest metara: stajaće vozilo ne razrješava se iznova pri svakom GPS šumu, a karta ne ovisi o vremenu odgovora vanjske usluge.
Kako je protekao prelazak
Nismo prešli odjednom, nego korak po korak prema strangler uzorku: stari je sustav ostao u pogonu, reverse proxy odlučivao je po putanji tko odgovara, a nova je karta isprva za pilot-skupinu radila paralelno uz staru.
Preuzimanje matičnih podataka pritom je bilo najosjetljiviji dio. Migracijska skripta čita kupce, korisnike, trackere, grupe i geozone iz stare aplikacije i izrađuje ih u Odoo-u – ponovljivo kao delta-izvođenje, sa starom oznakom kao ključem. Budući da su mnogi kupci usluge praćenja u Odoo-u odavno postojali kao partneri, čarobnjak predlaže povezivanja koja se moraju pojedinačno potvrditi: pogrešno povezana tvrtka vidjela bi tuđa vozila, a to je skuplje od duplikata.
Što namjerno nije preneseno: dvostruka baza kôda za stolna računala i mobilne uređaje (Odoo frontend je responzivan), vlastita tablica prijevoda, vlastito upravljanje pravima i sesijama te desetak izvješća koja u praksi više nitko nije otvarao.
Što to znači za vas kao kupca
Ako ste naš kupac usluge praćenja, svoj ste pristup portalu već dobili ili ćete ga dobiti u sljedećih nekoliko tjedana. Vaša vozila, grupe, geozone i ovlasti su preuzeti; knjiga vožnji nesmetano nastavlja raditi.
U jednom portalu pronalazite svoje praćenje, svoje račune i svoje zahtjeve za podršku. A ako želite više od praćenja – helpdesk, ugovore o održavanju, obračun projekata – riječ je o istom sustavu.
Rado odgovaramo na pitanja o prelasku. A tko za svoju tvrtku traži praćenje vozila povezano s ERP-om, a ne postavljeno pokraj njega: obratite nam se.