Типы блоков в конструктор-боте

Здесь мы опишем «строительные кирпичики», из которых состоит сценарий

Содержание:

Текстовое сообщение

Этот шаг отображает текстовое сообщение. В сообщении можно использовать переменные, а также добавлять изображения, видео и файлы. Чаще всего этот блок используется в качестве шага по умолчанию.

Блок сообщений поддерживает эмодзи и частично форматирование текста. Форматирование поддерживается во всех блоках, куда можно вставить текст. Вы можете сделать текст жирным, курсивным или зачеркнутым, обернув его следующим образом:

  • **Жирный текст**

  • *курсивный текст*

  • ~~зачеркнутый текст~~

  • Комбинация выглядит так **~~*комбинированный текст*~~**

Переменные

Переменная вставляется в сообщение с помощью двойных фигурных скобок: {{имя_переменной}}. Например, {{Name}} может использоваться для обращения к пользователю по имени, если это имя было ранее сохранено в диалоге. Переменная, которая не определена или не имеет значения, будет выведена в виде пустого символа.

Переменные хранятся в карточке пользователя и могут иметь различные форматы: текст, число, изображение, true/false и JSON. Переменные Name и Number загружаются из профиля WhatsApp.

Прежде чем использовать их в сценариях, переменные должны быть созданы в пункте Настройки, куда можно перейти из раздела Сценарии.

Добавление вложений

К сообщению можно прикрепить файл, изображение или видео. Чтобы добавить вложение, воспользуйтесь кнопкой "Выберите файл" рядом с соответствующим элементом:

  • Картинка. Изображение. Текст сообщения, содержащего изображение, будет отображаться под изображением в качестве подписи к нему.

  • Видео. Видео отправляется отдельным сообщением. Если указаны текст или картинка, они будут отправлены перед видеороликом. Поддерживаются: mp4 или 3gp. Поддерживаются видео-файлы в видео-формате H.264 и аудио-формате AAC.

  • Файл. Файл также будет отправлен отдельным сообщением.

  • Картинка из переменной. Если переменная содержит URL-адрес изображения..

Добавление кнопок меню

Пункты меню выглядят как варианты выбора, когда пользователю нужно отправить 1, 2, 3... и т. д. в ответном сообщении, чтобы выбрать соответствующий пункт меню.

Меню добавляется к пунктам меню. Ниже показано, как настроено меню и как оно выглядит на экране устройства пользователя. На скриншоте пользователь выбирает пункт меню 1 (отправка '1') и получает ответ от блока «Пункт 1 был выбран», с которым связана кнопка 'Ответ 1':

Чтобы добавить дополнительную кнопку меню, нажмите «Добавить» и введите текст кнопки.

Вопрос

Блок «Вопрос» похож на блок «Сообщение», но позволяет записывать ответ пользователя в переменную. Например, мы можем спросить его имя, а затем обратиться к нему более персонализированно. Для этого добавим переменную {{Name}} во все блоки, где можно ввести текст сообщения - например, в блок «Сообщение» или следующий блок «Вопрос».

Ответ пользователя может быть сверен с одним из форматов:

  • Номер телефона;

  • Адрес электронной почты;

  • URL;

  • Регулярное выражение;

  • Значение в указанном диапазоне.

Взгляните на скриншот ниже. Чтобы проверить, правильно ли введен ответ, мы выбираем формат из выпадающего списка (1). Допустим, мы хотим проверить правильность формата электронной почты (2):

В поле ниже мы задали сообщение, которое отображается, если критерии не выполнены (3), а еще ниже - количество попыток, если данные были введены неверно (4). Если в течение заданного количества попыток правильный ответ так и не будет получен, сценарий перейдет к следующему блоку шагов. Переменная остается пустой.

В блоке «Вопрос» можно также прикрепить картинку (но не файл или видео) и добавить пункты меню - аналогично блоку «Текстовое сообщение».

Выбор варианта

Этот блок позволяет предоставить клиенту выбор из нескольких вариантов и записать результат в переменную. Блок добавляется при выборе соответствующего меню шагов (1):

Этот тип шага имеет следующие настройки:

Текст сообщения (2)

Здесь можно использовать переменные и форматирование.

Картинка (3)

Текст будет отображаться в качестве подписи к изображению, аналогично шагам типа «Текстовое сообщение» и «Вопрос».

Варианты ответа (4)

В отличие от пунктов меню в блоке «Вопрос», блок «Выбор варианта» сохраняет только ответ пользователя, не приводя к разветвлению сценария.

В меню ответов допускаются только числовые или текстовые значения.

Мы можем предоставить клиенту возможность не отвечать на этот вопрос и создать дополнительный вариант ответа, например «Пропустить вопрос». Это будет отображаться как еще один пункт меню.

Зафиксировать заявку

Сохраняет запрос пользователя, например, когда клиент хочет связаться со службой поддержки или согласился на звонок продавца. Блок можно добавить обычным способом из меню. (1).Результат записывается в таблицу, доступную через пункт меню "Заявки". (2). Данные из таблицы можно экспортировать в файл MS Excel для обработки сотрудниками вашей компании:

