Веб-чат Easiio с ботом Amazon Lex
Чат-бот в наши дни является горячей темой, поскольку технологии искусственного интеллекта становятся все лучше и лучше. По имеющимся данным, более 80 процентов предприятий рассматривают возможность внедрения чат-бота на своем веб-сайте в ближайшем будущем. Чат-бот может сократить объем человеческой работы по поддержке и продажам, передав повторяющиеся задачи для выполнения машине, в данном случае чат-боту с искусственным интеллектом. В будущем сочетание чат-ботов с искусственным интеллектом, человеческим обслуживанием клиентов и продажами будет принято для снижения затрат на поддержку и повышения удовлетворенности клиентов. С помощью чат-бота компании могут поддерживать клиентов 24/7 и 365 дней в году без значительного увеличения стоимости.
Доступно множество замечательных платформ для ботов, таких как Amazon Lex, Microsoft Azure AI LUIS, Google DialogFlow, IBM Watson и т. д. В этом блоге мы покажем, как использовать эту платформу BOT для создания чат-бота на примере Amazon Lex.
Amazon Lex — это сервис для создания диалоговых интерфейсов в любом приложении с использованием голоса и текста. Amazon Lex предоставляет расширенные функции глубокого обучения, такие как автоматическое распознавание речи (ASR) для преобразования речи в текст и понимание естественного языка (NLU) для распознавания содержания текста, что позволяет вам создавать приложения с привлекательным пользовательским интерфейсом и реалистичным диалогом. взаимодействия.
Интеграция веб-чата Easiio и чат-бота
Easiio предоставляет облачный колл-центр, чат-бот на веб-сайте и онлайн-чат. Для чат-бота сайта и интерфейса живого чата. Он обеспечивает очень гибкую платформу приложений для интеграции с любым сторонним приложением с использованием API. Например, он может интегрироваться с CRM, программным обеспечением поддержки клиентов и практически с любым сервисом, обеспечивающим доступ к API, включая API чат-бота, такой как Amazon Lex.

Теперь давайте начнем с реализации бота Amazon Lex с веб-чатом Easiio.
В этом блоге мы просто следуем примеру семинара по обслуживанию клиентов Amazon Lex в Репозиторий GitHub. В этом примере GitHub показано использование примера конфигурации службы поддержки клиентов Amazon Lex либо с интеграцией Twilio SMS, либо с собственным Amazon Connect. В примере с GitHub есть четыре шага.
Мы выполним первые два шага для создания бота обслуживания клиентов Amazon Lex. После этого мы воспользуемся двумя немного другими шагами для завершения подключения к чат-боту веб-сайта Easiio.
1. Пример настройки Amazon Lex
На этом этапе мы завершаем первый этап работы чат-бота в Lex и позволяем ему отвечать на вопросы клиентов о покупке международного тарифного плана во время путешествия. Подробности инструкции см. ссылке. на GitHub.
Следуйте примеру GitHub, модуль 1. Создайте чат-бота в Amazon Lex и обрабатывайте информационные запросы. В этом модуле мы готовим ресурс для Lex Bot. Затем создайте бота Lex. Далее следует создание первого намерения. Настройте слоты — параметры, которые вы можете определить для сбора данных от вашего клиента. Наконец, настройте образцы высказываний. См. изображение интерфейса конфигурации Amazon Lex.

2. Настройте детали обработки
Выполните шаг примера Модуля 2. Обработка запросов клиентов на подписку на услуги.
В этом модуле вы создадите чат-бота Lex, который создали в модуле 1, и добавите ему возможности подписывать пользователей на дополнительные услуги, предлагаемые вашей компанией — в данном случае международные планы, которые вы можете добавить к существующему тарифному плану для путешествий.
Следуйте инструкции из модуля 2. Для завершения настройки этого бота для дорожного телефона необходимо выполнить четыре шага.
- Добавить намерение применить международные планы к учетной записи пользователя
- Добавить намерение подтвердить личность пользователя
- Настройка выполнения для добавления международных планов
- Тест полного потока

