UniSet
2.8.0
|
MQTT - это..
Данная реализация построена на использованиие библиотеки mosquitto. Издатель публикует события по каждому изменению датчика в указанном топике.
Топик для публикации событий имеет вид: TOPIC
Топик можно задать при помощи аргумента комадной строки –prefix-mqtt-topic или в настроечной секции topic="..". По умолчанию берётся ROOTPROJECT/sensors/sensorname, где ROOTPROJECT - это название корневой uniset-секции заданное в configure.xml (RootSection="..")
События по каким датчикам "публиковать" можно задавать при помощи filter-field и filter-value параметров. –prefix-filter-field - задаёт фильтрующее поле для датчиков –prefix-filter-value - задаётзначение фильтрующего поля для датчиков. Необязательнй параметр.
Либо можно указать в настроечной секции: filterField=".." filterValue=".."
По умолчанию загружаются и публикуются ВСЕ датчики из секции <sensors> конфигурационного файла.
Сервер для публикации указывается параметрами: –prefix-mqtt-host ip|hostname - По умолчаню "localhost" –prefix-mqtt-port num - По умолчанию: 1883 (mosquitto)
Но можно задать и в настроечной секции: mqttHost=".." и mqttPort=".."
Помимо этого можно задать время проверки соединения, параметром –prefix-mqtt-keepalive sec - По умолчанию: 60 или и в настроечной секции: mqttKeepAlive=".."
Для запуска издателя, неоходимо наличие в configure.xml секции: <ObjectName name="ObjectName" ...параметры">.
Имеется возможность сопоставлять значения датчиков текстовым сообщениям, посылаемым на сервер. Для этого необходимо в настроечной секции для датчика создать подсекцию <mqtt>. Пример:
При этом в тексте можно применять следующие "подстановки":