В нашем примере в этой статье мы рассмотрели случай, когда потенциальному клиенту предлагаются специальные банковские условия. Для этого мы запрашивали у пользователя согласие (1), и если он его давал (2) - запускали блок "Зафиксировать заявку" (3):

Давайте посмотрим на настройки блока. 'Текст сообщения' - это сообщение, которое увидит пользователь (4). К сообщению можно добавить изображение (5), как и в других типах блоков, которые мы обсуждали ранее. Также здесь можно добавить меню (6). Если меню не добавлено, то после создания записи о лиде поток сразу перейдет к следующему блоку.

Раздел "Служебные настройки" относится к вашему бизнесу. 'Текст нотификации (письма)' содержит комментарий для сотрудников компании. В примере выше мы создали комментарий «Новый пенсионер!». Вы можете включить сюда переменные (👱‍♂️ {{name}} и 📞 {{phone}}), как показано на скриншоте:

Также можно классифицировать тип лидов с помощью тегов, чтобы затем передать их соответствующим сотрудникам. Метка выбирается из выпадающего списка в нижней части панели настроек.

Результатом выполнения описанного блока является следующая запись в таблице Заявки:

Если мы не спросили имя пользователя раньше, переменная {{Name}} получает его из профиля пользователя WhatsApp, также как {{Phone}} получает его номер телефона.

Задержка

[Обновляется...]

Операция

Этот тип блока позволяет выполнить одну или несколько операций:

  • Назначить тег контакту;

  • Удалить ранее назначенный тег из списка тегов контакта;

  • Запустить другой сценарий;;

  • Остановить сценарий.

Блок можно добавить из меню блоков Конструктора (1). Операции добавляются нажатием кнопки "Добавить" (2):

Операция: присвоение тега контакту

Эта операция позволяет присвоить контакту тег. После выбора «Проставить тег» из выпадающего списка (3) вы сможете выбрать тег из появившегося выпадающего списка (4).

Теги, доступные в данном списке, должны быть определены заранее, в соответствующем разделе настроек (Конструктор ботов → Сценарии → Настройки→ Теги):

Теги, присвоенные пользователю (1) , будут видны в карточке контакта (пункт меню «Контакты») (2):

Операция: Удалить метку

Эта операция удаляет тег, присвоенный контакту ранее.

Операция: Запустить сценарий

Эта операция запускает один из других сценариев (которые есть в вашем списке сценариев на канале). После завершения выполнения сценария пользователь возвращается в тот, из которого был совершен переход из блока "Операция" (будет выполнен следующий блок после шага "Операция") - если родительский поток не был остановлен:

Операция: Остановить сценарий

Останавливает текущий сценарий при переключении на другой.

Обратите внимание, что если вы выполнили другой сценарий, но в родительском был запущен блок шагов «Задержка», то блок, следующий за «Задержка», будет выполнен по истечении указанного интервала времени. Чтобы этого не произошло, используйте операцию 'Остановить сценарий' для текущего сценария при переключении на другой сценарий.

Рандомайзер

Рандомайзер пригодится, если вы хотите создать ветвящийся сценарий в случайном порядке. Это удобно, например, для создания различных приветствий или распределения аудитории для дальнейшего A/B-тестирования. Блок можно добавить из вертикального меню, как обычно (1):

Работа блока аналогична меню из блока "Вопрос" или "Текстовое сообщение", но с той разницей, что выбор осуществляется серверным приложением в соответствии с заданным значением шанса. Блок содержит несколько точек ветвления - A, B, ... (2), с указанием значения шанса в процентах, с которым будет выполнен блок. В блоке может быть от 2 до 10 групп распределения. Каждая из них имеет шанс в процентах. Процентное значение показывает, с какой вероятностью пользователь попадет в данную ветвь сценария. На скриншоте выше показано соотношение 50/50 - то есть шансы распределены поровну. Чтобы добавить новую ветку (группу), воспользуйтесь кнопкой "Добавить" в разделе «Группы распределения» (3).

Допустим, мы хотим разнообразить приветствия, отправляемые клиентам, и решили, что у нас будет три варианта. Для этого нам нужно создать блок рандомизатора с тремя вариантами перед блоками приветствия. Фрагмент потока будет выглядеть следующим образом:

Такая конфигурация дает вероятность 30, 30 и 40 % соответственно. Последний вариант будет выбран немного чаще, чем первые два. Логично, что общий процент должен быть равен 100, как в нашем примере.

Флажок «Случайный выбор при каждом заходе» отвечает за то, будет ли случайная ветка выбираться каждый раз или только при первом разговоре. Если он не установлен, то конкретного пользователя будет направлять та ветка, которая была выбрана случайным образом при первом разговоре. В нашем случае приветствие будет выбираться случайным образом каждый раз.

WABA-шаблон

Блок позволяет добавлять шаблонные сообщения WhatsApp Business (WABA).

