Создание чат-бота на платформе Mavibot довольно просто, если вы изучили раздел «Основы ботостроения Mavibot», в котором объясняются основы работы с конструктором воронок (редактором), типами блоков и стрелок, типами вложений, кнопок, а также калькулятором и т. д.
Перед тем как приступить к созданию простого чат-бота, мы настоятельно рекомендуем изучить раздел «Основы ботостроения Mavibot»! ссылка «Основы ботостроения Mavibot»!
Как создать блок
Чтобы создать первый блок в воронке, дважды щелкните левой кнопкой мыши по полю редактора:

Как показано в примере выше, блок можно перемещать по полю редактора, выбрав любое удобное место.
Также вы можете создать блок, просто нажав «Сохранить» в нижней части экрана и выбрав его тип:

Для запуска чат-бота можно выбрать следующие типы блоков: «Начать диалог» или «Проверка первичного условия»:

Из статьи «Создание блоков и их типы» ссылка Создание блоков и их типы мы знаем, что тип блока «Проверка первичного условия» имеет наивысший приоритет: как и тип блока «Начать диалог», с него может начинаться цепочка схемы вашего чат-бота.
Технически основное отличие заключается в том, что если в схеме чат-бота есть блок с типом «Проверка первичного условия» и пользователь вводит ключевое слово (фразу) этого блока во время диалога, разговор с клиентом продолжится с этого блока.
Это позволяет обеспечить дополнительную гибкость в структуре диалога, и клиент может сразу получить то, что ему нужно (например, заключить сделку с вами или записаться на ваш курс).
В условиях блока необходимо указать ключевое слово (например, тег мини-лендинга/сайта или другую фразу, необходимую для работы бота, «Привет; здравствуйте, разделенные точкой с запятой»), на которое бот будет реагировать:

Как показано в примере выше (Рис. 2), в условии блока мы указали тег мини-лендинга, созданного на платформе Mavibot, с которого будет производиться подписка, а в поле «Выбор совпадения» выбрали тип «полное совпадение».
При необходимости вы можете указать в условии ключевые слова другого типа (например, «Привет, Здравствуйте» и т. д.). В этом случае выберите тип совпадения «Игнорирование ошибок и неточностей», который поможет боту распознавать ключевые слова в сообщениях ваших клиентов, написанных с опечатками или ошибками:

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

В настройках стрелки мы укажем такие условия, чтобы чат-бот собирал введенные пользователем данные и сохранял их в нужную нам переменную.
Для этого перейдите в настройки стрелки, где необходимо активировать переключатель «Пользователь вводит данные», а также указать переменную, в которую чат-бот будет сохранять данные клиента:

После того как пользователь отправит свое имя в сообщении, бот запишет его в нужную переменную:

Во втором блоке схемы мы напишем сообщение, которое будет запрашивать возраст вашего клиента. Для этого используйте регулярные выражения. ссылкарегулярными выражениями.
Регулярные выражения, используемые в этой статье:
- номер мобильного телефона -> ^((\+7|7|8)+([0-9]){10})$
- email -> ^[-\w.]+@([A-z0-9][-A-z0-9]+\.)+[A-z]{2,4}$
- ввод чисел (для возраста) -> ^[1-9]+[0-9]*$
Полный список регулярных выражений смотрите здесь. ссылка здесь.
В поле сообщения второго блока схемы чат-бота запишите необходимый вопрос: например, «Сколько вам лет?»:

Затем выполните следующие шаги:
Шаг 1. Потяните стрелку от второго блока, чтобы создать следующий блок схемы таким же образом, как был создан предыдущий.
Шаг 2. В настройках стрелки в условии напишите регулярное выражение вида ^[1-9]+[0-9]*$ и выберите тип совпадения «Регулярное выражение»

Помните, что при использовании регулярных выражений выбор совпадения должен быть «Регулярное выражение», иначе схема чат-бота будет работать с ошибками!
Шаг 3. В настройках стрелки активируйте переключатель «Пользователь вводит данные» и введите имя переменной, в которую чат-бот будет сохранять данные клиента:

В примере (Рис. 8) показано, что чат-бот записывает данные клиента в его карточку:

