Principal Aplicativos e integrações Como integrar seu chatbot Dialogflow ao Chatwoot?

Como integrar seu chatbot Dialogflow ao Chatwoot?

Última atualização em Nov 04, 2024

Os chatbots são valiosos para muitas equipes de atendimento ao cliente, pois lidam com perguntas simples de forma eficiente, liberando os agentes humanos para questões mais complexas.

Dialogflow e Rasa.ai são plataformas líderes em NLP (Processamento de Linguagem Natural) para a criação de chatbots personalizados. Neste guia, explicaremos como criar um bot no Dialogflow e integrá-lo ao Chatwoot de maneira rápida.

Como criar um bot no Dialogflow?

Passo 1: Acesse o Console do Dialogflow

Utilizaremos o Dialogflow Essentials. Clique em "Create Agent" para iniciar a criação do seu agente.

Passo 2: Crie Intents

Você precisará definir as intenções (intents) de acordo com as respostas que deseja que o bot forneça. O projeto padrão já inclui as intenções "Default Fallback Intent" e "Default Welcome Intent".

A configuração básica do bot está concluída. Agora, vamos criar uma conta de serviço e conectá-la ao Chatwoot.

Você pode criar intents adicionais para cenários específicos. O Chatwoot suporta intents avançadas, que permitem transferências para agentes e mensagens interativas.

Passo 3: Crie uma conta de serviço

Para conectar o bot ao Chatwoot, você precisa criar uma conta de serviço no Google Cloud. Acesse o console do Google Cloud pelo ID do projeto.

Navegue até IAM & Admin -> Service Accounts e clique em "Create Service Account". Dê um nome e uma descrição à conta. Em seguida, selecione a opção "Dialogflow API Client" no menu de permissões.

Após criar a conta, vá até a aba "Keys" e clique em "Add Key". Escolha o formato JSON e clique em "Create". Baixe a chave gerada e guarde-a para uso posterior.

Configuração da Integração Dialogflow no Chatwoot

O Chatwoot tem uma integração nativa com o Dialogflow. Para conectá-lo, siga estes passos:

Passo 1: Acesse "Settings -> Applications -> Dialogflow" no Chatwoot e clique em "Configure".

Passo 2: Clique no botão "Add a new hook". Adicione o "Project ID", o arquivo de chave do projeto e uma inbox. Cole o conteúdo da chave baixada anteriormente no campo apropriado.

Pronto! A integração está completa. Teste a inbox do site para ver se o bot responde à consulta inicial.

Intents Avançadas

Criação de uma Intent de Transferência

Quando o usuário solicitar falar com um agente, o Dialogflow deve informar o Chatwoot para que um agente humano assuma a conversa. Crie uma intent chamada "Handoff Intent" com frases como "Falar com um agente". A resposta deve ser configurada como "Custom Payload" com o seguinte conteúdo:


{

  "action": "handoff"

}

Quando essa intent for acionada, o Chatwoot alterará o status da conversa para "open" e a transferirá para um agente.

Mensagens Interativas

Atualmente, as mensagens interativas são suportadas apenas na inbox do site. O Chatwoot e o Dialogflow suportam tipos como:

  • Opções (com suporte a follow-up)

  • Cartões

  • Artigos

Criação de uma Intent de Mensagem Interativa

Para criar uma mensagem interativa de opções, defina a intent com frases de treinamento e use um "Custom Payload", como no exemplo abaixo:


{

  "content_type": "input_select",

  "content": "Escolha sua comida favorita",

  "content_attributes": {

    "items": [

      {

        "value": "Eu gosto de sushi",

        "title": "Sushi"

      },

      {

        "title": "Biryani",

        "value": "Eu gosto de biryani"

      },

      {

        "title": "Pizza",

        "value": "Eu gosto de pizza"

      }

    ]

  },

  "private": false

}

Quando o usuário interagir com essa mensagem e selecionar uma opção, o Dialogflow receberá essa informação, permitindo a configuração de intents de follow-up.

Como um agente pode devolver a conversa ao bot?

Quando o bot do Dialogflow está conectado a uma inbox, as conversas começam com status "pending". Isso permite que o bot faça a triagem inicial antes de transferir a conversa para um agente. Caso o agente deseje devolver a conversa ao bot, ele pode alterar o status da conversa de volta para "pending", e o bot retomará o atendimento.