Integre as funcionalidades de mensagens interativas oferecidas pelo WhatsApp da Meta ao seu chatbot de fluxo e ofereça experiências conversacionais mais dinâmicas e eficientes.
O WhatsApp Flows é um recurso que permite a criação de fluxos conversacionais dentro do WhatsApp. Alguns exemplos incluem automação de respostas, interações condicionais e navegação entre diferentes telas de um fluxo.
Neste artigo, explicaremos como configurar um WhatsApp Flow ao seu chatbot de fluxos no Customer Cloud.
Exemplo de fluxo
O fluxo acima demonstra a utilização do WhatsApp Flow após a identificação do assunto de interesse do cliente.
Imagine que sua empresa atua no setor de seguros e que você criou um Flow no WhatsApp que permite aos usuários personalizar e contratar um plano diretamente pelo aplicativo.
No chatbot do Customer Cloud, ao receber uma mensagem do cliente, o bot inicia a interação perguntando qual é o motivo do contato. Caso o cliente selecione a opção "Contratar um seguro", ele será automaticamente direcionado para o WhatsApp Flow configurado, onde poderá seguir com o processo de personalização e adesão ao plano.
Veja o exemplo do desenvolvimento e criação do Flow no Meta:
Após compreender o caso de uso, veja agora como configurar um Flow da Meta no chatbot do Customer Cloud.
Como configurar o Whatsapp Flow no fluxo do Chatbot
O primeiro passo é criar o Flow diretamente na plataforma da Meta. Esse processo envolve a configuração do fluxo interativo dentro do WhatsApp Business, permitindo que os usuários naveguem por diferentes opções e concluam ações dentro do próprio app.
Você pode encontrar as instruções detalhadas sobre a criação de Flows na documentação oficial da Meta: WhatsApp Flows - Meta for Developers.
Após criar e configurar o Flow na Meta, siga os próximos passos para integrá-lo ao seu chatbot no Zenvia Customer Cloud.
No Construtor do bot, crie um novo bloco.
Clique em Adicionar conteúdo e selecione a opção WhatsApp Flow na lista de opções disponíveis.
Configure os atributos solicitados. Alguns desses dados devem ser obtidos diretamente na plataforma da Meta, como o ID do Flow e o token identificador.
3.1 Título (opcional): Título da mensagem de chamada para o Flow. Exemplo: Contrate seu seguro em poucos passos!
3.2 body: Corpo da mensagem de chamada para o Flow. Exemplo: Escolha o plano ideal para você e personalize sua cobertura sem sair do WhatsApp.
3.3 footer (opcional): Rodapé da mensagem de chamada para o Flow.
3.4 button: Texto do botão que irá abrir o Flow. Exemplo: Começar contratação.
3.5 id: ID único do Flow fornecido pelo WhatsApp.
3.6 token: Token identificador do Flow gerado pela marca.
3.7 mode: "draft" para fluxo em rascunho ou "published" para fluxo publicado (valor padrão: "published").
3.8 action.type: "navigate" ou "data_exchange" (valor padrão: "navigate").
3.9 action.screen: ID da primeira tela a ser exibida no fluxo. (Obrigatório se action.type for "navigate").
3.10 action.data (opcional): Dados de entrada para a primeira tela do Flow (deve ser um objeto não vazio).
Após preencher corretamente esses atributos, o chatbot poderá encaminhar os usuários para o Flow no momento apropriado dentro da conversa.
Como utilizar os dados capturados pelo WhatsApp Flow
Após um input do tipo WhatsApp Flow, o tipo de dado específico gerado fica disponível como input.flow.
Nesse dado, ficam salvas todas as informações que o usuário preencheu dentro do formulário do Flow.
Essas informações podem ser:
Visualizadas no atendimento;
Utilizadas em outros pontos do builder;
Armazenadas em variáveis de contato.
Por exemplo, se o Flow coleta dados como nome, CPF e e-mail, é possível salvar:
Todo o objeto do input:
{{input.flow}}Um campo específico:
{{input.flow.data.email}}ou{{input.flow.data.cpf}}
Exemplo de retorno:
"input": {
"flow": {
"body": "Sent",
"data": {
"cep": "00000-000",
"cpf": "00000000000",
"email": "teste@gmail.com",
"marketing_optin": true,
"name": "Teste ",
"tos_optin": true
},
"token": "9fb0e349-8b75-9faa-c85fd9e78ac6:5511516:129818005"
},
"valid": false
}É importante lembrar que esse tipo de retorno é gerado em formulários que exigem preenchimento de informações, e que o dado input.flow fica disponível apenas até o próximo input do usuário. Caso a informação não seja salva nesse momento, ela será perdida.