Триггеры
Общая информация
Триггер, это шаг, который реагирует на конкретное событие и запускает сценарий выполнения связки. Является всегда первым шагом в связке, так же в связке может быть только один триггер.
Как добавить триггер в связку:
Выбираете систему, откуда нужно получать данные, по какому событию (например, новые заявки из формы), выбираете ваш подключенный аккаунт этой системы.
Триггеры могут быть двух типов:
Webhook
API
Webhook триггер
После запуска связки, Albato ожидает на определённый урл (находится в подключении) HTTP запрос с определёнными данными. Так же у каждого триггера есть свой внутренний (скрытый и не настраиваемый пользователем) фильтр, именно по нему мы понимаем, какой запрос, какой триггер должен запустить. Например если у нас триггер “Новая сделка”, то эту связку запустит только тот запрос на урл вебхука, в котором в теле указано, что это событие именно “Новая сделка”. Триггер так же может после получения вебхука, делать дополнительные запросы в API для получения более подробных данных (в этом случае так же может возникнуть ошибка у триггера).
Именно в момент получения запроса, запускается выполнение связки. Если запросов на вебхук пришло сразу несколько, все они выполняются последовательно, в порядке очереди.
API триггер
Данный триггер, по расписанию самостоятельно ходит в API системы и опрашивает её, получая список новых или изменённых сущностей. Как правило, поиск идёт по таким параметрам как “Дата создания” и “Дата изменения”, чаще всего мы запрашиваем данные за последний час, но в редких случаях, этот интервал увеличивается.
Стандартный график триггера, это запрос раз в пять минут, но может быть увеличен через “График запуска связки”
При запуске триггер делает запрос, указывая дату ровно минус 1 час (или больше при исключениях) от текущей секунды и получает в ответ массив данных. Каждая сущность при этом будет обрабатываться отдельно, то есть, если триггер получил в ответ 5 сделок, то триггер запустит выполнение связки 5 раз. Связка при этом запоминает ID тех сущностей, что были получены, и при повторном запросе, когда они придут в ответ, выполнение связки повторно не запустится. Если триггер следит за изменением, то дополнительно к ID запоминается дата изменения сущности, то есть, если при повторном запросе придёт тот же ID, но при этом у сущности “Дата изменения” будет уже отличаться от предыдущего раза, эта сущность снова запустит выполнение связки.
Если при запросе новых данных нет, то в журнале будет запись Нет новых данных .
Триггер так же может получить ошибку, в случае проблем с подключением или соединением со стороннем сервером, в таком случае сторонняя система вернёт текст об ошибке.
Обновлено на: 17/04/2024
Спасибо!