Корректировка рассчета totalDistance

Arsen A.5 years ago

Добрый день, Антон. Спасибо за продукт, пользуюсь и почти не знаю горя!

Столкнулся с ситуацией, когда totalDistanse считается неправильно. Я думаю, что это легко можно поправить конфигурацией, но еще не понял какой точно.
Ситуация следующая. Трекер при запуске присылает правильные координаты (хотя Position valid=false), но неправильное значение одометра (больше чем должно быть на несколько километров). Через некоторое время работа восстанавливается. Но, поскольку при рассчете totalDistance у меня учитываются все Position - валидные и не валидные - то totalDistance иногда даже получается отрицательным. Хотя проехал 10 км.

Я обнаружил (смотрите несколько скриншотов по ссылке imgur ) что если считать разницу одометра только с валидных позишенов, то расстояние будет верным.
Объясню:
На скриншотах объект проехал 6,5км. Но totalDistance рассчитан как 79.19 (valid=true) - 78.93 (valid=false) = ‭0.26‬ км
Если посчитать totalDistance на основе только валидных позишенов, то получится 79.19 (valid=true) - 72.80 (valid=true) = ‭6.39‬ км. Это именно столько проехал объект в этот промежуток времени.

В результате поиска нашел несколько опций, которые потенциально могут помочь.

  1. report.ignoreOdometer - пробовал сначала установить через вебинтерфес в аттрибут конкретного объекта - не помогло. Потом попробовал установить глобальную опцию в конфигурационном файле - тоже не заметил изменений в поведении.
  2. geolocation.processInvalidPositions - правильно ли я понимаю, что эта опция позволяет сохранять в базу невалидные сообщения от трекера, но не принимает их во внимание при рассчетах в репортах?
  3. filter.invalid - этот флаг вовсе отфильтровывает невалидные позиции и не сохраняет их в базу, насколько я понял.

Могу ли я попросить подсказать, как наиболее правильно побороть эту проблему? (спрашиваю, понимая, что проблема, скорее всего в трекере)

Версия сервера 4.2.
Конфиг файл почти не кастомизирован.

Anton Tananaev5 years ago

Вам нужно понять откуда проблема берется.

Arsen A.5 years ago

Проблема в трекере. Он после потери GPS и GSM сигналов (металлический гараж) на следующий день при выезде из гаража начинает присылать неправильный одометр. У меня есть другие трекера такой же модели, и они не страдают таким отклонением.

Anton Tananaev5 years ago

Total distance подсчитывается на сервере.

Arsen A.5 years ago

Да, я уже посмотрел. Берется список всех позиций за конкретный промежуток времени. Затем берется одометрическое значение первой координаты и вычитается из такого значения последней координаты.

В этом списке позиций присутствуют valid=true и valid=false.

Anton Tananaev5 years ago

Неверно. Думаю вам нужно почитать форум.

Arsen A.5 years ago

ok