Чат-бот при помощи диспетчера

Пример №1. Отправка информации клиенту по нажатию на кнопку с возможностью подключения оператора.

 

В этом статье можно ознакомиться с примерами создания чат-бота при помощи правил диспетчера. Суть следующая: при каждом новом обращении пользователя (создании заявки) бот будет предлагать ему несколько вариантов кнопок, которые по нажатию предоставят соответствующую информацию без необходимости подключения оператора (например, при нажатии кнопка "Оплата", бот автоматически пришлет все необходимые данные). Если же у клиента останутся какие-либо вопросы, то он сможет подключить живого оператора нажав отдельную кнопку.

 

Для реализации такого чат-бота для начала создайте нужные кнопки в меню "Кнопки омниканальности". Для данного примера мы создали 4 кнопки с типом callback (он возвращает комментарий в заявку, по которому мы с помощью Диспетчера будет отслеживать, что кнопка была нажата):

  • Оплата;
  • База знаний;
  • Техническая документация;
  • Подключить оператора.

 

 

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

 

Обратите внимание! Значение для кнопки (telegram, встроенные в сообщения) не должно быть более чем 64 байта или 32 знака, включая пробелы. Если указанный текст в значении больше, то в заявке отобразится извещение о том, что сообщение не доставлено и будет указана ошибка - BUTTON_DATA_INVALID 

 

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

 

 

Вот как это будет выглядеть на стороне клиента в Telegram:

 

 

Как только клиент нажмет на любую из кнопок, в комментарий заявки добавится значение кнопки. Например, нажмём на кнопку "Оплата" в Telegram, и вот что отобразится в заявке:

 

 

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

 

Создадим правило, где при нажатии на кнопку "Оплата" (добавлении текста в комментарий) клиенту будет автоматически отправляться информация по стоимости продукта:

 

 

Теперь когда клиент нажмёт на Оплату, бот автоматически отправит ему информацию и предложит выбрать ему другой вопрос из списка (на ваше усмотрение):

 

 

По аналогии создайте правила для остальных кнопок. 

 

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

 

 

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

 

 

 

Пример №2. Чат-бот с запросом контактных данных пользователя.

 

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

 

Для этого кейса создадим следующий набор кнопок для Telegram бота:

  • Вопрос по товару;
  • Доставка товара;
  • Возврат товара;
  • Другое (соединить с оператором).

 

 

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

 

 

Предположим, что при нажатии на кнопку "Доставка товара" клиент хотел бы узнать статус его доставки, но для этого оператор обычно запрашивает дополнительную информацию, например: имя/фамилию клиента, номер заказа и контактный телефон. Теперь эти обязанности можно будет делегировать боту. 

 

Как и в первом примере, создадим для начала правило, которое будет приветствовать клиента при новом обращении в Telegram (т.е. при создании новой заявки):

 

 

Далее нам понадобится правило, которое будет обрабатывать нажатие кнопки "Доставка товара" и запрашивать у клиента ФИО.

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

В текущем правиле мы установим шаг "ФИО", и по значению временных полей мы будем выполнять дальнейшую проверку в следующих правилах.

 

 

Теперь создаем правила, которые будут по очереди запрашивать у клиента ФИО, номер заказа и телефона:

 

1. Правило "Кнопка Доставка товара: запись ФИО + запрос номера заказа":

 

 

Разберем немного подробнее содержимое правила:

  • в обязательных условиях проверяем, что в заявку был добавлен новый ответ;
  • в дополнительных условиях проверяем, что ответ был добавлен Клиентом и в Telegram. Временное поле "step" = "FIO", т.к. на данном шаге ожидаем, что клиент должен ввести именно ФИО;
  • после того, как клиент ответ, в действиях меняем значение поля "ФИО клиента" на содержимое последнего ответа заявки, при помощи тега {answer_last}. После чего запрашиваем у клиента номер заказа, и меняем временное поле на значение "Order_number" (номер заказа.

 

2. Правило "Кнопка Доставка товара: запись номера заказа + запрос номера телефона":

 

 

Здесь всё делаем по аналогии с предыдущим примером и продвигаемся к заполнению следующего поля.

 

3. Правило "Кнопка Доставка товара: запись номера телефона + отбивка о принятии запроса":

 

Условия:

 

 

Действия:

 

 

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

 

Также не забудем создать правило, которое будет возвращать к изначальному списку кнопок по нажатию на кнопку "Вернуться на главную":

 

 

В итоге, вот как будет выглядеть общение с чат-ботом со стороны клиента в Telegram:

 

 

И вот как это будет выглядеть внутри заявки на стороне оператора: 

 

 

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

 

Конечно же, по аналогии вы можете создавать бесконечное количество собственных вариаций чат-ботов.