MQTT (Mosquitto, EMQX) и ASI Biont: AI-агент для телеметрии IoT без кода

Введение

MQTT — один из самых популярных протоколов для IoT. Mosquitto и EMQX используют для сбора данных с тысяч датчиков, управления умными домами и промышленными системами. Но что, если вы хотите не просто собирать телеметрию, а автоматически анализировать её в реальном времени, отправлять оповещения при аномалиях или управлять устройствами через Telegram? Для этого нужен AI-агент, который понимает данные и может действовать. ASI Biont подключается к любому MQTT-брокеру через paho-mqtt, пишет код интеграции сам и запускает его в облаке. Всё, что нужно — описать задачу в чате.

Как ASI Biont подключается к MQTT

ASI Biont использует execute_python — AI пишет Python-скрипт с библиотекой paho-mqtt, который выполняется в sandbox-окружении на сервере. Пользователь указывает адрес брокера, порт, логин и пароль (если требуется), топики для подписки и публикации. AI генерирует код, подключается к брокеру, подписывается на нужные топики, получает сообщения, анализирует их и при необходимости публикует команды обратно. Для быстрой проверки связи AI использует industrial_command с командой publish.

Почему именно execute_python?

  • Не нужно устанавливать ничего на своём ПК — код выполняется в облаке.
  • AI автоматически обрабатывает ошибки подключения, таймауты и переподключение.
  • Можно комбинировать MQTT с другими протоколами (HTTP, Telegram, базы данных) в одном скрипте.
  • Пользователь просто описывает задачу словами, AI пишет весь код.

Сценарий: ESP32 + DHT22 + Mosquitto + ASI Biont

Представьте: у вас есть ESP32 с датчиком температуры и влажности DHT22. Данные публикуются в топик home/temperature и home/humidity на локальном Mosquitto. Вы хотите, чтобы AI-агент:
- Подписался на эти топики.
- При каждом новом значении проверял, не вышла ли температура за пределы 18–30°C.
- Если температура выше 30°C — отправлял уведомление в Telegram и публиковал команду на включение вентилятора в топик home/fan.

Шаг 1. Настройка ESP32

ESP32 публикует данные через MQTT. Пример кода на Arduino:

#include <WiFi.h>
#include <PubSubClient.h>
#include <DHT.h>

const char* mqtt_server = "192.168.1.100";
const char* topic_temp = "home/temperature";
const char* topic_hum = "home/humidity";

WiFiClient espClient;
PubSubClient client(espClient);
DHT dht(4, DHT22);

void setup() {
  Serial.begin(115200);
  WiFi.begin("SSID", "password");
  while (WiFi.status() != WL_CONNECTED) delay(500);
  client.setServer(mqtt_server, 1883);
  dht.begin();
}

void loop() {
  if (!client.connected()) client.connect("ESP32Client");
  client.loop();
  float t = dht.readTemperature();
  float h = dht.readHumidity();
  if (!isnan(t) && !isnan(h)) {
    client.publish(topic_temp, String(t).c_str());
    client.publish(topic_hum, String(h).c_str());
  }
  delay(5000);
}

Шаг 2. Подключение ASI Biont к Mosquitto

Пользователь пишет в чате: «Подпишись на home/temperature и home/humidity на брокере mqtt://192.168.1.100:1883. Если температура > 30°C, отправь мне в Telegram сообщение и опубликуй "ON" в home/fan».

AI генерирует и выполняет следующий Python-скрипт:

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

BROKER = "192.168.1.100"
PORT = 1883
TELEGRAM_TOKEN = "ваш_токен"
CHAT_ID = "ваш_chat_id"

def on_message(client, userdata, msg):
    topic = msg.topic
    value = float(msg.payload.decode())
    if topic == "home/temperature" and value > 30.0:
        # Отправка уведомления в Telegram
        text = f"⚠️ Температура {value}°C превысила 30°C!"
        requests.post(f"https://api.telegram.org/bot{TELEGRAM_TOKEN}/sendMessage",
                      json={"chat_id": CHAT_ID, "text": text})
        # Публикация команды на включение вентилятора
        client.publish("home/fan", "ON")

mqtt_client = mqtt.Client()
mqtt_client.on_message = on_message
mqtt_client.connect(BROKER, PORT, 60)
mqtt_client.subscribe("home/temperature")
mqtt_client.subscribe("home/humidity")
mqtt_client.loop_forever()

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

Шаг 3. Проверка и автоматизация

После выполнения скрипта AI сообщает: «Подключение установлено. При превышении 30°C вы получите уведомление и вентилятор включится». Можно сразу проверить, нагрев датчик феном или рукой.

Реальные подводные камни

  • Таймаут sandbox: execute_python выполняется максимум 30 секунд. Для постоянного мониторинга AI использует циклические задачи или внешние триггеры (например, webhook от EMQX).
  • Безопасность: пароли от брокера и Telegram передаются в скрипт — не используйте публичные брокеры без TLS.
  • Формат данных: AI ожидает числовые значения в топиках. Если данные в JSON, нужно указать: «данные в формате {"temp": 25.5}».

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

  • Не нужно писать код вручную: AI генерирует рабочий скрипт за секунды.
  • Мгновенная интеграция: не ждать обновлений от разработчиков платформы.
  • Гибкость: можно менять логику одной фразой: «Добавь лог в Google Sheets» или «Отправляй данные в InfluxDB».
  • Поддержка любых брокеров: Mosquitto, EMQX, HiveMQ, AWS IoT Core — AI подключается к любому MQTT 3.1.1/5.0.

Другие сценарии с MQTT

  • EMQX + промышленные датчики: AI подписывается на топики с вибрацией и температурой оборудования, анализирует тренды и предсказывает отказы.
  • Умный дом + Mosquitto: AI управляет освещением, климатом и жалюзи по голосовым командам через Telegram.
  • AWS IoT Core: AI подключается к облачному брокеру, собирает данные с тысяч устройств и визуализирует в Grafana.

Заключение

Интеграция MQTT с ASI Biont — это простой способ добавить AI-аналитику в вашу IoT-систему без программирования. Опишите задачу в чате, и AI сам подключится к любому брокеру, подпишется на топики, будет анализировать телеметрию и управлять устройствами. Попробуйте прямо сейчас на asibiont.com — создайте AI-агента и подключите свой первый MQTT-брокер за 5 минут.

← Все статьи

Комментарии

Читайте также

Executive MBA / DBA — стратегическое управление бизнесом: AI-революция в обучении CEO, которая заменит Harvard

21 июля 2026

Основатель Jellyfin покидает команду: что происходит с open-source проектом и как «vibe coding» меняет всё

21 июля 2026

SINN: как превзойти спектральные методы при решении многомерных уравнений в частных производных

21 июля 2026

API Design (REST, GraphQL, gRPC): как выбрать протокол и проектировать API как Senior в 2026 году

21 июля 2026

RC522 + ASI Biont: Бескодовая интеграция RFID-считывателя с AI-агентом для автоматизации доступа и учёта

21 июля 2026

Arduino Uno / Nano / Mega + ASI Biont: как подключить микроконтроллер к AI-агенту без единой строчки кода

21 июля 2026

Как интеграция ASI Biont и SendGrid автоматизирует email-кампании: ИИ-агент без кода для транзакционных писем, триггеров и обработки отказов

21 июля 2026

Психология программных команд: как человеческий фактор определяет успех разработки

21 июля 2026

Интеграция AI с Яндекс Почтой: как ASI Biont автоматизирует email-процессы без кода

21 июля 2026