ZigLQ - инструмент для для приема MQTT-сообщений от zigbee-устройств, их обработки и сохранения данных в Excel-файл.
- Устанавливаем бинарник и конфигурационный файл на рабочую машину
- Настраиваем параметры конфигурации
- mqtt.host - Указываем хост брокера.
- mqtt.client_id - Указываем client_id можно указать "".
- mqtt.username - Указываем логин для авторизации в брокере. Пустая строка если логина нет.
- mqtt.password - Указываем пароль для авторизации в брокере. Пустая строка если пароля нет.
- log.level - Указываем уровень логирования("info"-"debug"-"warn"-"error")
- log.diff_linkquality - Указываем какая должна быть разница в качестве связи между предыдущим и текущим значением linkquality. Для записи каждого значения используем 0.
- topic.subscribe - Указываем префикc топика в z2m.
- Запускаем бинарник
- Загрузка конфигурации из YAML-файла
- Настраиваемый уровень логирования
- Подключение к MQTT-брокеру (с поддержкой авторизации)
- Подписка на указанные топики
- Обработка входящих сообщений через callback
- Парсинг данных через модуль payload_parser
- Сохранение данных в Excel-файл (ZigLQ.xlsx)
- Корректное завершение работы (SIGINT / SIGTERM)
В созданном excel-файле будет информация о времени сообщения, friendly_name, linkquality в трех столбцах.
- "github.com/xuri/excelize/v2"
- "golang.org/x/text/encoding/charmap"
- "golang.org/x/text/transform"
- "gopkg.in/yaml.v3"
- Eclipse Paho MQTT - клиент MQTT
- Zerolog - логирование
Примечание: Для работы требуется Go версии 1.16+, доступ к MQTT брокеру и configuration.yaml