Автоматизация процессов
Автоматизации (Automations) позволяют строить событийно-ориентированные процессы, выполняемые автоматически при создании или изменении сущностей, а также при превышении порогов метрик.
1. Архитектура автоматизаций: Триггер → Условие → Действие
Заголовок раздела «1. Архитектура автоматизаций: Триггер → Условие → Действие»Каждое правило автоматизации состоит из трех компонентов:
flowchart LR A["Триггер события\n(Сущность создана / изменена / метрика принята)"] --> B["Оценка условий\n(например, Температура > 10°C)"] B -->|Условие истинно| C["Выполнение действия\n(Webhook / Telegram / Push)"]1. Триггеры (Triggers)
Заголовок раздела «1. Триггеры (Triggers)»- При создании сущности: Срабатывает сразу при создании новой сущности выбранного шаблона.
- При изменении сущности: Срабатывает при любом изменении записи сущности.
- При изменении атрибута: Срабатывает при изменении конкретного атрибута (например, когда
Температурапревышает порог илиСтатусменяется с Operational на Pre-Failure).
2. Условия (Conditions)
Заголовок раздела «2. Условия (Conditions)»Фильтрация выполнения правил с помощью операторов:
Равно,Не равноБольше чем,Меньше чем,Больше или равно,Меньше или равноСодержит,Не содержитПусто,Не пусто
3. Действия и Каналы (Actions & Channels)
Заголовок раздела «3. Действия и Каналы (Actions & Channels)»- Канал Telegram: Отправка форматированных сообщений в чаты/группы Telegram через бота.
- Канал Webhook: Выполнение RESTful HTTP-запросов (
POST,PUT,PATCH,GET,DELETE) с динамическими путями URL, параметрами запроса, заголовками авторизации (None,Bearer Token,Basic Auth), кастомными заголовками и шаблонами JSON-нагрузки. - Канал Push-уведомлений: Отправка мгновенных push-уведомлений на мобильные устройства Android участников проекта через Firebase Cloud Messaging (FCM).
2. Пошаговая настройка автоматизации
Заголовок раздела «2. Пошаговая настройка автоматизации»- Перейдите в Автоматизация → Поиск.
- Нажмите + Создать автоматизацию.
- Основные настройки: Введите название (например,
Перегрев груза) и выберите целевой Шаблон (например,Транспортное средство). - Выбор триггера: Выберите При изменении атрибута и укажите
Температура. - Добавление условий: Задайте правило
Температура Больше чем 10. - Настройка действия:
- Выберите целевой канал уведомления (например, Omni Webhook).
- Для Webhooks:
- Выберите метод HTTP (
PATCH). - Введите шаблон URL эндпоинта с плейсхолдерами динамических переменных (например,
/entities/{entity.id}). - Опционально добавьте параметры запроса (например,
automation=true). - Настройте шаблон JSON-нагрузки.
- Выберите метод HTTP (
- Нажмите Сохранить и включить.

3. Практический сценарий: Движок бизнес-правил управления логистикой
Заголовок раздела «3. Практический сценарий: Движок бизнес-правил управления логистикой»Автоматизации превращают Omnismith в активный движок бизнес-правил. Например, в системе управления холодовой цепью поставок:
Настройка сценария
Заголовок раздела «Настройка сценария»- Шаблон:
Транспортное средство - Атрибуты:
Температура(Метрика / Число),Статус ТС(Список / Измерение: Operational, Pre-Failure, Failure) - Цель: Когда
Температурагруза превышает10°C, автоматически отправить HTTP-запросPATCHдля изменения значенияСтатуса ТСна"Pre-Failure".
Настройка канала Webhook
Заголовок раздела «Настройка канала Webhook»- Название канала:
Omni Webhook - Базовый URL:
https://api.omnismith.io/ - Тип авторизации:
Bearer Token - Bearer Token:
omni_0f61c1f023b24db0bb2d15ad71719b8694cc24f5
Настройка действия в автоматизации
Заголовок раздела «Настройка действия в автоматизации»- Метод HTTP:
PATCH - Путь URL / Эндпоинт:
/entities/{entity.id} - Шаблон нагрузки (JSON):
{"attribute_values": [{"attribute_id": "019fb43d-f9bf-7e9c-aa6d-175ab3a35e54","value": "019fb43e-de74-7149-a92d-5448f16001bc","updated_at": null}]}
Поддерживаемые динамические переменные: {automation.id}, {automation.name}, {entity.id}, {entity.template_id}, {values.<attribute_id>}, {previous.<attribute_id>}, {timestamp}.
4. Журналы выполнения и мониторинг
Заголовок раздела «4. Журналы выполнения и мониторинг»На вкладке Выполнения любого правила автоматизации вы можете изучать логи вызовов в реальном времени:
- Успех: Вебхук доставлен и принят внешним API (HTTP 200/204).
- Ошибка: Ошибка отправки (например, HTTP 405 Method Not Allowed, отказ в соединении или неверный токен). Изучайте коды статуса и детали сообщений.
- Частичная ошибка: Часть целевых каналов успешно получила уведомление, а часть вернула ошибку.