Веб-чат Easiio с ботом Amazon Lex

2020-11-04

Чат-бот в наши дни является горячей темой, поскольку технологии искусственного интеллекта становятся все лучше и лучше. По имеющимся данным, более 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.

Теперь давайте начнем с реализации бота 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.

Настройте пример и ресурс Amazon Lex.

2. Настройте детали обработки

Выполните шаг примера Модуля 2. Обработка запросов клиентов на подписку на услуги.

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

Следуйте инструкции из модуля 2. Для завершения настройки этого бота для дорожного телефона необходимо выполнить четыре шага.

  • Добавить намерение применить международные планы к учетной записи пользователя
  • Добавить намерение подтвердить личность пользователя
  • Настройка выполнения для добавления международных планов
  • Тест полного потока
Добавьте намерение обрабатывать запросы пользователей в Amazon Lex.

По завершении этого шага мы сможем протестировать конфигурацию с помощью инструмента тестирования чата на портале 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, которую мы создали выше. Подробную конфигурацию смотрите на изображении.

Настройте шлюз Amazon 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 в редакторе ITR.

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

Настройте Curl для использования бота Amazon Lex, предоставляемого шлюзом API Amazon.

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

Чат-бот тестирует пользовательский интерфейс на демо-сайте Easiio

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

Передача чата чат-бота через шлюз Amazon API и интерфейс веб-чата Easiio

Вывод:

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

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