Тема: Ретрансляция в протоколе Wialon IPS
Здравствуйте.
Возникла проблема при ретрансляции данных в протоколе Wialon IPS.
Суть в следующем.
Наша компания (Эрма Софт) занимается предоставлением услуг и ПО для мониторинга и планирования грузоперевозок.
У нас есть клиент, который ретранслирует к нам на сервер gps-данные в протоколе Wialon IPS.
Клиент постоянно жаловался на то, что точек в мониторинге Гуртама намного больше, чем он видит через наше ПО,
т.е. ретранслируется не все. На стороне клиента включался debug-режим, который показал, что все данные отправляются.
Стали копаться на нашей стороне и выяснили следующее:
Вместе с пакетом авторизации могут приходить gps-данные
Получается такая картина, например нам приходит такой пакет:
#L#868204008517012;NA
#D#200516;125711;4329.6177;N;03959.5176;E;94;208;35.000000;15;NA;1;NA;0.000000,0.000000;NA;code_io:1:0,param0:1:3,param255:1:128,gsm:1:35,temp_ext:1:41,param29:1:28,param91:1:1,param93:1:25001,pwr_ext:2:13.680000,pwr_int:2:4.305000,param28:1:1160,param92:1:1105,voltage:2:13.680000,voltage1:2:4.305000,engine operation:2:1.000000,custom:2:140.577508,fuel level:2:22.492401,custom1:2:35.000000,digital:2:15.000000
Служба приема данных распознает его как пакет авторизации, вытаскивает из него IMEI, отправляет ответ успешной авторизации, а точка соответственно теряется. Я взял для примера одну точку, но порой приходит пакет авторизации с двухзначным количеством gps-точек, и все они теряются.
В связи с этим такой вопрос:
Где тут авторизация, если вместе с пакетом авторизации мы уже получаем gps-данные?
Разве протокол не должен работать по такой схеме:
client: Клиент отправляет пакет авторизации
server: Сервер отвечает на пакет авторизации, запоминает IMEI
client: Клиент получает ответ на пакет авторизации, если все нормально, начинает слать другие пакеты
client: Например, клиент отправляет обычный пакет с данными #D#
server:Сервер разбирает пакет, отправляет ответ клиенту
client: Если все нормально клиент отправляет следующий пакет