Skip to content

Действия для входящих

Раздел Действия для входящих (/incoming-actions) — это конструктор правил, которые превращают входящие сообщения (email, Telegram) в записи сущностей Orbita: заявки, обращения и любые другие типы записей, созданные в конструкторе сущностей.

Каждое правило («действие») описывает: для какого канала оно применяется, в какую сущность создаётся запись, как заполняются её поля и нужно ли запускать действие автоматически или только по нажатию кнопки оператором.

Список действий

Экран показывает все настроенные действия карточками:

Элемент карточкиОписание
НазваниеНазвание правила, заданное администратором
АвтоБейдж показывается, если действие запускается автоматически (без участия оператора)
Каналall (все каналы), email или telegram
Маппинг → сущностьНазвание целевой сущности, в которую попадёт запись
Подпись кнопкиТекст кнопки, которую увидит оператор в списке входящих сообщений (для действий, запускаемых вручную)

Кнопки Редактировать и Удалить доступны для каждого действия. Кнопка + Новое действие открывает форму создания.

Создание и редактирование действия

  1. Нажмите + Новое действие
  2. Заполните поле Название — для удобства самого администратора
  3. Выберите Канал: все каналы, только Email или только Telegram
  4. Решите, должно ли действие запускаться автоматически (переключатель «Выполнять автоматически») — если включено, действие срабатывает сразу при поступлении сообщения, без кнопки и без участия оператора
  5. Для действий, запускаемых вручную, дополнительно укажите:
    • Целевую сущность — куда будет создаваться запись (выбирается из списка всех сущностей, созданных в конструкторе)
    • Подпись кнопки и её цвет — как кнопка действия будет выглядеть в списке входящих сообщений
  6. Настройте сопоставление полей (вкладка Field Mapping) и/или сценарий обработки (вкладка Script) — см. ниже
  7. Нажмите Сохранить

Сопоставление полей (Field Mapping)

Вкладка доступна для действий, которые создают запись в конкретной сущности (не для чисто автоматических фоновых действий).

Слева — поля выбранной целевой сущности, справа — путь к данным во входящем сообщении, откуда взять значение:

ИсточникПример
Базовые поля сообщенияchannel, sender_id, from_name, subject, body, message_id, attachments
Поля внутри необработанного payload канала (JSON)payload.message.from.username, payload.message.chat.id и т.п.

Чтобы не угадывать пути вручную, можно нажать «Загрузить поля», выбрав канал (Email или Telegram) — система подставит реальную структуру последнего полученного сообщения этого канала в виде списка доступных путей.

Поле можно оставить пустым — тогда значение для него либо не заполняется, либо вычисляется сценарием (см. ниже).

Сценарий обработки (Script)

Вкладка Script позволяет написать PHP-сценарий, который выполняется после базового маппинга полей и может:

  • переопределять или дополнять значения, собранные маппингом (массив $data)
  • читать любые данные входящего сообщения через $incoming (channel, sender_id, полный payload)
  • искать и читать существующие записи ($api->get(...), $api->find(...)) — например, чтобы определить автора по email или Telegram chat_id
  • работать со связями между записями (getRelatedByTable, addRelatedByTable)
  • отвечать пользователю напрямую в Telegram ($api->replyTelegram(...)) или отправлять push-уведомление в веб-интерфейс ($api->sendPushNotification(...))

Встроенная справка по доступным переменным и хелперам открывается прямо в редакторе действия (вкладки Context / Records / Relations / Notify / Helpers).

Сценарий — основной механизм, позволяющий, например, находить уже существующую запись по отправителю и обновлять её, а не создавать новую при каждом входящем сообщении: правило само решает, какую логику применить, опираясь на $incoming и поиск через $api.

Автоматические действия и боты

Если включена «Выполнять автоматически», у действия нет ни кнопки, ни целевой сущности — обычно это сценарий-бот: например, он сразу отвечает в Telegram или выполняет фоновую обработку, а затем сам помечает сообщение как обработанное.

Как действие применяется к сообщению

  1. Оператор открывает Входящие сообщения и нажимает кнопку нужного действия рядом с сообщением (либо действие срабатывает автоматически при получении сообщения, если оно помечено как автоматическое)
  2. Сервер собирает данные: сначала по правилам Field Mapping, затем (если задан) по сценарию
  3. Сообщение помечается как Обработано
  4. Для действий, запускаемых вручную, открывается форма создания записи целевой сущности с предзаполненными полями — остаётся проверить и сохранить

См. также

Документация Orbita ITSM