Цепочка диалога
В этом обзоре мы познакомимся с понятием "цепочки" и создадим небольшой тест
Last updated
Was this helpful?
В этом обзоре мы познакомимся с понятием "цепочки" и создадим небольшой тест
Last updated
Was this helpful?
Перейдите в раздел "цепочки" в левом меню приложения:
Нажмите кнопку "добавить цепочку".
Все, что нужно, чтобы создать цепочку — это указать ее название, добавить условие попадания в нее и создать (или выбрать из существующих) начальный блок. По умолчанию будет создан новый блок с названием, как у цепочки. Подробнее про условия
Первым шагом в блоке мы добавили шаг с отправкой сообщения «это первый блок теста». Не забывайте периодически сохранять блок и цепочку) Давайте проверим, что получилось.
Отлично, бот реагирует на нашу цепочку. Кстати, по умолчанию цепочка создается с галочкой «Цепочка активна только для админов». Это удобно, чтобы отладить работу цепочки, а потом снять галочку и сделать ее доступной всем пользователям.
Каждый блок (в том числе начальный блок цепочки) состоит из групп шагов, которые включают в себя сами шаги (например, "отправить сообщение", "ждать ответа пользователя" и т.д.).
Давайте спросим у пользователя, в каком году была основана Москва. Для этого мы добавим шаг "отправить сообщение" с текстом вопроса:
Обратите внимание, что после текста вопроса мы должны добавить шаг "Ждать сообщение". Это нужно для того, чтобы бот остановился и ждал ответа от пользователя. Если мы этого не сделаем, то бот выйдет из цепочки, так как других шагов в ней нет.
Проверим, как работает наш тест.
Отлично! Теперь нам нужно проверить, правильно ли пользователь ответил на наш вопрос. Если да, то перенаправим его на следующий вопрос. А если ошибся, то сообщим ему об этом и завершим тест.
Чтобы добавить условие на ответ пользователя, нам нужно добавить новую группу шагов.
Нажмите кнопку "добавить группу шагов", тогда будет создана новая группа. В ней нажмите на кнопку "добавить условие", в котором можно проверить, что сообщение подписчика равно 1147. Если условие выполняется, значит подписчик ответил на наш вопрос верно. Подробнее про условия можно прочитать тут.
Таким образом, если пользователь введет «1147» во время предыдущего шага «ждать сообщения», условие этой группы шагов выполнится и бот начнет проходить ее шаги.
В качестве первого шага мы добавили сообщение о правильном ответе, а вторым шагом будет шаг «переход» на следующий блок — завершение теста. Этот блок мы заполним позднее.
Осталось добавить сообщение об ошибке, если пользователь написал сообщение отличное от «1147». Условие группы шагов №1 не выполнится и бот пропустит ее и пойдет дальше. Создадим новую группу шагов и добавим туда шаг с отправкой сообщения о неудаче. Условие здесь не нужно, так как если бы пользователь ответил верно, он бы перешел на блок «Тест. Завершение».
Отлично, наш первый вопрос работает! Теперь мы можем перейти к настройке блока «Тест. Завершение». Для этого нажмите «редактировать блок» в шаге переход. Откроется экран редактирования блока "Тест. Завершение". Это второй блок нашей цепочки, второй логический кусочек. В этом блоке мы можем задать новую часть сценария. Для простоты давайте выведем пользователю какое-нибудь сообщение об успешном завершении теста!
Теперь ваш бот может не просто отвечать на команды, но и переходить на разные ветки диалога в зависимости от сообщений пользователя!
Если у вас возникли какие-то трудности при настройке бота — включите Режим отладки в Настройках приложения, тогда бот при общении с админом будет комментировать ход своих действий.
Вот как можно представить полученную цепочку в виде блок-схемы:
Перед созданием сценария мы рекомендуем продумать логику и нарисовать похожую блок схему, например, в бесплатном сервисе draw.io