Блок сбора данных клиента: номер телефона/email
Во время диалога с клиентами часто возникает необходимость последующей связи с клиентом по телефону, но возникает вопрос: как настроить чат-бота на автоматический сбор информации о клиенте? Конечно, с помощью регулярных выражений.
Чтобы использовать функцию сбора номера телефона (или email), используйте следующие регулярные выражения:
- Номер мобильного телефона (Россия): ^((\+7|7|8)+([0-9]){10})$
- Номер мобильного телефона (с любым кодом страны): ^(\+)?((\d{2,3}) ?\d|\d)(([ -]?\d)|( ?(\d{2,3}) ?)){5,12}\d$
- Email: ^[-\w.]+@([A-z0-9][-A-z0-9]+\.)+[A-z]{2,4}$
Убедитесь, что перед регулярным выражением в условии стрелки нет пробела!
![]()
В противном случае схема чат-бота будет работать с ошибками.
В схеме мы использовали регулярное выражение для номеров телефонов любой страны.
Так же, как бот записывал имя и возраст клиента, номер телефона пользователя (или адрес электронной почты, если выбрано соответствующее регулярное выражение) будет добавлен в систему.
Создайте блок, в котором вы будете использовать бота для отправки сообщения клиенту с просьбой отправить номер телефона (или email) пользователю:

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

Как отмечалось ранее, не забудьте установить параметр совпадения «Регулярное выражение», чтобы избежать ошибок в чат-боте.
С условием, в котором прописаны регулярные выражения, чат-бот будет принимать только значения номера мобильного телефона в виде цифр, а в случае почтового адреса — только установленные стандартизированные типы почтовых адресов.
Если клиент отправил сообщение, не соответствующее значению номера телефона (email), вы можете создать блок, который сообщит клиенту о неверно введенных данных:

Для этого из блока, в который вы ввели сообщение для номера телефона клиента, проведите вторую стрелку и напишите необходимое сообщение в созданном блоке, например: «Это не номер телефона. Пожалуйста, введите номер телефона!»:

Выберите тип блока «Не состояние» (Рис. 11). Этот блок не имеет условия, как в блоке «Статус диалога», но перейти в него нельзя.
Применительно к нашей схеме блок «Не состояние» будет очень полезен, потому что тогда пользователь не переключится с последнего блока, и для продолжения движения по воронке ему нужно будет ввести номер телефона:

Вы можете узнать о различных функциях блока «Не состояние» в одноименной статье. ссылка «Не состояние»
Блоки следующего диалога бота с клиентом
Давайте приступим к настройке блоков с кнопками, при нажатии на которые клиентом чат-бот будет реагировать в соответствии с условиями кнопки (например, согласие на оплату; прямой платеж или перенаправление на другой сторонний сайт и т. д.).
Для этого из блока, выделенного красным на Рис. 12, потяните стрелку вниз, где в настройках можно установить таймер:

Чтобы установить таймер, перейдите в настройки стрелки и задайте необходимый временной интервал, по истечении которого чат-бот отправит сообщение клиенту:

В следующем блоке добавьте кнопки «Перезвоните мне сегодня» и «Перезвоните мне завтра».
Подробнее о настройке кнопок в схеме чат-бота читайте в этой «статье». ссылка статье.
Чтобы узнать, как подключать и настраивать платежные системы для осуществления платежей через кнопки (ссылки) в боте, см. раздел «Интеграции» -> «Платежные системы». ссылка Платежные системы».
Как добавить кнопки
Чтобы добавить кнопки, которые чат-бот будет отправлять клиенту, нажмите на «Кнопки» внутри настроек блока:

Затем нажмите «Добавить кнопку».

Далее откроется окно для добавления кнопки, где необходимо указать название кнопки и настроить ее в соответствии с вашими требованиями:

Теперь этот блок будет направлять кнопки вашему клиенту, что позволит впоследствии определить время (применительно к схеме, созданной в этой статье), когда с ним лучше связаться:

Диалог с клиентом будет отображаться на вкладке «Клиенты», где вы можете отслеживать все изменения в диалогах с клиентами:

После того как клиент нажмет на определенную кнопку, в диалог на вкладке «Клиенты» будет отправлено соответствующее сообщение: например, «перезвоните мне сегодня»:

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

Теперь запишем название каждой кнопки в условиях каждой стрелки:

В условиях созданных блоков запишите необходимые сообщения, которые чат-бот отправит при нажатии клиентом кнопки:

Теперь чат-бот уведомит клиента о том, что его запрос принят.

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

Итоговая схема чат-бота выглядит следующим образом:

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