По завершении этого шага мы сможем протестировать конфигурацию с помощью инструмента тестирования чата на портале Amazon Lex, чтобы убедиться, что бот работает правильно.
3. Создайте API-интерфейс для бота.
Начиная с шага 3, мы немного отличаемся от примера, показывающего интеграцию с Twilio. Вместо этого мы создаем базовый HTTP-API JSON, чтобы мы могли общаться с ботом.
Следуем инструкциям этого амазона блог об интеграции Lex с любым бот-сервисом. Использование AWS API Gateway для создания конечной точки HTTPS. Выполняя эти шаги, мы предоставляем доступ к боту Lex внешним приложениям через шлюз Amazon API. Приложения могут вызывать эти API через командную строку Curl или HTTP-вызовы из приложений.
Сначала мы создаем функцию Lambda для обработки вызова API и возврата правильного формата сообщения для чата на веб-сайте Easiio. См. пример кода ниже.
var AWS = require('aws-sdk');
exports.handler = (event, context, callback) => {
try {
var time;
console.log("event: " + event.body);
if (event.body) {
var body = JSON.parse(event.body);
console.log("phone: " + body.phone);
}
// ************************
// validate and filter bad/empty messages
// ************************
if(body == null){
var error = new Error("Cannot process message without a Body.");
callback(error);
}
****************************************************************/
else {
// ************************
// Message is valid so now we prepare to pass it along to the Lex API.
// ************************
AWS.config.region = 'us-east-1';
var lexruntime = new AWS.LexRuntime();
var userNumber = body.uuid;
var message = body.text;
var params = {
botAlias: process.env.BOT_ALIAS,
botName: process.env.BOT_NAME,
inputText:message,
userId: userNumber,
sessionAttributes: {
}
};
lexruntime.postText(params, function(err, data) {
if (err) {
console.log(err, err.stack); // an error occurred
var responseMessage = '[ { "id": 1, "action": "play", "text": "Sorry, lex bot ran into a problem at our end." }]';
callback(err, responseMessage);
} else {
console.log(data); // got something back from Amazon Lex
var responseMessage = '[ { "id": 1, "action": "play", "text": "' + data.message + '" }]';
callback(null, responseMessage);
}
});
}
} catch(e) {
console.log(e);
callback(e);
}
};
Затем мы настраиваем шлюз API с точкой интерфейса для функции Lambda, которую мы создали выше. Подробную конфигурацию смотрите на изображении.

Мы можем протестировать шлюз с помощью команды Curl, как показано в примере ниже. Замените «xxxxxxx» фактическим URL-адресом с вашего портала конфигурации.
curl -v -X POST \
'https://xxxxxxxxxxx.execute-api.us-east-1.amazonaws.com/test/LexTwilioIntegration' \
-H 'content-type: application/json' \
-H 'day: Thursday' \
-d '{"uuid": "9255488396", "text": "I am traveling to Japan"}'
Он должен вернуть что-то вроде следующего, что означает, что бот правильно обращается через шлюз API.
.......
* Connection #0 to host xxxxxxxxxx.execute-api.us-east-1.amazonaws.com left intact
[ { "id": 1, "action": "play", "text": "We have 2 plans for China. Basic is $10 with 20 GB data, 100 call minutes, 100 texts. Premium is $60 with unlimited data, call and text. Which plan would you like to add?" }
4. Подключите Easiio ITR к боту Amazon Lex.
Последний шаг: нам нужно использовать открытый API-интерфейс API-шлюза, чтобы позволить API-интерфейсу бота Easiio ITR взаимодействовать с ботом Amazon Lex. Чтобы использовать плагин чата на веб-сайте Easiio для интеграции Amazon Lex Bot.
Во-первых, вам необходимо зарегистрировать учетную запись Easiio, которая бесплатна для функции чата на веб-сайте. Пожалуйста, используйте ссылка для регистрации Зарегистрироваться.
Во-вторых, настройте визуальный ITR, используя меню «Расширенная конфигурация->Визуальный IVR», чтобы создать новый ITR (интерактивный текстовый ответ). См. Инструкция ITR о том, как создать ITR. Мы используем уже созданный ITR и добавляем элемент Curl (вызов HTTP API). Curl — это вызов API к внешнему API HTTPS, ответ API будет воспроизводиться непосредственно в окнах чата в качестве ответа бота Lex.

Обязательно настройте команду Curl, чтобы указать правильный URL-адрес шлюза Amazon API, который мы создали в последнем сеансе. Кроме того, установите режим Повтор для элемента Curl. Повтор означает, что он будет неоднократно вызывать Curl до выхода из сеанса бота. Подробную информацию о конфигурации смотрите на следующем рисунке.

После настройки чат-бота мы можем протестировать его на демонстрационном сайте тестирования Easiio. https://www.easiio.com/demo. Смотрите результат тестирования ниже.

Нажмите меню «Чат-бот Amazon», затем начните с текстового сообщения «Какой план доступен?». Смотрите ход чата ниже. Он работает так, как и ожидалось, и аналогичен результатам, полученным при использовании командной строки Curl.

Вывод:
В этом блоге мы покажем, как интегрировать Amazon Lex Bot с плагином чат-бота/живого чата Easiio на веб-сайте. Он хорошо работает с относительно простыми шагами настройки. Если у вас уже настроен бот Amazon Lex, очень легко использовать чат-бот/платформу онлайн-чата Easiio, чтобы посетитель вашего сайта мог использовать бот Amazon Lex. Это означает, что вы можете создать одного чат-бота и использовать его со своим веб-сайтом, Twilio SMS, телефонным интерфейсом Amazon и многими другими каналами. Чат-бот и онлайн-чат на веб-сайте Easiio также поддерживают онлайн-чат с агентами с помощью множества алгоритмов распределения и множества расширенных функций контакт-центра. Зарегистрируйтесь бесплатно и испытайте возможности чат-бота/инструмента живого чата на веб-сайте Easiio и сделайте обслуживание клиентов и продажи вашего веб-сайта очень успешными.
Easiio также предоставляет мощное программное обеспечение для колл-центров и системы деловой телефонии. Пожалуйста, проверьте сайт и зарегистрируйтесь.