https://a.storyblok.com/f/270183/44346/b01be2bf17/ai-studio_live-agent-switch.png

Como alternar entre bot e usuário humano pelo canal de texto no AI Studio

Publicado em December 15, 2022

Tempo de leitura: 5 minutos

Vonage AI Studio oferece às empresas uma plataforma de IA conversacional do tipo “low-code/no-code” para gerenciar interações complexas com os clientes.

Independentemente do fluxo de conversa que você estiver criando, talvez seja interessante adicionar a possibilidade de que atendentes humanos intervenham e assumam o atendimento, se necessário. Como ex-designers de conversação, recomendamos enfaticamente que todas as empresas incluam essa opção de escalonamento em seus fluxos de conversação. Oferecer uma opção alternativa elegante para lidar com casos em que o agente não consiga atender à consulta do usuário ou quando o usuário final solicite falar com um atendente humano é fundamental para manter um Net Promoter Score saudável e a satisfação geral do cliente.

Escalonamento entre canais de voz e de texto

No canal de Voice, a conversa pode ser transferida por meio da nota “Rotear chamada”. Nos canais de texto, como o WhatsApp e o HTTP, podemos acionar um atendente humano usando o “Agente ao Vivo”. Nesta postagem do blog, você aprenderá como transferir a conversa para um representante humano usando o Slack.

O nó “agente ao vivo” permite que seus usuários finais interajam com agentes ao vivo sem precisar sair da conversa; o agente ao vivo também terá acesso ao histórico da conversa antes de o encaminhamento para o agente ao vivo ter sido acionado. Você pode acompanhar toda a conversa nos Relatórios do AI Studio para otimizar o desempenho do seu agente.

Live Agent RoutingLive Agent Routing

Integrar com o Slack — Veja como funciona

Observe que esta demonstração só suporta uma única sessão por vez.

A primeira coisa que precisamos fazer é criar nosso agente virtual no Studio. Vamos criar um agente para a empresa fictícia de eletrônicos “Awesome Internet Support” no canal do WhatsApp. O agente virtual ajudará o usuário final com seu caso. Quando o agente virtual perceber que é necessário suporte profissional, ele encaminhará a conversa para a equipe de suporte. Eles se comunicarão com o cliente pelo Slack, enquanto o próprio cliente permanecerá na mesma conversa do WhatsApp.

Depois de criar o fluxo do Agente Virtual e usá-lo para cumprimentar o cliente e dar início à conversa, adicionamos o ponto de saída para o encaminhamento ao Agente ao Vivo. Dessa forma, estamos acionando o nó do Agente ao Vivo.

The Virtual Agent Flow so farThe Virtual Agent Flow so far

É aqui que entra o nó “Live Agent”. Usamos esse nó para nos comunicarmos com o agente ao vivo. Há duas URLs de webhook obrigatórias que você precisa preencher. Os demais endpoints permanecerão como estão. Ignoraremos o endpoint de entrega de status neste blog.

Live AgentLive Agent

O que são esses pontos finais?

Conforme mencionado, o nó “live-agent” é um nó genérico que permite conectar-se a qualquer serviço de terceiros; por isso, você precisará criar o conector entre o AI Studio e o serviço de terceiros (no nosso caso, o Slack). Assim, criamos um conector capaz de encaminhar a solicitação de início de conversa e as solicitações de mensagens recebidas (do seu cliente para o representante ao vivo), além de enviar as solicitações de mensagens enviadas (do seu representante ao vivo para o seu cliente) e encerrar a conversa.

Endpoint flowEndpoint flow

Como conseguimos isso?

Primeiro, vamos criar o conector. Para esta demonstração, usamos o framework Nest.JS para criar facilmente a API do conector. Criamos dois endpoints para lidar com as solicitações do Studio —

Code for Start and Message EndpointCode for Start and Message Endpoint

Ambos são endpoints de Post, e extraímos as informações necessárias de cada um deles. O corpo do endpoint inicial contém informações como o ID da sessão, a transcrição completa da conversa até o momento, todos os parâmetros do sistema e também outros parâmetros que você selecionou na aba do agente ao vivo.

No endpoint da mensagem, também receberemos o ID da sessão e a mensagem (no nosso caso, esperamos apenas texto, por isso selecionamos imediatamente o campo de texto, mas também poderia ser um link para qualquer arquivo de mídia).

Na próxima etapa, vamos transferir os dados do nosso conector para o Slack.

Para isso, seguimos a documentação da API do Slack aqui. Para nossa demonstração básica, criamos um novo aplicativo no Slack e usamos o recurso “Incoming Webhooks” para enviar mensagens ao nosso aplicativo do Slack:

Slack PermissionsSlack Permissions

