Отслеживание активов — одна из самых быстрорастущих областей IoT. Тысячи компаний используют GPS/BLE-трекеры, чтобы знать, где находится грузовик, контейнер или складское оборудование. Но данные трекеров бесполезны, если их некому анализировать в реальном времени. Именно здесь на сцену выходит ASI Biont — ИИ-агент, который подключается к вашим трекерам и автоматизирует логистику: от оповещений о геозонах до инвентаризации склада.
В этой статье я покажу, как подключить asset tracking устройство к ASI Biont через MQTT и REST API на практических примерах. Вы узнаете, как настроить интеграцию за считанные минуты, какие сценарии можно автоматизировать и почему ИИ делает этот процесс проще, чем традиционная разработка.
Зачем подключать трекеры к ИИ-агенту?
Asset tracking — это не просто "вот точка на карте". Это поток событий: перемещение, превышение скорости, выход из геозоны, низкий заряд батареи. Анализировать этот поток вручную невозможно. ИИ-агент, такой как ASI Biont, может:
- отслеживать перемещение активов в реальном времени;
- автоматически определять вход/выход из геозоны и отправлять уведомления;
- проводить инвентаризацию по данным BLE-маячков;
- прогнозировать сроки прибытия или задержки на основе исторических данных.
Традиционные системы мониторинга требуют настройки дашбордов, написания скриптов и интеграции через SDK. ASI Biont делает это через обычный чат: вы описываете задачу, а ИИ сам пишет код и организует подключение. Никаких панелей управления и кнопок «добавить устройство» — только диалог.
Способы подключения трекеров к ASI Biont
ASI Biont поддерживает множество протоколов, но для asset tracking чаще всего используются два:
| Протокол | Когда применять | Примеры устройств |
|---|---|---|
| MQTT | Трекеры с активным интернет-подключением, потоковая передача координат | Teltonika, Queclink, ESP32+GPS модуль |
| REST API | Трекеры с облачным API, периодический опрос данных | BLE-маячки с облаком, некоторые GPS-трекеры с HTTP-пушем |
MQTT — это облегченный протокол для IoT. Трекер публикует сообщения в топик, а ASI Biont подписывается на него. Отлично подходит для реального времени.
REST API — классический HTTP-запрос/ответ. Используется, когда у устройства нет прямого MQTT, но есть облачная платформа, которая накапливает данные. ASI Biont периодически опрашивает API и получает свежие координаты.
Также ASI Biont поддерживает универсальный механизм execute_python: ИИ сам генерирует Python-код для любого устройства с любым протоколом — от последовательного порта до CoAP. Это значит, что вы не ограничены предустановленными коннекторами.
Сценарий 1: Интеграция GPS-трекера через MQTT
Представьте логистическую компанию с автопарком из 50 грузовиков. На каждом установлен GPS-трекер, который отправляет координаты в топик fleet/tracker/{ID}/location.
Код для ESP32 (MicroPython)
Трекер на базе ESP32 и GPS-модуля может отправлять данные по MQTT вот так:
# MicroPython для ESP32 + GPS (NEO-6M)
from umqtt.simple import MQTTClient
import ujson
import machine
# Настройки MQTT
BROKER = 'broker.example.com'
TOPIC = 'fleet/tracker/001/location'
# GPS-координаты (пример)
lat, lon = 55.7558, 37.6173
payload = ujson.dumps({"lat": lat, "lon": lon, "speed": 62, "ts": 1754553600})
client = MQTTClient('tracker_001', BROKER)
client.connect()
client.publish(TOPIC, payload)
client.disconnect()
Этот код можно загрузить на ESP32 и он будет выполняться циклически. Но как его подружить с ASI Biont?
Настройка ASI Biont через чат
Вы открываете чат с ASI Biont и пишете:
Подключись к MQTT-брокеру по адресу broker.example.com, порт 1883, логин/пароль: logistics/12345. Подпишись на топик fleet/+/location. Если координаты машины выходят за пределы геозоны (Москва, радиус 20 км от Кремля), отправь уведомление в Telegram-бот с ID 123456789.
ИИ анализирует запрос, подключается через свой встроенный MQTT-клиент (на базе paho-mqtt) и генерирует обработчик событий. Результат вы сразу видите в диалоге: система начала слушать топики и реагировать на нарушения геозоны.
Как выглядит код, который генерирует ИИ?
Для демонстрации приведу упрощенный пример скрипта, который ASI Biont может выполнить через execute_python для разовой проверки геозоны:
import paho.mqtt.client as mqtt
import requests
import json
BROKER = 'broker.example.com'
TOPIC = 'fleet/+/location'
GEOZONE = (55.7558, 37.6173) # Кремль
RADIUS_KM = 20
TELEGRAM_BOT_TOKEN = 'YOUR_BOT_TOKEN'
TELEGRAM_CHAT_ID = '123456789'
def haversine(lat1, lon1, lat2, lon2):
from math import radians, sin, cos, sqrt, atan2
R = 6373.0
dlat = radians(lat2 - lat1)
dlon = radians(lon2 - lon1)
a = sin(dlat/2)**2 + cos(lat1)*cos(lat2)*sin(dlon/2)**2
c = 2 * atan2(sqrt(a), sqrt(1-a))
return R * c
def on_message(client, userdata, msg):
payload = json.loads(msg.payload)
lat, lon = payload['lat'], payload['lon']
dist = haversine(lat, lon, GEOZONE[0], GEOZONE[1])
if dist > RADIUS_KM:
requests.post(
f'https://api.telegram.org/bot{TELEGRAM_BOT_TOKEN}/sendMessage',
json={'chat_id': TELEGRAM_CHAT_ID, 'text': f'🚛 Машина вышла из геозоны: {payload}'}
)
mqtt_client = mqtt.Client()
mqtt_client.username_pw_set('logistics', '12345')
mqtt_client.on_message = on_message
mqtt_client.connect(BROKER, 1883)
mqtt_client.subscribe(TOPIC)
mqtt_client.loop_start()
Код использует paho-mqtt, библиотеку requests для отправки уведомления в Telegram — и все это выполняется внутри ASI Biont. Обратите внимание: для длительной подписки ASI Biont использует собственный сервис, а не execute_python (там таймаут 30 секунд). Но сам подход понятен: ИИ пишет код на основе вашего запроса.
Реакция на геозоны и не только
После настройки ASI Biont автоматически определяет выход за границы и шлет сообщение в Telegram. Но это только начало. Вы можете попросить ИИ:
- агрегировать данные за день и присылать отчет на email;
- сравнивать скорость с типичной для маршрута и предупреждать об отклонениях;
- интегрироваться с вашей ERP-системой через REST API и автоматически списывать или добавлять активы.
Сценарий 2: Интеграция BLE-трекера через REST API
На складе часто используют BLE-маячки для инвентаризации. Маячки не имеют прямого интернет-соединения, но их координаты агрегирует облачная платформа (например, Kontakt.io или Estimote Cloud). ASI Biont может опрашивать REST API этой платформы и сравнивать наличие активов с учетной системой.
Пример диалога для подключения REST API
Прочитай документацию по API estimote.com. Подключись к https://api.estimote.com/v2/devices, у меня есть API-ключ. Вытащи координаты всех маячков и сверь их с базой активов на складе. Если маячок не на месте — пришли в Telegram список пропавших.
ИИ получит доступ к API, напишет скрипт запроса через aiohttp или requests и запустит инвентаризацию.
Пример Python-запроса для получения данных
import requests
import json
API_KEY = 'sk_live_example'
HEADERS = {'Authorization': f'Bearer {API_KEY}'}
url = 'https://api.estimote.com/v2/devices'
response = requests.get(url, headers=HEADERS, timeout=10)
devices = response.json()
# Подсчет активов на складе
asset_list = []
for dev in devices:
if dev['type'] == 'beacon' and 'location' in dev:
asset_list.append({
'id': dev['id'],
'lat': dev['location']['lat'],
'lon': dev['location']['lon'],
'battery': dev['battery']
})
# Здесь ASI Biont анализирует список и сравнит с вашей БД
print(json.dumps(asset_list, ensure_ascii=False))
Автоматическая инвентаризация
ASI Biont может выполнять такой скрипт по расписанию (например, каждые 6 часов). ИИ сам создаст cron-задачу через execute_python или через встроенный планировщик, если вы его об этом попросите. Итог — инвентаризация склада без участия человека, с автоматическим оповещением о потерянных активах.
Универсальный подход: execute_python
Важно подчеркнуть: ASI Biont не ограничен двумя протоколами. Благодаря execute_python вы можете подключить любое устройство — от самодельного трекера на Arduino до промышленного контроллера с Modbus. Достаточно описать в чате:
- тип устройства (например, "GPS-трекер на Raspberry Pi");
- способ подключения (порт, IP-адрес, API-ключ);
- как часто опрашивать и что агрегировать.
ИИ сам выберет подходящую библиотеку: pyserial для COM-порта, paramiko для SSH, paho-mqtt для MQTT, pymodbus для Modbus, aiohttp для REST API — и напишет код. Это настоящий «универсальный коннектор», который экономит недели разработки.
Сравнение с традиционной разработкой
| Аспект | Традиционная разработка | ASI Biont |
|---|---|---|
| Время на интеграцию | 2-5 дней: чтение документации, настройка SDK | 2-3 минуты: описание в чате |
| Обработка ошибок | Пишете сами | ИИ добавляет обработку и ретраи |
| Изменение логики | Правка кода и деплой | Новый запрос в чат |
| Требуемые навыки | Python, MQTT, HTTP, многопоточность | Навыки общения с ИИ |
Практические выводы
- Начинайте с MQTT — это самый простой способ получать данные с GPS-трекеров в реальном времени. Если ваше устройство уже отправляет данные в брокер, подключение к ASI Biont займет минуты.
- REST API удобно для BLE-маячков и тех случаев, когда данные хранятся в облаке. Попросите ИИ написать код опроса API и отправки отчета.
- Не бойтесь нестандартных устройств — благодаря
execute_pythonвы сможете интегрировать даже протокол, которого нет в списке поддерживаемых. ИИ разберется. - Регулярно тестируйте сценарии на тестовых данных перед боевым использованием. Например, попросите ASI Biont сэмулировать перемещение трекера и проверить реакцию.
Заключение
Integration asset tracking with ASI Biont — это не просто подключение устройства, а создание интеллектуальной системы мониторинга, которая сама анализирует данные и принимает решения. Область применения огромна: от контроля автопарка до учета оборудования на стройке. Главное — сделать первый шаг.
Попробуйте сами на asibiont.com: опишите ваш трекер и задачу, и AI-агент за считанные секунды сгенерирует код и настроит интеграцию. Вы удивитесь, насколько это просто.
Использованные источники: спецификация MQTT 3.1.1 (OASIS), официальная документация paho-mqtt, документация MicroPython по umqtt.simple, документация REST API Estimote Cloud.
Комментарии