Тема: Передача данных из Wialon в БД postgresql
Стоит задача из Wialon передать номера машин и их координаты в режиме реального времени в БД postgresql. Как это можно реализовать? Спасибо
Вы не вошли. Пожалуйста, войдите или зарегистрируйтесь.
Стоит задача из Wialon передать номера машин и их координаты в режиме реального времени в БД postgresql. Как это можно реализовать? Спасибо
2 варианта:
1. Использовать API и скриптом кидать в базу
2. Использовать ретранслятор из Виалон и самостоятельно написать "сервер" - обработчик простого протокола ретранслятора (Wialon IPS, как вариант), для приема ретранслируемых данных.
SanderAMC , про 1 вариант поподробнее где почитать? я с API только в теории знакома
Вот тут, вестимо: sdk.wialon.com
SanderAMC , спасибо, иду разбираться
Разбор протокола более эффективен. Темболее такого как wialonips.
Стоит задача из Wialon передать номера машин и их координаты в режиме реального времени в БД postgresql. Как это можно реализовать? Спасибо
Через ретрансляцию на flespi (протокол Wialon Retranslator или IPS) и потом нормальная работа с сообщениями в JSON. На входе - подписка по MQTT, где каждое новое сообщение ложится в базу и подтверждается ack. Либо сервер отправляет HTTP push запрос с JSON-ом с массивом сообщений и пока Ваш сервер не ответит 200OK, сообщения будут буферизироваться.
Все остальные варианты будут с потерями данных на Вашей стороне, практически при любой перезагрузке Вашего сервера Вы будете иметь потери.
Тут первый раз про API узнали, а вы ему flespi с брокером.
На входе - подписка по MQTT, где каждое новое сообщение ложится в базу и подтверждается ack.
Подскажите, а mqtt только через flespi работает или можно напрямую с виалоном связать устройство с mqtt протоколом?
shal пишет:На входе - подписка по MQTT, где каждое новое сообщение ложится в базу и подтверждается ack.
Подскажите, а mqtt только через flespi работает или можно напрямую с виалоном связать устройство с mqtt протоколом?
Теоретически можно и напрямую, например некоторые BCE трекеры так работают. Связывайтесь с wialon support с деталями для уточнения всех возможностей.
Все остальные варианты будут с потерями данных на Вашей стороне, практически при любой перезагрузке Вашего сервера Вы будете иметь потери.
Непонятно, протоколы Wialon Retranslator или IPS имеют подтверждение получения, или на хостинге ретранслятор не ожидает подтверждения? А через flespi если получать по протоколу Wialon Retranslator и отправлять в нем же, буферизация будет работать? Или обязательно MQTT и qos2?
Непонятно, протоколы Wialon Retranslator или IPS имеют подтверждение получения, или на хостинге ретранслятор не ожидает подтверждения? А через flespi если получать по протоколу Wialon Retranslator и отправлять в нем же, буферизация будет работать? Или обязательно MQTT и qos2?
На Wialon Hosting механизм системы ретрансляции не ожидает подтверждения - его главная задача выплюнуть сообщение и забыть. При ретрансляции от flespi по протоколу Wialon Retranslator после высылки пачки сообщений ожидается подтвреждение с той стороны приема хотя бы одного сообщения (байт с кодом 0x11) в противном случае по истечении таймаута в 10 минутпачка сообщений пересылается заново.
Конечно MQTT и QoS=1 гораздо более точные механизмы. Также если нужно подтверждать (и получать) сообщения именно пачками, то можно использовать пушинг со стороны flespi по HTTP, там если ответ принимающего сервера не 2XX, то пачка сообщений повторяется снова и снова. Описание механизмов доступа к данным.