MQTT
Плагин “mqtt” является расширенной версией плагина “sensor” и предоставляет возможность работы с протоколом MQTT. Вот некоторые настройки, доступные для плагина “mqtt”:
subscribe_topic
: Топик MQTT, на который выполняется подписка для получения данных.mqtt_login
: Логин для аутентификации при подключении к MQTT-брокеру.mqtt_pass
: Пароль для аутентификации при подключении к MQTT-брокеру.
Эти настройки позволяют задать параметры подключения к MQTT-брокеру и определить топик, на который будет выполняться подписка для получения данных. Таким образом, плагин “mqtt” обеспечивает интеграцию с MQTT-сообщениями, что позволяет получать данные с устройств, использующих этот протокол, и использовать их в системе автоматизации или других компонентах.
Плагин “sensor” также реализует JavaScript-обработчик (handler) под названием entityAction
. Этот обработчик предназначен
для обработки действий, связанных с устройствами типа “entity” на основе плагина “sensor”.
Пример реализации обработчика entityAction
:
entityAction = (entityId, actionName, args) => {
// Код обработки действия
};
Также реализует JavaScript-обработчик (handler) под названием mqttEvent
. Этот обработчик предназначен
для обработки действий, связанных с устройствами типа “entity” на основе плагина “sensor”.
Пример реализации обработчика mqttEvent
:
function mqttEvent(message) {
// Код обработки действия
};
Пример использования обработчика mqttEvent:
mqttEvent =(message)->
#print '---mqtt new event from plug---'
if !message || message.topic.includes('/set')
return
payload = unmarshal message.payload
attrs =
'consumption': payload.consumption
'linkquality': payload.linkquality
'power': payload.power
'state': payload.state
'temperature': payload.temperature
'voltage': payload.voltage
EntitySetState ENTITY_ID,
'new_state': payload.state
'attribute_values': attrs