https://a.storyblok.com/f/270183/87908/5788ae95e7/amazonlex_voiceapi_1200x627.png

Conectando chamadas de voz a um bot do Amazon Lex

Publicado em March 10, 2021

Tempo de leitura: 6 minutos

As plataformas de IA atuais oferecem recursos avançados, como bots de Voice e texto, mecanismos de transcrição e mecanismos de análise de sentimento.

Esses recursos ajudam os desenvolvedores a criar bots que desempenham diversas funções, incluindo auxiliar os usuários a fazer pedidos, efetuar reservas, obter assistência em caso de problemas e muito mais.

Neste tutorial, vamos orientá-lo na configuração de um bot básico do Amazon Lex, na configuração de uma conexão de referência do Lex e em um exemplo de aplicação da Voice API da Vonage, que permitirá que você ligue para um número de telefone e interaja com o bot do Lex por meio da voz.

Na primeira seção, vamos configurar um bot do Amazon Lex como exemplo.

A seguir, vamos configurar uma conexão de referência do Lex. Essa conexão de referência do Lex permite a transmissão de áudio bidirecional da voz do chamador e das respostas do bot do Lex por meio de WebSockets. Ela também retransmite as transcrições e as pontuações de sentimento do bot do Lex para o aplicativo da Voice API.

Em seguida, vamos configurar um aplicativo de exemplo usando a Voice API da Vonage para atender uma chamada recebida, estabelecer a conexão WebSocket, receber as transcrições do chamador e do bot, além das pontuações da análise de sentimento das frases do chamador.

O diagrama abaixo apresenta uma visão geral dessa arquitetura de integração de exemplo.

A diagram that outlines how Amazon Lex and the Vonage Voice API work together to create a voice botA diagram that outlines how Amazon Lex and the Vonage Voice API work together to create a voice bot

Pré-requisitos

Para realizar as ações descritas nas etapas a seguir, você precisará de um Account na Amazon Web Services. Caso ainda não tenha um, você pode criar uma antes de começar.

Configurar um bot de exemplo do Amazon Lex

Faça login no seu AWS Management Console ou crie um Account na AWS se ainda não tiver uma.

Procure e acesse o serviço Amazon Lex; clique em Criar para iniciar o processo de configuração do bot.

The Amazon Lex service dashboardThe Amazon Lex service dashboard

Como parte do processo de configuração, será exibida a opção de criar seu próprio bot ou experimentar um exemplo. Você precisará de um bot de exemplo para este exemplo; portanto, clique em AgendarConsulta.

The Amazon Lex Bot Creation DashboardThe Amazon Lex Bot Creation Dashboard

Em seguida, você pode configurar o bot.

  • Você pode manter o nome padrão do bot ou inserir um nome diferente

  • anote o nome do bot (por exemplo, ScheduleAppointment); você precisará dele mais tarde

The Lex bot setup screen from Amazon Web ServicesThe Lex bot setup screen from Amazon Web Services

  • Selecione o idioma desejado

  • Selecionar Sim para Análise de Sentimento

  • Para este exemplo específico de bot, você pode selecionar Não para a COPPA

Assim que as configurações estiverem concluídas, clique em Criar.

Final steps in the bot setup processFinal steps in the bot setup process

Quando o processo de criação do bot estiver concluído, você verá uma tela semelhante à mostrada abaixo.

The bot has been created successfullyThe bot has been created successfully

Em seguida, para usar seu bot, você precisa publicá-lo clicando em “Publicar”. Em seguida, você será solicitado a escolher um apelido para o bot. Os apelidos são úteis para nomear diferentes versões do seu bot, como aquela que você usa para desenvolvimento ou aquela que você usa para produção.

Anote o nome do alias que você inseriu (por exemplo, staging). Você precisará dele mais tarde.

Adding an alias name to your Amazon Lex BotAdding an alias name to your Amazon Lex Bot

Ao clicar “Publicar” mais uma vez finalizará a configuração do seu bot de exemplo.

Notification that the bot has been publishedNotification that the bot has been published

Configurar a conexão com o Lex Reference

  • Clone o repositório lex-reference-connection do GitHub e siga as instruções descritas no arquivo README.

  • Selecione um dos tipos de implantação, conforme explicado na seção “Executando o código de conexão de referência do Lex”.

  • anote o LEX_REFERENCE_CONNECTION argumento (por exemplo, xxxx.ngrok.io ou myserver.mycompany.com:40000), pois você precisará dele mais tarde.

Configurar o aplicativo de exemplo da Voice API do Lex

  • Clone o repositório lex-sample-voice-Applications no GitHub e siga as instruções descritas nesse repositório.

  • Selecione um dos tipos de implantação, conforme explicado na seção “Executando o aplicativo de exemplo da Voice API do Lex”.

  • Anote o número de telefone vinculado ao seu aplicativo da Voice API, conforme explicado na seção seção “Configure as credenciais e o número de telefone do seu aplicativo da Voice API da Vonage” , pois ele será necessário para a próxima etapa.

Interaja por Voice com o Lex Bot

  • Ligue para o número de telefone vinculado ao seu aplicativo da Voice API para interagir com o bot do Lex.

  • Você verá, no console do aplicativo de conexão de referência do Lex e no console do aplicativo de exemplo da Voice API do Lex, as transcrições e os resultados da análise de sentimento.