Шаблоны WABA - это заранее созданные сообщения, которые можно использовать многократно. Эти шаблоны могут включать информацию о заказе, подтверждения, уведомления о доставке и другие типы сообщений, которые часто отправляются клиентам. Использование шаблонов имеет некоторые преимущества благодаря тому, что они предварительно проверяются и утверждаются WhatsApp. Таким образом, вы можете более четко следовать политике WhatsApp. Использование переменных в шаблонах позволяет персонализировать общение, включая информацию, уникальную для каждого клиента, например имя клиента и номер заказа. Использование шаблонов позволяет использовать кнопки вместо пунктов меню - пользователь может выбрать нужную опцию простым нажатием.

Чтобы создать шаг, выберите его в меню блоков, как обычно:

Появится блок шаблонов WhatsApp Business (1). Нажав на него, вы откроете панель настройки шаблона с выпадающим списком шаблонов (2).

Настройка шаблона

Шаблоны можно выбрать из списка шаблонов, созданных и одобренных Meta. Например, выберем шаблон подтверждения билетов в кино (1). После выбора появятся настройки конкретного шаблона. Как видите, мы можем загрузить изображение (2) и указать ряд параметров. Параметр BODY #1 отвечает за название фильма. Мы поместили туда переменную, в которой записали название фильма — {{movie_name}}. Параметр 2 в поле ниже отвечает за время, и так далее, как указано в пояснении к этому шаблону:

Просмотр списка шаблонов

Шаблоны WABA можно просматривать и создавать в вашем аккаунте WhatsApp Manager или в аккаунте 1msg.io. Чтобы перейти к списку шаблонов, откройте пункт меню «Каналы», затем выберите нужный канал и прокрутите вниз до вкладки «Шаблоны»:

Вы увидите список шаблонов. Некоторые из созданных вами шаблонов могут быть отклонены, если они не соответствуют правилам WhatsApp - они помечаются как «rejected». Конечно, вы можете создать их заново, исправив недостатки.

Предварительный просмотр шаблона

При нажатии на название шаблона вы увидите предварительный просмотр сообщения. Например, мы создали шаблон запроса возраста для потенциальных клиентов нашего воображаемого банка из этой статьи. Предварительный просмотр шаблона выглядит следующим образом:

О создании шаблонов и деталях их настройки мы расскажем в отдельной статье.

Условие

Этот тип блока позволяет разветвлять сценарий в зависимости от того, выполняется ли одно или несколько условий. Вы можете выбрать - выполняются ли все условия или хотя бы одно из них.

Блок можно добавить, как обычно, из меню конструктора (1):

Для примера показан внешний вид блока после следующих настроек:

  • Выбран режим «Выполняются все условия» (2);

  • в списке тегов пользователя присутствует тег «Ready to Buy» (3);

  • клиенту исполнилось 18 лет (4).

Если все эти условия выполняются, то будет выполнен блок, связанный с узлом (5), если условия не выполняются, то будет выполнен блок, следующий за узлом (6). Если вы хотите добавить еще одну группу условий, нажмите кнопку Добавить (7)— в блоке рядом с узлом (5) появится еще одна ветвь. Таких групп может быть несколько, что обеспечивает невероятную гибкость при проверке условий.

В качестве условий могут выступать следующие критерии:

  • Список тегов пользователя содержит или не содержит указанный тег;

  • Проверка текущей даты:

    • дата раньше или позже указанной;

    • раньше или равно указанной дате или позже или равно указанной дате;

    • равна или не равна указанной дате;

    • содержит или не содержит значение.

  • То же, что и с датой, но с указанием времени.

  • Условия с системными переменными, такими как:

    • проверьте, с каких цифр начинается номер пользователя, чтобы узнать его страну;

    • проверить, подписан ли пользователь на бота,

    • проверить, есть ли у пользователя аватар, и т. д.

  • Условия с пользовательскими переменными - здесь можно использовать любые параметры (больше или меньше, равно или не равно, содержит значение или нет, содержит ли значение какой-либо фрагмент или нет).

  • В качестве условия можно задать сложную формулу на языке Python, содержащую операции над системными и пользовательскими переменными. Результатом вычисления должно быть значение типа boolean. Например, условие возраста можно записать с помощью формулы age >= 18, как мы сделали в примере выше (4).

Формула

Этот тип блока позволяет выполнять вычислительные операции с переменными. Добавьте его, выбрав пункт меню (1). После добавления блока вы сможете выбрать (из выпадающего списка) переменную, в которую будет записываться значение (2) , и написать формулу (3).

В примере выше мы реализовали умножение выбранной переменной ('amount') на значение 'rate': amount = amount * rate.

Доступен ряд арифметических операций. Используйте следующий синтаксис:

  • Сложение: a + b

  • Деление: a / b

  • Умножение: a * b

  • Expanding: a ** b

  • Модульное деление: a % b

Operations can be performed on the variable selected to write the result, as well as on other variables. Note that variables must be of the same type value (number). Do not use curly brackets in a formula in variable names.

Операции могут выполняться как над переменной, выбранной для записи результата, так и над другими переменными. Обратите внимание, что переменные должны иметь одинаковый тип value (число). Не используйте фигурные скобки в формуле в именах переменных.

HTTTP-запрос

Last updated