обновлено 27.12.2025
/home/mazzick/mqtt_to_mysql.pyНазначение: Перехват MQTT-сообщений от Zigbee2MQTT и сохранение их в базу данных MySQL/MariaDB для последующей обработки автоматизациями.
zigbee2mqtt/#.sensor_data (полезно для отладки и полного лога).zigbee2mqtt/motion_sensor/presence, .../battery и т.д.).true → строка "1"false → строка "0"== 1).
linkquality, countdown_*, last_seen, update и др.sensor_history (с ограничением по количеству записей).paho-mqtt (версия с callback API v2).pymysql.sensor_data (topic VARCHAR(255) PRIMARY KEY, value TEXT, timestamp DATETIME).INSERT ... ON DUPLICATE KEY UPDATE — гарантирует, что для каждого топика хранится только актуальное значение./home/mazzick/mqtt_logger.log и в консоль.mqtt-to-mysql.service.Без этого скрипта автоматизации (например, «включить свет при движении») не могут работать, потому что:
"1"/"0"), совместимому с SQL-сравнениями.При изменении логики обработки значений (особенно булевых) необходимо проверять синтаксис Python и правильность отступов — ошибка приведёт к падению systemd-сервиса.