Zigbee + AI-агент: как подключить умный дом к ASI Biont через Zigbee2MQTT и управлять через чат

Zigbee + AI-агент: как подключить умный дом к ASI Biont через Zigbee2MQTT и управлять через чат

Представьте: вы пишете в Telegram «включи свет в гостиной на 30%» — и лампа Philips Hue загорается. Или «отправь уведомление, если датчик Aqara покажет протечку» — и бот присылает alert. Без сложных панелей, без написания кода вручную. Это не магия, а интеграция Zigbee-устройств с AI-агентом ASI Biont через протокол MQTT и Zigbee2MQTT.

В этой статье — пошаговое руководство, как настроить Zigbee2MQTT, подключить его к ASI Biont и создать сценарии автоматизации, используя AI-конструктор интеграций. Никакого ручного программирования — всё через диалог с AI.

Зачем подключать Zigbee к AI-агенту?

Zigbee — один из самых популярных протоколов для умного дома. Датчики Aqara, лампы IKEA Tradfri, розетки Philips Hue — все они работают через координатор (например, Conbee II или Sonoff ZBDongle-P) и bridge-приложение Zigbee2MQTT. Проблема в том, что для автоматизации обычно нужен Home Assistant или Node-RED — а это время на настройку и поддержку.

ASI Biont решает это иначе. AI-агент сам пишет Python-код для подключения к MQTT-брокеру, подписывается на топики устройств и выполняет команды. Вам остаётся только описать в чате, что нужно сделать.

Как это работает?

  1. Zigbee2MQTT установлен на Raspberry Pi, Orange Pi или любом сервере. Он публикует данные датчиков в MQTT-брокер (обычно Mosquitto).
  2. ASI Biont подключается к тому же брокеру через paho-mqtt. AI пишет скрипт, который подписывается на топики (например, zigbee2mqtt/temperature_sensor) и публикует команды (например, zigbee2mqtt/living_room_light/set).
  3. Всё управление — через чат: Telegram, веб-интерфейс или любой другой канал, где работает ASI Biont.

Конкретный сценарий: датчик температуры + уведомление в Telegram

Допустим, у вас есть датчик Aqara Temperature Sensor (модель WSDCGQ11LM). Он публикует данные в топик zigbee2mqtt/0x00158d0002a1b2c3. Вы хотите, чтобы при превышении 30°C AI отправлял вам сообщение в Telegram.

Как это выглядит в чате:

Вы: Подключись к MQTT-брокеру на 192.168.1.100:1883, логин mqtt_user, пароль mqtt_pass. Подпишись на топик zigbee2mqtt/0x00158d0002a1b2c3. Если температура выше 30°C, отправь мне сообщение в Telegram через бота с токеном 123456:ABC-DEF.

Что делает AI:
- Генерирует Python-скрипт, который подключается к брокеру через paho-mqtt.
- Подписывается на топик и парсит JSON (поле temperature).
- При превышении порога отправляет POST-запрос к api.telegram.org с текстом уведомления.
- Запускает скрипт в sandbox-окружении ASI Biont (execute_python).

Пример кода, который AI сгенерирует (упрощённо):

import paho.mqtt.client as mqtt
import requests
import json

BROKER = "192.168.1.100"
PORT = 1883
USER = "mqtt_user"
PASS = "mqtt_pass"
TOPIC = "zigbee2mqtt/0x00158d0002a1b2c3"
TELEGRAM_TOKEN = "123456:ABC-DEF"
CHAT_ID = "123456789"

def on_message(client, userdata, msg):
    data = json.loads(msg.payload)
    temp = data.get("temperature")
    if temp and temp > 30:
        requests.post(
            f"https://api.telegram.org/bot{TELEGRAM_TOKEN}/sendMessage",
            json={"chat_id": CHAT_ID, "text": f"Температура {temp}°C превышает 30°C!"}
        )

client = mqtt.Client()
client.username_pw_set(USER, PASS)
client.on_message = on_message
client.connect(BROKER, PORT, 60)
client.subscribe(TOPIC)
client.loop_forever()

Важно: Скрипт выполняется в sandbox с таймаутом 30 секунд. Для долгоживущей подписки AI использует loop_forever в отдельном потоке или асинхронный вариант с loop_start(). В реальности AI адаптирует код под ограничения sandbox.

Сценарий 2: управление лампой через голос или чат

Хотите включать лампу IKEA Tradfri командой «свет в спальне на 50%»? Достаточно описать:

Вы: Когда я пишу «свет в спальне на 50%», опубликуй в топик zigbee2mqtt/bedroom_light/set JSON {"state": "ON", "brightness": 127}.

AI создаст обработчик, который парсит текст, извлекает уровень яркости и публикует команду через MQTT.

import paho.mqtt.publish as publish

def set_light(level):
    brightness = int(level / 100 * 254)
    payload = json.dumps({"state": "ON", "brightness": brightness})
    publish.single("zigbee2mqtt/bedroom_light/set", payload, hostname="192.168.1.100", auth={"username":"mqtt_user", "password":"mqtt_pass"})

Почему это выгодно?

  • Не нужно кодить вручную. AI пишет скрипты за секунды.
  • Гибкость. Подключайте любые Zigbee-устройства — датчики, лампы, розетки, реле.
  • Без Home Assistant. Всё управление через чат, без сторонних панелей.
  • Любые сценарии. AI может анализировать данные за неделю, строить графики, отправлять отчёты.

Как начать?

  1. Установите Zigbee2MQTT на Raspberry Pi или Orange Pi. Подключите координатор (например, Sonoff ZBDongle-P). Настройте Mosquitto (MQTT-брокер).
  2. Зайдите на asibiont.com, создайте API-ключ в разделе Devices.
  3. В чате опишите задачу: "Подключись к MQTT-брокеру на 192.168.1.100:1883, логин..."
  4. AI сгенерирует и выполнит код. Вы получите готовую интеграцию.

Никаких панелей управления и кнопок «добавить устройство». Всё через диалог. ASI Biont подключается к любому устройству через execute_python — AI сам пишет код интеграции под каждое устройство. Не нужно ждать, пока разработчики добавят поддержку — подключайте что угодно прямо сейчас.

Попробуйте сами

Переходите на asibiont.com и подключайте свои Zigbee-устройства к AI-агенту. Умный дом станет ещё умнее — без лишнего кода и сложных настроек.

← Все статьи

Комментарии