Encaminhamos o webhook para um canal do Slack que criamos (vgai-live-agent-test) — e chamamos esse webhook a partir do nosso conector; fizemos isso em resposta à solicitação de início de conversa e também para as solicitações de mensagens recebidas. Deveria ficar mais ou menos assim:

Route the WebHook to a ChannelRoute the WebHook to a Channel

O texto é a mensagem que você deseja enviar.

Para permitir que o atendente gerencie a conversa com o cliente e se comunique com ele pelo Slack, adicionamos um novo recurso ao aplicativo do Slack e criamos comandos com barra. Um para enviar mensagens e outro para encerrar a conversa do cliente com o atendente.

Create a New CommandCreate a New Command

Adicionamos mais dois endpoints ao conector:

An Additional 2 EndPointsAn Additional 2 EndPoints

  • O endpoint slack/message está conectado ao comando /vgai-message.

  • O endpoint slack/end está conectado ao comando /vgai-complete.

Nesta demonstração, enviamos mensagens de texto de volta ao usuário, então deve ficar assim:

Send Text Messages back to the UserSend Text Messages back to the User

Agora, depois de termos feito a integração para iniciar a conversa e enviar mensagens do cliente para o atendente ao vivo:

Integration 1Integration 1

E também conseguimos enviar mensagens de volta ao cliente e encerrar a conversa:

Integration 2Integration 2

Agora podemos testá-lo de ponta a ponta

O cliente reclama do Wi-Fi e o assistente virtual decide que é necessário um suporte profissional de TI:

Customer ScenarioCustomer Scenario

Nesse momento, o Nodo do Agente ao Vivo aciona o endpoint “iniciar conversa” do conector. O conector aciona um webhook para o aplicativo Slack, e o representante ao vivo pode visualizar a conversa com o assistente virtual, além de quaisquer informações adicionais que desejarmos selecionar:

TranscriptionTranscription

Agora, o atendente poderá se comunicar com o cliente usando o comando com barra /vgai-message

Live Representative CommunicatingLive Representative Communicating

E o cliente receberá a mensagem no seu canal do WhatsApp:

WhatsApp Message that the customer will receiveWhatsApp Message that the customer will receive

E ambos poderão se comunicar entre si, utilizando seus próprios canais:

Communicating with their own channelsCommunicating with their own channels

Communicating with their own channels part 2Communicating with their own channels part 2

Agora, no momento em que o representante ao vivo executar o comando /vgai-complete, a conexão será encerrada e o VA poderá assumir o controle novamente:

Live Representative running the commandLive Representative running the command

Os VA que assumem o controle da conversa:

VA taking control of the conversationVA taking control of the conversation

Toda a conversa pode ser gravada e visualizada para fins de otimização na aba “Relatórios de Chamadas” do AI Studio.

Everything can be recorded in AI StudioEverything can be recorded in AI Studio

Mais três dicas profissionais antes de encerrarmos:

  1. Configurações adicionais no nó do agente ativo: Additional settings in the live agent nodeAdditional settings in the live agent node

    • Escolha se deseja exibir a conversa com o agente ao vivo

    • Escolha quais parâmetros queremos passar ao conector no endpoint de início da conversa

    • Configure por quanto tempo vamos esperar pela resposta de um atendente ao vivo

  2. Melhor prática — Certifique-se de avisar ao usuário final que ele está sendo encaminhado para um atendente ao vivo antes de transferir a conversa. Você pode fazer isso usando o nó “Enviar mensagem”.

  3. Se você quiser enviar arquivos de mídia para o agente ao vivo , isso só é possível no canal do WhatsApp. Consulte a lista de tipos de mídia compatíveis abaixo:

    • Imagens - jpg, jpeg e png.

    • Áudio — aac, m4a, amr, mp3 e opus

    • Video - mp4 e 3gpp. (Observação: apenas os codecs de vídeo H.264 e de áudio AAC são compatíveis.)

    • Arquivo - zip, csv e pdf.

Para saber mais sobre os tipos de mídia compatíveis, acesse esta página.

Tão animados quanto nós? Acesse AI Studio para adicionar esse nó ao seu fluxo.

Se você tiver dúvidas ou sugestões, junte-se a nós no Slack dos desenvolvedores da Vonage ou envie seus sugestões pelo AI Studio. Obrigado pela leitura e boa exploração!

Compartilhar:

https://a.storyblok.com/f/270183/400x400/4daed9a53c/luisa-onnebrink.png
Luisa Onnebrink

With over 5 years of experience in Conversation Design, Luisa deployed hundreds of conversational AI projects for Vonage AI. Now a Product Education Manager for the AI Studio, she's trying to turn everyone into AI enthusiasts by educating them on the capabilities and benefits of the product.