Веќе многу години за нашите клиенти работиме сопствена платформа за GPS-следење: возилата и уредите ја пријавуваат својата позиција до нашиот сервер за следење, клиентите го гледаат својот возен парк во живо на картата, водат патни дневници, дефинираат геозони и се известуваат при аларми. Интерфејсот за тоа беше израсната PHP-апликација со сопствено управување со корисници, сопствено фактурирање и сопствено известување – паралелно со сè што инаку го користиме во претпријатието.
Тоа сега го променивме. Следењето е од сега модул во нашиот Odoo 19 Community и со тоа дел од истиот систем во кој работат и клиентите, договорите, фактурите и поддршката. За нашите клиенти на следење тоа значи: една најава, еден интерфејс, а фактурата за следење стои таму каде што стојат и сите други фактури.
Зошто го донесовме следењето во Odoo
Два одвоени системи значат двојни основни податоци. Секој клиент постоеше еднаш во следењето и еднаш во ERP, секоја промена на адреса мораше да се направи двапати, а циклусот на фактурирање на следењето создаваше документи што потоа рачно одеа во сметководството.
Со преселбата во Odoo сега важи едноставен принцип: основни податоци во Odoo, масовни податоци надвор. Клиентите, корисниците, тракерите, групите, геозоните, производите и цените се во Odoo и таму се поврзани со сметководството, порталот и управувањето со права. Податоците за позиции – вистинскиот проток на податоци од уредите, 24 часа дневно – остануваат во посебно складиште за позиции. ERP-базата на податоци не е вистинското место за милиони GPS-точки, а и не мора да биде.
Серверот за следење што ги прима уредите не е допрен од преминот. Токму тоа го направи преработката воопшто реална: интерфејсот можеше да настане одново без да се допре приемот на податоци.
Што нашите клиенти сега го имаат во порталот
Клиентите на следење се најавуваат во клиентскиот портал на Odoo и таму ја наоѓаат областа Следење. Кој го користи исклучиво следењето, по најавата директно доаѓа на картата и не гледа други содржини од порталот.
Карта во живо
Картата ги прикажува сите свои и споделени возила со статус (во движење, стои, офлајн), брзина, насока на движење и разрешена адреса. Позициите пристигнуваат во реално време преку WebSocket-врска со серверот за следење – една единствена врска за целата инсталација, а не по една за секој отворен прелистувач – и се дистрибуираат филтрирано: секој клиент ги добива само возилата што му припаѓаат или се споделени за него. Возилата се движат мазно меѓу две пријави, наместо да скокаат.
Како основни карти на избор стојат OpenStreetMap, теренска карта, официјалната австриска Basemap заедно со аерофотографија и црно-бела карта; теренот и 3D-зградите може да се додадат како слоеви. Прикажувањето со кое се отвора картата – тип на карта, исечок, стандардна група – Odoo го помни по корисник.
Патен дневник со службено и приватно возење
Возењата се препознаваат на серверот, не во прелистувачот: возењето се случува и кога никој нема отворено карта. Почеток, крај, адреса на поаѓање и на цел, километража, растојание и времетраење се евидентираат за секое возење.
Секое возење може да се класифицира како службено возење или приватно возење – по возење, а не по возило, бидејќи истиот автомобил претпладне оди кај клиент, а навечер дома, а разликата во Австрија е даночно релевантна. При почетокот на возењето на картата директно се појавува прозорецот за класифицирање; кој го прави тоа подоцна, го наоѓа возењето во патниот дневник заедно со поле за белешка. Возачите се препознаваат преку iButton-клучни чипови, ако возилото е опремено со нив.
Достапни се две анализи, двете како PDF и Excel:
- Поединечен патен дневник – возењата на едно возило во избраниот период со рута, класификација и белешка
- Патен дневник на возниот парк – еден ред по возило со време на возење, растојание, поделбата на службени и приватни километри и проектираната потрошувачка, плус збирови по групи и вкупно
Геозони и аларми
Геозоните се цртаат директно на картата – како круг, квадрат или слободен полигон – или се преземаат од заеднички шаблони како „Австрија“ или „Виена“. За секоја зона и возило може да се определи дали се алармира при влез или излез и каде: преку SMS, е-пошта, Webhook или како порака до нашиот кол-центар.
Алармите – промена на зона, брзина, палење, губење на напон, итен повик, движење, офлајн – се појавуваат како посебни записи во Odoo, со време, позиција и статус на обработка.
Пребарување: Кое возило беше овде?
Пристигнува казна, на неа стои местото на мерење – но кое возило било? Пребарувањето во текот на рутата токму тоа го одговара: изберете точка на картата или адреса, ограничете го радиусот и периодот, а следењето покажува кои возила биле таму. Местата за мерење на брзина од OpenStreetMap веќе се на картата како слој.
Управување од самиот клиент
Она што порано мораше да се делегира на нас, клиентите сега го завршуваат во порталот:
- Активирање на тракер – внесете IMEI од налепницата на уредот, изберете или создадете група, готово
- Тракери и групи – називи, симболи, доделување на група, полнења гориво со количина и цена, анализи по возило
- Овластувања – споделување на возила со други корисници или фирми, со право на читање или пишување и можност за сокривање на одделни полиња како адреса или километража
- Геозони – цртање, уредување, определување на алармирање
- iButtons – доделување на клучните чипови на имињата на возачите
Што се промени кај нас внатрешно
Во Odoo-backend постои областа Следење со карта во живо, управување со тракери, аларми, возења, основни податоци (групи, геозони, типови на уреди, производители) и фактурирање.
Управување со тракери. Секој уред носи IMEI, SIM-број, тип на уред, влезови и излези (палење, блокада на мотор, паркинг-греење и други), калибрација, корекција на километражата, праг за офлајн и параметрите на патниот дневник. Chatter-историјата на Odoo ја евидентира секоја промена.
SMS до уреди. Тракерите се конфигурираат преку SMS. Испраќањето сега тече од Odoo, се евидентира без празнини и е осигурано од погрешно ракување: горната граница по процес на испраќање спречува еден клик да предизвика стотици платени пораки, а нецелосните телефонски броеви воопшто не се предаваат.
Кол-центар. Пријавите за кражба и несреќа се појавуваат како случаи со податоци за возилото, контакт-податоци на сопственикот и водена постапка: сопственикот е достигнат? Лажен аларм? Понатамошни мерки? Секој чекор се евидентира, а надлежните обработувачи се известуваат преку Push.
Фактурирање. Циклусот на фактурирање ги зема предвид сите тракери чиј следен термин за фактурирање е достигнат и од нив создава нацрти на фактури во Odoo – со цена за крајни клиенти или за партнери. Одобрувањето намерно останува на сметководството: циклусот не книжи, подготвува. Интервалот на фактурирање, производот и следниот термин се врзани за тракерот; по циклусот редовите на фактурата стојат директно на уредот.
Архитектурата зад тоа
GPS-уреди
│
▼
Сервер за следење ──► Складиште за позиции Odoo 19 Community
(непроменет) денес: постојна ├─ Основни податоци (тракери, клиенти, геозони)
база на податоци ├─ Клиентски портал /my/ortung
подоцна: PostGIS ├─ Backend Следење / …
▲ ├─ Фактурирање (нацрти на фактури)
└── само читање ─┘
Пристапот до позициите тече исклучиво преку заменлив интерфејс. Денес Odoo чита од постојната база на податоци за следење, која серверот за следење непроменето ја полни и натаму. Преминот на сопствен PostGIS-сервер така е промена на конфигурацијата, а не преработка – просторните анализи како проверки на геозони тогаш ги пресметува самиот PostGIS. За развој и обука дополнително постои демо-складиште со синтетички податоци, со кое модулот работи и без сервер за следење.
Адресите се разрешуваат преку сопствен геокодер и се кешираат во Odoo, заокружени на околу единаесет метри: возило што стои не се разрешува одново при секој GPS-шум, а картата не зависи од времето на одговор на надворешна услуга.
Како помина преминот
Не преминавме одеднаш, туку парче по парче според Strangler-моделот: старискиот систем остана работоспособен, Reverse-Proxy одлучуваше по патека кој одговара, а новата карта најпрво работеше за пилот-група во паралелна работа покрај старата.
Преземањето на основните податоци беше најделикатниот дел. Скрипта за миграција чита клиенти, корисници, тракери, групи и геозони од старата апликација и ги создава во Odoo – повторливо како Delta-циклус, со стариот идентификатор како клуч. Бидејќи многу клиенти на следење во Odoo одамна постоеја како партнери, асистент предлага доделувања што мора поединечно да се потврдат: погрешно поврзана фирма би гледала туѓи возила, а тоа е поскапо од дупликат.
Што намерно не се пресели: двојната кодна база за десктоп и мобилен (Odoo-frontend е респонзивен), сопствената табела за преводи, сопственото управување со права и сесии и добар туцет извештаи што во пракса никој веќе не ги отворал.
Што тоа значи за Вас како клиент
Ако сте наш клиент на следење, Вашиот пристап до порталот веќе сте го добиле или ќе го добиете во следните неколку недели. Вашите возила, групи, геозони и овластувања се преземени; патниот дневник продолжува непрекинато.
Во еден портал ги наоѓате Вашето следење, Вашите фактури и Вашите барања за поддршка. А ако сакате повеќе од следење – Helpdesk, договори за одржување, фактурирање на проекти – тоа е истиот систем.
На прашања за преминот со задоволство одговараме. А кој за сопственото претпријатие бара следење на возила поврзано со ERP, наместо да стои покрај него: обратете ни се.