Автоматизации
Конструктор сценариев без кода: условия запуска, действия, ветвления, тест-прогон с образцом данных и десять готовых сценариев.
Автоматизация — это сценарий из шагов: условие запуска, затем действия, условия и повторения. Сценарий собирается в конструкторе «Автоматизации» без кода: каждое поле выбирается из списка или берётся из данных предыдущих шагов. Полный справочник шагов с полями и данными на выходе — в разделе Шаги автоматизаций.
Из чего состоит сценарий
- Условие запуска. Событие платформы (новая запись реестра, заполненная форма, письмо, подписанный документ), расписание, внешний запрос по адресу автоматизации или запуск вручную. У события можно выбрать конкретный источник или «Любой», для событий и внешних запросов задаётся окно активности по дням и времени.
- Действия. Создать документ по шаблону, запустить согласование или подписание, завести задачу, отправить письмо или сообщение в Telegram, найти или изменить запись реестра, проверить документ по чек-листу, обратиться к внешней системе. Редкие действия спрятаны за переключателем «Показать расширенные действия».
- Условие. Правило над данными сценария: «сумма больше», «статус равен», «текст содержит». У условия два выхода, «Да» и «Нет», и оба должны куда-то вести: сценарий не оставляет молчаливых тупиков.
- Повторение. Проходит по списку (например, по найденным записям реестра) и выполняет тело цикла для каждого элемента. Внутри тела доступны «Текущая запись» и «Номер записи».
- Исходы ожидания. Согласование, подписание и задача агента завершаются одним из выходов: «Готово», «Отклонено» или «Срок истёк». Для каждого выхода можно задать свою ветку, а ветви, ведущие в один шаг, соединяются сами.
- Ошибки. У действия есть поведение при ошибке: остановить ветку или направить в выход «Ошибка» с текстом ошибки, чтобы, например, завести задачу ответственному.
Данные между шагами
В любом поле кнопка «Из данных» открывает каталог: поля условия запуска, результаты предыдущих шагов, текущая запись цикла и дата запуска. Так письмо получает тему из формы, а задача — ссылку на созданный документ. Каталог показывает только те данные, которые реально доступны в этой точке сценария, поэтому опечатки в именах полей исключены.
Тест-прогон
Кнопка «Тест» запускает сценарий в безопасном режиме:
- Чтения выполняются по-настоящему: поиск записей, получение документа, расчёт форматов и запросы к ИИ идут как в обычном прогоне.
- Записи и отправки симулируются: документ не создаётся, письмо не уходит, согласование не запускается. Вместо результата шаг получает данные по своей схеме с пометкой «(тест)», а ожидания считаются завершёнными с исходом «Готово». Чтение, которое опирается на симулированную запись, тоже симулируется.
- Образец данных триггера. Тест запускается с данными последнего реального срабатывания: они запоминаются автоматически, без бинарных вложений и с ограничением по размеру. Образец можно задать или поправить вручную в карточке условия запуска, блок «Данные для теста», и сбросить к данным события. Если у запуска вручную или внешнего запроса объявлены поля, перед тестом открывается форма с их значениями, заполненная из образца.
- Журнал прогона. После теста у каждого шага на схеме видна отметка, а в карточке шага появляется вкладка «Прогон» с данными на входе и выходе, причиной исхода и пометкой о симуляции. Длинные значения и большие списки в журнале усекаются. Тот же журнал доступен в истории прогонов и по API.
- Кто видит данные. Образец данных триггера и вход и выход шагов видят только те, кто может редактировать автоматизацию: там бывают письма, поля записей и документы, к которым у остальных нет доступа. Тем, кто может только смотреть автоматизацию, журнал показывает статусы шагов и ошибки без данных.
Версии шагов
Настройки каждого действия описаны контрактом с номером версии. Когда контракт меняется, старые автоматизации читаются через миграцию настроек, а при следующем сохранении записываются в новой версии. Прогон, начатый до обновления, тоже доходит до конца: настройки его шагов мигрируют перед выполнением. Если автоматизация сохранена в версии новее, чем знает приложение, конструктор сообщает об этом и просит обновить приложение, а движок останавливает такой шаг с понятной ошибкой, а не выполняет его наугад.
Десять сценариев
Каждый сценарий ниже собран и проверен сквозным тестом: от описания шагов до прогона через движок с симуляцией записей. Названия шагов и полей совпадают с конструктором.
Согласование отклонили — уведомить инициатора
Запуск вручную → Согласование → Запустить согласование (название, участники, срок) → выход «Отклонено» → Письмо → Отправить с текстом «Решение: решение, комментарий: комментарий». Выход «Готово» ведёт к следующему шагу, например к получению документа. В тесте согласование считается завершённым, письмо симулируется.
Новая запись реестра — документ и подписание
Событие: Реестр → Запись создана (выбранный реестр) → Документ → Создать по шаблону с заполнением переменных из полей записи → Подписание → Отправить и дождаться с документом из предыдущего шага → выход «Готово» → Реестр → Изменить запись (статус «подписан»); выход «Отклонено» → письмо ответственному.
Входящее письмо — сохранить вложения и поставить задачу
Событие: Входящая почта → Письмо получено с фильтром по теме → Файл → Сохранить вложения письма в папку → Задача → Создать с темой письма в названии и сроком «через 3 дня».
За три дня до даты договора — напомнить
Событие: Реестр → Дата наступила (поле даты, «до даты», 3 дня) → одновременно Telegram → Отправить и Письмо → Отправить с числом оставшихся дней из данных события.
Еженедельная сводка по задачам
По расписанию (еженедельно, понедельник 09:00, источник «Задачи», условие «За период») → ИИ → Сгенерировать текст по сводке → Письмо → Отправить с ответом ИИ. В тесте обращение к ИИ выполняется, письмо симулируется.
Заявка с формы — проверить и направить
Событие: Интерфейс → Форма заполнена → Условие «сумма больше 100 000» → «Да»: Реестр → Создать запись с полями заявки; «Нет»: письмо автору заявки. Поля формы появляются в каталоге данных после выбора формы в условии запуска.
Внешний запрос — задача из CRM
Внешний запрос с объявленными полями запроса (номер сделки, название) → Задача → Создать с названием из этих полей. Адрес и секрет запроса показаны в карточке условия запуска после сохранения.
Новый документ — проверка по чек-листу
Событие: Документ → Документ создан → Проверка → Запустить проверку по выбранным чек-листам → Условие «статус равен failed» → «Да»: Задача → Создать с высоким приоритетом; «Нет»: письмо о пройденной проверке.
Обход реестра — задачи по просроченным записям
Запуск вручную → Реестр → Найти записи → Повторение по найденным записям → Условие «статус текущей записи равен overdue» → «Да»: Задача → Создать с названием записи; «Нет»: Форматирование → Шаблон строки как отметка «в порядке». Поиск выполняется по-настоящему и в тесте, задачи симулируются.
Подписание не состоялось — отозвать и эскалировать
Запуск вручную → Подписание → Отправить и дождаться (внешний подписант, срок 2 дня) → выход «Срок истёк»: Подписание → Отозвать и Задача → Создать ответственному; выход «Готово»: письмо с подписанным документом. В журнале прогона у шага подписания видна причина «Срок ожидания истёк».
Что проверить перед включением
- Все обязательные поля заполнены: счётчик «Нужно заполнить» в шапке конструктора должен исчезнуть.
- У каждого условия подключены оба выхода, у ожиданий — нужные исходы.
- Тест-прогон прошёл: в журнале нет ошибок, симулированные шаги получили ожидаемые данные.
- После включения сценарий работает от имени ответственного пользователя: ему нужны права на документы, реестры и формы, которые использует сценарий.