Вы научили бота предлагать пользователю перейти к каталогу или продолжить подбор обуви.
Клиент решил подобрать обувь по параметрам и на вопрос чат-бота «Вас интересует мужская или женская обувь?» ответил «Женская».
Как чат-бот может использовать эту информацию?
Запись данных в переменные
При выполнении сценария бот может сохранять и обрабатывать различные данные, например данные, которые вводит пользователь.
Вы уже добавили в сценарий блок Ввод текста, где попросили пользователя ответить на вопрос.
Бот использует этот блок, чтобы сохранить указанные пользователем данные в переменной text
. Таким образом переменная — это универсальное имя для указанных пользователем данных. Вы можете обратиться к переменной с данными пользователя в любой момент сценария.
Имя переменной text
задается по умолчанию для всех блоков Ввод текста. Чтобы избежать потери введенных данных, указывайте уникальные имена переменных в параметрах блока.
Для создания переменных в Graph можно использовать такие блоки как Ввод текста, Ввод числа.
Существуют так же иные способы сохранения данных пользователя в переменных, например с помощью блоков HTTP-запрос, JS код). Вы можете познакомиться с ними подробнее в учебнике по созданию чат-ботов или в документации Graph.
Создание переменных с помощью блоков
Продолжим учить бота подбирать обувь.
Для этого:
Откройте редактор сценария проекта.
В параметрах блока Ввод текста в поле Имя переменной, замените переменную
text
наtype
.На новый экран добавьте блок Ввод числа.
В параметрах блока укажите сообщение «Укажите размер» и дайте название переменной —
size
. В полях От и До задайте ограничения по доступным размерам, например 1 и 58. В поле Сообщение об ошибке задайте реплику бота, которая появится, если пользователь укажет размер за пределами заданного диапазона.Вы можете указать несколько разных сообщений об ошибке.
На новый экран добавьте блок Текст и задайте реплику бота «Вы выбрали тип обуви $type, и размер $size».
Теперь бот умеет подтверждать выбор пользователя.
На любой из этих экранов вы можете добавить подсказку для вызова оператора.