Aprimorando o Lex Bot

Ao ligar para o bot Lex usando o número de telefone fornecido, você deve ter percebido que o bot não reproduz uma mensagem de boas-vindas, de modo que a pessoa que ligou fica sem saber ao certo quando começar a falar.
Além disso, o bot não reproduz uma mensagem de confirmação depois que você confirma verbalmente que deseja marcar a consulta.

Vamos aprimorar nosso exemplo do bot Lex, resolvendo essas duas questões.

Faça com que o Lex Bot reproduza uma saudação

No console da AWS, acesse o Amazon Lex e, em seguida, seu bot do Lex. Clique no ícone [+] ao lado de “Intents”.

The Lex DashboardThe Lex Dashboard

Em seguida, clique em “Criar intenção”.

Creating an intent for a Lex botCreating an intent for a Lex bot

Será solicitado que você digite um nome para sua nova intenção. Depois de escolher um, você pode clicar em Adicionar para prosseguir para a próxima etapa.

Entering a name for the intentEntering a name for the intent

Em Exemplos de expressões:

Digite exatamente Good morning, que atualmente está codificado no aplicativo de exemplo da Voice API do Lex como TTS reproduzido para o bot do Lex quando o WebSocket é estabelecido.

Clique no ícone [+] para adicionar a nova fala.

Adding new utterances to a Lex botAdding new utterances to a Lex bot

Em seguida, em Resposta , clique em Adicionar mensagem.

Adding a new message to the bot responderAdding a new message to the bot responder

Digite uma ou mais mensagens de saudação. O conteúdo e o número de mensagens ficam inteiramente a seu critério. Por exemplo, Oi, em que posso ajudar?, ou Olá, qual é o motivo da sua ligação?

Não se esqueça de clicar no ícone [+] para cada mensagem inserida.

Adding a message response to a Lex botAdding a message response to a Lex bot

Depois de adicionar todas as mensagens desejadas, clique em “Salvar intenção”.

Listing message responsesListing message responses

Em seguida, você precisará recompilar o bot clicando em Compilar. Após a conclusão da compilação, vá em frente e Publicar seu bot mais uma vez, como fez antes.

Será solicitado que você digite um apelido mais uma vez, e você pode usar o mesmo apelido que usou anteriormente para o bot de exemplo.

Entering 'staging' as the alias for the Lex botEntering 'staging' as the alias for the Lex bot

Testando a atualização do Lex Bot

Ligue para o número de telefone que você vinculou ao aplicativo nas etapas anteriores e você ouvirá “Aguarde, por favor”. Essa mensagem de TTS da plataforma da API da Vonage é reproduzida assim que sua chamada for atendida pela plataforma.

Assim que o WebSocket estiver configurado, a plataforma de API da Vonage reproduz a mensagem de TTS “Bom dia” para o bot do Lex (você, como chamador, não ouvirá isso).

O bot do Lex reproduz uma das mensagens de resposta (da intenção “Greeting”). Você a ouve pelo telefone, confirmando a conexão com o bot do Lex.

Você pode, então, solicitar o agendamento de uma consulta (com este bot da Lex, por exemplo).

Reproduzir uma mensagem de confirmação de agendamento

No console da AWS, acesse o Amazon Lex e, em seguida, seu bot do Lex. Clique emEditar.

Editing the Lex botEditing the Lex bot

Em Resposta, clique em Adicionar mensagem.

Adding a new message to the Lex botAdding a new message to the Lex bot

Digite uma ou mais mensagens de resposta, por exemplo:

Sua consulta para {AppointmentType} em {Date}, às {Time}, foi confirmada. Até mais!

As palavras entre chaves correspondem aos slots relacionados a essa intenção.

Em seguida, clique no ícone [+] para adicionar sua nova resposta.

Adding a new message to the Lex botAdding a new message to the Lex bot

Para finalizar sua nova mensagem, clique em Salvar intenção.

Por fim, para salvar essas alterações, clique em “Build” para recompilar o bot com as novas alterações. Em seguida, você precisará, mais uma vez, publicar uma nova versão. Você pode manter o mesmo alias das etapas anteriores.

A successfully published botA successfully published bot

Testando o Lex Bot atualizado

Para testar essas novas alterações, ligue para o número de telefone vinculado à sua Account e interaja com o bot Lex para agendar um horário. Desta vez, você ouvirá a mensagem de confirmação que acabou de configurar sendo reproduzida pelo bot Lex.

Compartilhar:

https://a.storyblok.com/f/270183/400x401/43538b1c0b/tony-chan.png
Tony ChanEngenheiro Sênior de Soluções

Engenheiro de Soluções para Clientes na Vonage. Com experiência em gestão de produtos, operações de redes e sistemas, suporte ao cliente, garantia de qualidade e gestão de equipes de desenvolvimento de software, Tony atua no setor de telecomunicações, tendo trabalhado anteriormente na França e, atualmente, nos Estados Unidos. Ele auxilia empresas globais, tanto de grande porte quanto de menor porte, a desenvolver soluções utilizando serviços de Voice programável, mensagens, Video e autenticação multifatorial.