СправочникКампании
События триггеров
Четыре события платформы запускают кампанию: комментарий на посте страницы Facebook, комментарий на посте Instagram, сообщение Facebook Messenger, и личное сообщение Instagram. Каждое событие сопоставляется с активными кампаниями, привязанными к подключённой странице, для которой оно пришло, и каждая кампания, чья текущая версия графа держит подходящий узел-триггер, запускает одно выполнение. Нажатия кнопок и собственные комментарии страницы никогда не запускают кампанию.
| Событие | Узел-триггер | Платформа кампании | Запускает выполнение |
|---|---|---|---|
| Комментарий на посте страницы Facebook | trigger_comment | Да, один раз на каждую подходящую активную кампанию на этой странице | |
| Комментарий на посте Instagram | trigger_comment | Да, один раз на каждую подходящую активную кампанию на этой странице | |
| Сообщение Facebook Messenger | trigger_dm | Да, когда сообщение несёт текст и для этого человека ничего не выполняется | |
| Личное сообщение Instagram | trigger_dm | Да, когда сообщение несёт текст и для этого человека ничего не выполняется | |
| Нажатие кнопки внутри ЛС | нет | обе | Нет — оно возобновляет выполнение, ожидающее ответа |
| Ответ в ветке комментария, на который ждёт выполнение | нет | обе | Нет — оно возобновляет это выполнение, без дальнейшего сопоставления кампаний |
Маршрутизация событий
Заголовок раздела «Маршрутизация событий»Комментарий на посте страницы Facebook
Заголовок раздела «Комментарий на посте страницы Facebook»- Узел-триггер:
trigger_comment - Платформа кампании: Facebook
- Несёт: комментарий, его пост, текст комментария, имя комментатора, любое приложенное фото или видео, и родительский комментарий для ответа
Комментарий на посте подключённой страницы Facebook сопоставляется с каждой активной кампанией, привязанной к этой странице. Кампания, чей триггер имеет post_scope, установленный на specific, совпадает только с комментариями на посте, указанном в post_id; триггер с областью all совпадает с комментариями на любом посте страницы.
Область поста — единственное, по чему фильтрует триггер комментария. Узел-триггер не содержит настройки ключевых слов, так что фильтрация текста происходит дальше по графу, на первом узле condition, которого достигает выполнение.
Комментарий без текста — стикер, или вложение, опубликованное без подписи — приходит с текстом-заполнителем {{sticker}}, так что узлу-условию всегда есть с чем детерминированно сравнивать.
Комментарий на посте Instagram
Заголовок раздела «Комментарий на посте Instagram»- Узел-триггер:
trigger_comment - Платформа кампании: Instagram
- Несёт: комментарий, его медиа, текст комментария, имя пользователя комментатора, и родительский комментарий для ответа
Комментарии Instagram идут тем же путём, что и комментарии Facebook, и используют тот же узел-триггер. Кампания должна быть привязана к бизнес-аккаунту Instagram, для которого пришёл комментарий; платформа кампании определяется страницей, на которую она нацелена, так что привязка её к аккаунту Instagram — это то, что делает её пригодной для событий Instagram.
Комментарий, который возобновляет ожидающее выполнение на пути Instagram, приходит с текстом-заполнителем {{media}}, когда несёт медиа вместо текста.
Сообщение Facebook Messenger
Заголовок раздела «Сообщение Facebook Messenger»- Узел-триггер:
trigger_dm - Платформа кампании: Facebook
- Несёт: отправителя и текст сообщения
Входящее сообщение Messenger сначала проверяется против выполнений, уже идущих для этого человека на этой странице. Идущее выполнение берёт сообщение как ответ. Без идущего выполнения AFP ищет активные кампании на странице, чей текущий граф начинается с trigger_dm, и запускает одно выполнение на каждое совпадение.
Узел trigger_dm не имеет области поста и текстового фильтра, так что любое ЛС, несущее текст, запускает каждую активную кампанию trigger_dm на странице. Какие из них пойдут дальше и что-то отправят, решают их узлы-условия.
Личное сообщение Instagram
Заголовок раздела «Личное сообщение Instagram»- Узел-триггер:
trigger_dm - Платформа кампании: Instagram
- Несёт: отправителя и текст сообщения
ЛС Instagram разрешаются в подключённую страницу либо напрямую, для бизнес-аккаунта Instagram, подключённого отдельно, либо через страницу Facebook, к которой присоединён аккаунт. Событие для аккаунта Instagram, не подключённого к AFP, отбрасывается.
Что событие несёт в граф
Заголовок раздела «Что событие несёт в граф»| Значение | События комментария | События ЛС | Что это использует |
|---|---|---|---|
| Человек, который его отправил | да | да | Получатель каждого send_dm в выполнении, и контакт, к которому применяются add_tag и remove_tag |
| Текст сообщения | текст комментария | текст сообщения | Сопоставление condition, включая списки ключевых слов |
| Имя отправителя | да | да | Персонализация текста send_dm, reply_comment или send_comment |
| Комментарий-триггер | да | нет | reply_comment, hide_comment и delete_comment, которые действуют на этот комментарий |
| Пост, на котором находится комментарий | да | нет | Проверка post_scope триггера |
| Приложенное фото или видео | да | нет | Медиафильтры на condition, такие как filter_images |
| Подключённая страница и её платформа | да | да | Решение, куда публикуются действия выполнения |
Ответ, который возобновляет ожидающее выполнение, несёт текст, но без вложения. condition с включённым фильтром изображений поэтому не совпадает с обычным текстовым ответом, и ветка “ждать изображение” направляет текстовые ответы через выход No Match.
Событие ЛС не несёт ни комментария, ни поста, поэтому действия с комментарием нельзя добавить в кампанию, чей триггер — trigger_dm.
События, которые не запускают кампанию
Заголовок раздела «События, которые не запускают кампанию»| Событие | Что происходит |
|---|---|
| Комментарий, удалённый или скрытый на платформе | Игнорируется. Обрабатываются только новые комментарии. |
| Активность страницы, не являющаяся комментарием | Игнорируется. |
| Комментарий, который страница опубликовала сама, включая тот, что опубликовала кампания | Игнорируется, так что reply_comment или send_comment не может повторно запустить собственную кампанию. |
| Эхо ЛС, которое отправила страница | Игнорируется, так что send_dm не может возобновить собственное выполнение. |
| ЛС без текста — только изображение, стикер или вложение | Игнорируется. Оно не запускает выполнение и не возобновляет ожидающее. |
| Нажатие кнопки в ЛС | Возобновляет ожидающее выполнение с подписью кнопки как текстом ответа; если для этого человека ничего не выполняется, ничего не происходит. |
| Второе подходящее событие от того же человека, пока выполняется его выполнение этой кампании | Пропускается. Один человек не может иметь два выполнения одной кампании одновременно. |
| Событие для страницы, не подключённой к AFP | Отбрасывается. |
| Событие для страницы, чей владелец не имеет активной подписки | Кампания не запускается. Комментарий записывается как ошибка подписки в ленте активности. |
| Событие для страницы, чей токен доступа больше не работает | Кампания не запускается. Комментарий записывается как ошибка повторного входа, пока доступ страницы не будет обновлён. |
| Событие для неактивной кампании, или совпадающее с триггером в более старой сохранённой версии графа | Не сопоставляется. Только текущая версия активной кампании запускает выполнения. |
| Событие для активной кампании без сохранённого графа, или чей граф не имеет узла-триггера | Не сопоставляется. Одной активации недостаточно, чтобы кампания стала пригодной. |
Подписка страницы
Заголовок раздела «Подписка страницы»События доходят до AFP только для подключённой страницы, чья подписка на события зарегистрирована на платформе и подтверждена. Пока это рукопожатие не удалось, комментарии и ЛС на странице ничего не производят, как бы ни была построена кампания.
Создание первой кампании на странице подписывает эту страницу, так что отдельного шага подписки выполнять не нужно. Изменение страницы, на которую нацелена кампания, тоже подписывает новую страницу, а удаление последней кампании на странице снова убирает подписку.
Подписка покрывает активность комментариев на постах страницы, входящие сообщения и нажатия кнопок внутри этих сообщений — все четыре события триггеров проходят через неё.
Деактивация кампании не убирает подписку. События продолжают приходить для страницы и ничего не сопоставляют, пока все кампании на ней неактивны, поэтому повторная активация кампании начинает работать немедленно.
Примечания
Заголовок раздела «Примечания»- Каждая подходящая кампания на странице запускает своё собственное выполнение. Две активные кампании с пересекающимися ключевыми словами обе запускаются для одного и того же комментария.
- Сопоставление происходит с версией графа, сохранённой в момент прихода события, и выполнение остаётся закреплённым за этой версией всю свою жизнь.
- Настройка триггера
unique_per_userсужает, какие повторные события от того же человека запускают кампанию. Типы узлов описывает, что она ограничивает. - Комментарий, опубликованный как ответ внутри ветки, на которую ждёт выполнение, возобновляет это выполнение и останавливается там — комментарий не предлагается никакой другой кампании на странице.
Связанное
Заголовок раздела «Связанное»- Состояния выполнения — что происходит с выполнением, которое запускает событие, и как оно заканчивается.
- Типы узлов — полная настройка
trigger_comment,trigger_dmи каждого другого узла. - Правила сопоставления ключевых слов — как сравнивается текст, который несёт событие, когда выполнение доходит до условия.
- Тест и отладка кампании — как узнать, какое из этих событий дошло до вашей кампании.