Разработка чат-бота федеральной сети аптек
Вкалывают роботы, а не человек
(с) Приключения электроника
Бизнесу нужно идти в ногу с пользователем. Когда-то для контакта с клиентом нужен был только сайт. Сайт нужен и сегодня, но теперь нужны еще и SMM-сообщества, E-mail и SMS-рассылки, мобильное приложение и, конечно же, общение в мессенджерах. Мессенджеры стали популярными в использовании, и многие компании рассматривают в аудитории мессенджеров потенциальных клиентов. В связи с этим появились чат-боты, которые способны не только упростить работу пользователя, но и снизить нагрузку на рабочий персонал компании. И тут речь не только про виджет с консультантом на сайте и новостные каналы в Telegram. Чат-бот может отвечать на общие вопросы клиента в режиме 24/7, подсказывать цены и наличие товара, помогать оформлять заказ.
Чат-бот своими возможностями напоминает приложение, однако его возможности зависят от ограничений мессенджера, для которого его создают. Если сравнивать по быстроте разработки между приложением и чат-ботом, то тут выигрывает чат-бот. Кроме того, пользователю не нужно ничего скачивать — сейчас почти у каждого установлено по 2-3 мессенджера или клиента социальных сетей.
Для простых справочных чат-ботов есть удобные и мощные конструкторы. Есть даже самообучающиеся боты, с которыми можно относительно свободно поговорить о компании, продуктах или услугах. Но как только речь заходит об учете остатков, актуальных ценах или программе лояльности, о конструкторе можно забыть — этого они не умеют. В таком случае требуется индивидуальная разработка чат-бота.
Решаемая задача
В 2019 году к нам обратился один из клиентов (федеральная сеть аптек) за разработкой чат-бота для трех платформ (Алиса, ВК, Facebook). Основная цель — автоматизация типовых запросов за счет модной фишки. Дополнительные цели — разгрузка SMM-специалистов и создание нового канала продаж.
Начать решили с простых задач:
- Выдача справочной информации
- Поиск товаров в наличии по региону
Логика для всех платформ в целом, одинаковая, были отличия в деталях. Например, Алиса в режиме «устройство без экрана» должна была переспрашивать некоторые команды — распознавание наименований медицинских препаратов пока что не на высоте.
Как мы решали задачу
Функции бота
Сайт клиента разработан на Битриксе, так что код чат-бота разместили прямо на сайте в скрытом разделе. Это позволило обращаться к базе данных сайта и использовать интерфейс Битрикса для управления данными бота.
Сначала нам потребовалось точно описать все взаимодействия пользователя и чат-бота. Для самых запутанных случаев рисовали конечный автомат (диаграмма состояний лучше всего описывает логику бота).
Выдача справочной информации
Бот должен отвечать на вопросы («Как оформить заказ?», «Как позвонить?») заданными ответами. Ответы и формулировки вопросов хранятся на сайте в виде файлов. При желании контент-менеджер может их изменять в интерфейсе администратора Битрикс.
Выбор города
Процедура кажется простой, она самая разветвленная. Все просто, если пользователь правильно написал свой город, город найден в базе и такой город только один. Но на каждый ошибочный сценарий предусмотрены свои «пути отступления». Если пользователь опечатался в названии города, он может его исправить. Если городов несколько — чат-бот просит уточнить субъект РФ.
Чат-бот узнает город пользователя при первом обращении, и затем этот город используется в поиске. Пользователь может изменить город в любой момент из главного меню чат-бота.
Поиск товаров в наличии
Пользователь может написать чат-боту: «хочу купить» и бот переспросит, что именно. Альтернативный сценарий: сразу спросить «у вас есть анальгин?» (и еще десяток вариаций этой фразы).
Реализация этой команды показала все выгоды нашего подхода (разместить чат-бот прямо на сайте). Сайт уже умел выполнять поиск с учетом наличия товаров в городе и выводить цены. Нам оставалось только превратить запрос к чат-боту в еще один поисковый запрос.
Особенности платформ
Почти любой мессенджер и социальная сеть сегодня предоставляют API для бесед. У каждой платформы свой API, но всегда действует следующая схема общения:
Т.е. общение между сервером мессенджера и обработчиком чат-бота всегда происходит по надежному протоколу HTTPS.
Ближе всех к разработчикам, несомненно, Telegram — создать «пустого» бота и опубликовать его для всех пользователей мессенджера можно за несколько минут. А вот у самого популярного мессенджера, WhatsApp, пока что закрытое API. Есть неофициальные способы создания чат-бота, но ими пользоваться нужно на свой страх и риск.
Задача заключалась в разработке чат-ботов для 3-х платформ, с которыми ранее уже работали: Алиса, Вконтакте, Facebook.
В таблице ниже приведены ограничения мессенджеров на отправку текстовых сообщений.
|
ВКонтакте |
|
Алиса |
Сообщения |
|||
Кол-во символов в сообщении |
4096 |
2000 |
1024 |
Кол-во символов в сообщении с прикрепленными кнопками |
Неограниченно |
640 |
1024 |
Обычные кнопки |
|||
Кол-во кнопок |
10 |
- |
Неограниченно |
Кол-во символов на кнопках |
40 |
- |
125 |
Можно сделать кнопку ссылкой на сайт? |
Нет |
- |
Да |
Кнопки в сообщении |
|||
Кол-во кнопок |
- |
3 |
Неограниченно |
Кол-во символов на кнопках |
- |
20 |
50 |
Можно сделать кнопку ссылкой на сайт? |
- |
Да |
Да |
Вконтакте
Чат-бот в ВКонтакте представляет собой сообщество, с которым любой пользователь может начать диалог. Вся переписка сохраняется в диалоге сообщества и доступна администраторам.
Смысл работы чат-бота заключается в реакции на действия в сообществе: новое сообщение, вступление пользователя в сообщество, новый комментарий в сообществе и т.п. На эти события подвешивается вебхук и в момент срабатывания одного из этих событий происходит обработка вебхуком и чат-бот отвечает пользователю.
В чат-боте нет простого способа сделать так, чтобы у пользователя при первом открытии беседы отображались все кнопки, они появятся только после ответа чат-бота. Вместо этого в сообществе предусмотрена настройка для включения кнопки «Начать» и первый текст, который увидит пользователь.
Аналогично ВКонтакте в Facebook чат-бот представляет собой сообщество. Однако настройка чат-бота и его возможностей производится отдельно в приложениях, которое закрепляется за конкретным сообществом в Facebook.
Чат-бот доступен в Messenger. Вся переписка с сообществом сохраняется и доступна администраторам сообщества.
В настройках сообщества можно определить кнопочки и сообщение, которое увидит пользователь в первый раз открыв диалог с сообществом.
Когда чат-бот находится в разработке он реагирует только на сообщения владельца сообщества и приложения. Это удобно в том случае, если чат-бот подключается и разрабатывается на существующем сообществе. После прохождения модерации (2-12 недель) навыка чат-бот становится доступен всем пользователям.
Яндекс Алиса
Яндекс Алиса изначально позиционирует из себя как голосовой помощник, но в ней можно создавать собственные навыки. Навык — это поведение, которое задается для Алисы, это и есть ваш чат-бот, который будет выступать в роли Алисы.
Настраивается чат-бот очень просто, достаточно задать уникальное имя и url-адрес, на котором расположен скрипт чат-бота.
В процессе разработки навык доступен только разработчику. Модерация и релиз навыка занимает до 3 дней.
Проблемы
Модерации в ВКонтакте и Яндекс Алисе проходит быстро и почти без проблем.
Самый сложный релиз осуществляется в Facebook. Для того, чтобы прикрепить готового чат-бота к сообществу необходимо пройти комплекс мер: существующее сообщество в FB, подтвердить аккаунт в Business Analytics, пройти верификацию компании по предоставленным документам. Этот процесс может занимать несколько месяцев.
Заключение
Таким образом чат-бот можно рассматривать как ограниченную версию сайта, в которой пользователь может быстро и доступно получить информацию о том, как заказать товар на сайте и с помощью бота найти товар на сайте.
Чат-бот — это инструмент для вашего бизнеса, который поможет разгрузить сотрудников и уменьшить трудозатраты. Если вы интересуетесь созданием своего чат-бота в ВКонтакте, Телеграме, Алисе или Facebook заполните форму ниже и мы с вами свяжемся.
Статьи по теме
- аренда команды (от 2 человек, не менее 3 месяцев);
- итерации с фиксированной ценой (1-3 месяца длительностью).
- регулярные онлайн-планерки с заказчиком;
- квалифицированных специалистов;
- организованную команду (находятся в одном помещении, что упрощает решение рабочих вопросов);
- полную прозрачность и регулярность отчетов о результатах.
- нагруженный интернет-магазин;
- личный кабинет;
- оптовые продажи — B2B-платформа;
- маркетплейс;
- технический аудит сайта;
- Битрикс24 — корпоративные HR-порталы;
- Битрикс24 — построение CRM-системы;
- Битрикс24 — личные кабинеты сотрудников;
- Битрикс24 — аудит портала;
- 1С — интеграция с другими системами;
- 1С — доработка системы;
- маркетинг — комплексное интернет-продвижение;
- маркетинг — продвижение для B2B.