AiApps.Pro
Кейс
Мультиязычный чат-бот поддержки для WhatsApp и других каналов в Битрикс24
Введение
Для автоматизации поддержки пользователей наших приложений по всему миру, мы реализовали сценарий, который подробно опишем в этом кейсе.

Перед нами стояли следующие цели:

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

Обращения от наших пользователей поступают 24/7 во всех часовых поясах на 4-х языках: русском, английском, португальском и испанском.

Каналы, по которым обращаются наши пользователи: WhatsApp, Онлайн-чат Битрикс24, Битрикс24 Network. Все каналы подключаем к Открытым линиям в Битрикс24.
1. Подключение каналов
Для поддержки канала WhatsApp, мы используем официальный WhatsApp Business API, предоставляемый официальным партнером Facebook - сервисом Gupshup.
Официальный WhatsApp Business API от Gupshup
Для интеграции WhatsApp Business API с Битрикс24 мы разработали приложение WhatsApp Business API Gupshup для Битрикс24, которое доступно в маркетплейсе Битрикс24 по ссылке: https://www.bitrix24.ru/apps/?app=aiappspro.whatsapp_business_api_gupshup_subscription.
Приложение WhatsApp Business API Gupshup для Битрикс24
Подключить и настроить приложение WhatsApp Business API Gupshup поможет наша подробная пошаговая инструкция по ссылке: https://aiapps.pro/ru/wiki/whatsapp-business-api-gupshup-bitrix24.
Пошаговая инструкция: Как подключить официальный WhatsApp бизнес API через Gupshup и интегрировать с Битрикс24
Онлайн-чат Битрикс24, Битрикс24 Network и другие необходимые каналы, можно подключить по инструкциям от Битрикс24.
Подключение каналов Открытых линий в Битрикс24
2. Установка приложения для чат-ботов
Для создания и обучения чат-ботов, мы разработали приложение ChatBotDialogflow для Битрикс24, которое интегрируется с сервисом машинного обучения Dialogflow от компании Google и доступно в маркетплейсе Битрикс24 по ссылке: https://www.bitrix24.ru/apps/?app=anweb.app1.
Приложение ChatBotDialogflow для Битрикс24, которое интегрируется с сервисом машинного обучения Dialogflow от компании Google
Подключить и настроить приложение ChatBotDialogflow поможет наша подробная пошаговая инструкция по ссылке: https://aiapps.pro/chatbothandbook.
Пошаговая инструкция: Как создать чат-бота для бизнеса
3. Реализация мультиязычности
Агенты в Dialogflow поддерживают мультиязычность. Мы создали новый агент с английским языком по умолчанию и добавили дополнительные языки: русский, португальский и испанский. При создании интента, он дублируется сразу для всех языков.
Агенты в Dialogflow поддерживают мультиязычность
Перед нами стояла задача, определять язык сообщения от пользователя при передаче сообщения из Битрикс24 в Dialogflow и передавать вместе с сообщением код языка, для того, чтобы в Dialogflow срабатывали интенты нужного языка.

Для этого в приложение ChatBotDialogflow мы добавили новую функцию определения языка сообщения на основе сервиса перевода от компании Google.
4. Реализация меню готовых ответов на частые вопросы
Так как в WhatsApp Business API пока нет функционала для создания кнопок в сессионных сообщениях (сообщения, отправляемые в течении 24-х часов с момента отправки пользователем последнего сообщения; кнопки можно создавать только в шаблонных сообщениях и их количество может быть не более 3-х), то реализовать меню можно только в текстовом виде, где выбор пункта меню происходит отправкой пользователем в чат соответствующей цифры.
Пример текстового меню в WhatsApp
При отправке цифры у нас возникла задача, как определить язык диалога, в текущем сообщении которого только цифры. Мы нашли решение и добавили в приложение ChatBotDialogflow соответствующую функцию для этого.
5. Реализация автоматического перевода диалога на сотрудников поддержки без удаления бота из чата
По умолчанию, в бот-системе Битрикс24, перевод диалога на операторов очереди Открытой линии производится отправкой пользователем цифры 0 (ноль) в чат с ботом, либо может осуществляться автоматический перевод диалога по истечении некоторого времени с момента начала диалога, которое устанавливается в настройках Открытой линии.

У нас же стояла задача, автоматически переводить диалог на сотрудников поддержки в случае, если бот не знает ответа. При этом нужно было оставлять бота в чате, но не позволять ему отвечать на сообщения сотрудников поддержки. Также, бот не должен был отвечать пользователю, если предыдущее сообщение было от сотрудника поддержки, то есть бот не должен вмешиваться в диалог между пользователем и сотрудником поддержки. Если никто из сотрудников в этот момент не может ответить, то бот должен продолжить отвечать на последующие сообщения от пользователя.

Для реализации этой задачи мы разработали и добавили в приложение ChatBotDialogflow соответствующие новые функции для этого.

Для управления этим функционалом, мы задействовали переключатель "Set this intent as end of conversation" в интентах Dialogflow. То есть, если нужно переключить диалог автоматически на сотрудников, при срабатывании какого-либо интента, то нужно в этом интенте просто включить данный переключатель.
Переключатель "Set this intent as end of conversation" в интентах Dialogflow
Для нашей задачи, мы настроили Fallback Intent (интент, который срабатывает, если бот не знает ответа).

В поле "Text Response" интента мы ввели следующий текст:
Ваше сообщение мне пока не понятно. Я же бот и еще только учусь :-)
Но я передам этот диалог специалистам нашей службы поддержки и как только появится возможность, они сразу свяжутся с Вами.
Во время ожидания ответа от наших специалистов, Вы можете продолжать отправлять мне сообщения, на которые я постараюсь ответить.
Также, этот текст был переведен на остальные языки и добавлен в соответствующие интенты для других языков.

Если переключатель "Set this intent as end of conversation" включить в интенте приветствия, то сотрудникам будет приходить уведомление о начале диалога бота с пользователем и появится возможность присоединиться к диалогу в любой момент.

Мы получили прозрачную систему, где все диалоги бота с пользователем находятся под контролем и всегда можно внести в них коррективы.
6. Обучение чат-бота
Обучение производится на стороне сервиса Dialogflow путем добавления и корректировок интентов. Подробнее об этом в нашей инструкции по ссылке: https://aiapps.pro/chatbothandbook#rec212957374.
Интенты в Dialogflow
Резюме
В итоге мы получили мультиязычную автоматизированную систему поддержки пользователей 24/7 во всех часовых поясах со следующими результатами запуска в работу:

  • Нагрузка на сотрудников поддержки заметно снизилась.
  • Возросла конверсия пробного использования в постоянное за счет получения пользователями моментальных ответов на частые вопросы и возможность оперативного подключения к диалогам сотрудников поддержки.
  • Реализация мультиязычности чат-бота и поддержка любых каналов коммуникации, в частности самого популярного во всем мире мессенджера WhatsApp, позволили расширить границы и повысить эффективность нашего бизнеса.
Made on
Tilda