Передача meta-информации в mqtt по устройствам


#1

Добрый день.

Добавляю свойство SN на устройство, подключенное по RS485.
вот его json:
{
“slave_id”: 20,
“device_type”: “mercury230”,
“Multipler”: 50,
“SN”: “12345678”
}
В топике: /devices/mercury230ar02_20/meta/#, присутствует только:
/devices/mercury230ar02_20/meta/name Mercury 230AR-02 20
как мне передать дополнительные свойства в mqtt?


#2

Свойства в mqtt передает драйвер. Так что, в общем случае, чтобы передать что-то новое в mqtt, нужно прописать соответствующий функционал в коде драйвера. Если речь просто про дополнительные (отсутствующие в стандартной поставке) данные, доступные для получения стандартными средствами в регистрах Mercury 230, то их можно прописать в /usr/share/wb-mqtt-serial/templates/config-mercury230.json (тут можно поискать - я выкладывал в качестве примера настройки, как прочитать ночной/дневной тариф)

P.S. Насколько я понимаю, считать серийник стандартными средствами имеющегося драйвера сейчас не получится.


#3

Серийный номер был для примера. Хочется передавать и другую информацию, ну к примеру координаты счётчика, владельца и т.д.
Понятно, что можно вытаскивать многие параметры (серийный номер, коэффициенты трансформации) если переделать драйвер и это я сделаю, как будет устройство для опытов, но есть параметры, которые не относятся к драйверу устройства mqtt-serial, но их было бы удобно получать через mqtt при внесении их вручную в конфиг mqtt-serial.