Conecte o agente de IA do n8n
Etapas para conectar o agente de IA do n8n ao WhatsApp usando webhooks e APIs do Chakra
Conectando um bot de IA do n8n ao WhatsApp
Neste artigo, vamos explorar como conectar um bot ou agente de IA do n8n ao WhatsApp. Para isso, usaremos as APIs e os webhooks do WhatsApp fornecidos pelo Chakra Chat.
Ao final deste processo, você deverá ter um agente de chat completo do n8n respondendo às perguntas dos usuários no seu número do WhatsApp conectado à nuvem.
Pré-requisitos
A) Vamos supor que você já tenha uma conta na nuvem do n8n ou que tenha o n8n hospedado em algum lugar acessível pela internet pública.
B) Você também precisa ter uma conta do Chakra Chat e já ter conectado o WhatsApp. Caso ainda não tenha feito isso, siga as etapas abaixo:
Observe também que você pode criar este bot com uma conta gratuita do Chakra Chat. 🎉
C) Você também precisará de uma conta e uma chave da OpenAI, pois usaremos a OpenAI como nosso provedor de IA. Você pode se inscrever para criar uma conta de desenvolvedor da OpenAI nesta página.
1. Configure o gatilho de webhook no n8n
1.1 Faça login na sua conta do n8n
Crie um novo fluxo de trabalho clicando no botão "Criar fluxo de trabalho" no canto superior direito do painel principal do n8n.

1.2 Adicione a primeira etapa
Clique no nó "Adicionar primeira etapa" e selecione o gatilho "Ao receber uma chamada de webhook" .

1.3 Configure a URL de teste do webhook
1.3.1 A página de configuração do gatilho de webhook deve estar aberta. Clique na URL de teste do webhook para copiá-la.

1.3.2 Abra sua conta do Chakra Chat e acesse a página Configuração do WhatsApp . Clique na aba Mais .

1.3.3 Role a página para baixo e clique no botão de alternância abaixo de "Ativar webhook de encaminhamento".

1.3.4 Cole a URL de teste do webhook do n8n que você copiou no campo abaixo de "URL do webhook de encaminhamento".

1.3.5 Clique no botão Salvar no canto superior direito da página de configuração do WhatsApp para salvar as configurações.

1.4 Teste a integração
1.4.1 Volte ao n8n e altere o método HTTP do gatilho para POST na página de configuração do webhook.

1.4.2 Clique no botão "Aguardar evento de teste".

1.4.3 Precisamos enviar uma mensagem para o número do WhatsApp usando o número de outro usuário do WhatsApp, para gerar um evento de teste do webhook.

1.4.4 Na página de configuração do gatilho do n8n, você deverá ver o evento de webhook correspondente à mensagem que acabou de enviar, como na captura de tela a seguir. Se não aparecer nenhum evento, revise as etapas anteriores e verifique sua configuração.

1.4.5 Pronto, agora podemos configurar um agente de IA. Então, clique em "Back to Canvas" e salve rapidamente todo o progresso feito até aqui no seu fluxo de trabalho.
2. Configurar um agente de IA
Agora vamos configurar um agente de IA da OpenAI no n8n.
2.1 Clique no botão + ao lado do gatilho de webhook no editor de fluxo de trabalho do n8n. Um painel deverá abrir à direita com as opções de nós. Clique em "AI" para exibir todas as opções de nós de IA.

2.2 Clique em AI Agent para selecionar e adicionar um nó AI Agent.

2.3 A página de configuração do nó AI Agent deverá estar aberta agora.

2.4 Clique no menu suspenso de "Source for Prompt (User Message)". Por padrão, ele está configurado para receber a entrada do chat, mas precisamos conectá-lo à entrada do gatilho de webhook. Então, clique na opção "Define below".

2.5 A guia Input, no lado esquerdo, mostra o objeto JSON completo enviado pelo webhook. Localize a message enviada na entrada do lado esquerdo e clique nela e arraste-a para a caixa de texto Prompt.

2.6 Agora vamos configurar o modelo de chat. Clique no botão de adição abaixo da opção "Chat Model" na parte inferior da página.

2.7 Um submenu deverá abrir à direita com uma lista de modelos de IA disponíveis. Pesquise OpenAI e clique para selecioná-la.

2.8 A página de configuração do subnó OpenAI deverá estar aberta agora. Aqui, precisamos configurar as credenciais da OpenAI. Se elas já estiverem disponíveis, selecione-as. Caso contrário, clique em create new credentials e informe uma chave de API da OpenAI.


2.9 Agora podemos voltar à tela do canvas clicando em "Go back to canvas" e clicar em "Execute Workflow" para testar a configuração até aqui. Isso fará com que o fluxo de trabalho comece a escutar eventos no webhook de teste.

2.10 Abra sua conta de WhatsApp de usuário final e envie uma mensagem para o seu número de WhatsApp conectado. Você não receberá uma resposta, mas deverá ver os registros da resposta da OpenAI no nó AI Agent. O nó AI Agent também deverá ficar contornado em verde, indicando que a execução foi bem-sucedida.
Se a execução não tiver sido bem-sucedida, revise sua configuração refazendo as etapas anteriores.

3: Enviar a resposta da IA para o usuário
Agora que nosso agente de IA consegue responder às mensagens recebidas no chat, vamos começar a enviá-las pelo WhatsApp.
3.1 No editor de fluxo de trabalho do n8n, clique no botão + à direita do nó AI Agent. O menu de seleção de nós será aberto. Na barra de pesquisa, digite "HTTP request" e clique no tipo de nó HTTP Request .

3.2 Configure o nó HTTP Request para enviar uma mensagem pela API de envio de mensagens do WhatsApp.
Você encontra os detalhes sobre essa API nesta documentação da API. A configuração deve ser parecida com a abaixo:
- Método: POST
- URL:
https://api.chakrahq.com/v1/ext/plugin/whatsapp/{{chakraPluginId}}/api/v22.0/{{whatsappPhoneNumberId}}/messages

- Cabeçalhos:
Authorization: Bearer {{chakraAccessToken}}

- Corpo: deve ser do tipo JSON

- Corpo: o objeto JSON completo deve ser assim

As informações necessárias para configurar a API acima estão disponíveis na sua conta do Chakra Chat. Veja a seguir uma breve descrição de cada uma:
Encontrar chakraPluginId
Na página de configuração do WhatsApp do Chakra Chat, localize o ícone de três pontos ao lado do botão de salvar, no canto superior direito. Clique nele e, em seguida, clique no botão "Copy Plugin Id". O ID do plugin será copiado e você poderá colá-lo onde precisar.
Encontrar whatsappPhoneNumberId
Na página de configuração do WhatsApp do Chakra Chat, clique no ícone de engrenagem ao lado de "📞 WhatsApp Phone Numbers". No painel que abrir, você encontrará o Meta ID de cada número de telefone na coluna de números.
Obter chakraAccessToken
Para usar as APIs do Chakra, primeiro você precisa criar uma chave de API para o seu caso de uso na seção API Keys do Chakra Chat.
Criar uma chave de API
Para criar uma chave de API, você precisa informar os seguintes dados:
- Nome - Nome da chave. Use um nome significativo. Isso facilita o gerenciamento das chaves.
- Description (opcional) — descrição das chaves de API
- Access Role — escolha uma
rolepara a nova chave de API. A chave de API herdará os privilégios concedidos à função atribuída e ficará limitada a eles. Verifique se as chaves de API expostas publicamente têm a função com os menores privilégios necessários para realizar a tarefa.
Depois de criar uma chave de API, você encontrará o chakraAccessToken na seção "Access Tokens" da chave de API criada.
3.3 Depois de configurar o HTTP Request, volte ao Canvas e clique no botão de execução da etapa acima do nó HTTP Request. Se tudo estiver configurado corretamente, o nó deverá executar a etapa sem problemas, e você receberá a resposta de teste da OpenAI na conta de WhatsApp do usuário final 🥳
4. Publicar o fluxo de trabalho
4.1 Salve seu fluxo de trabalho e marque-o como ativo.

4.2 Clique duas vezes no webhook e clique em Production URL, em webhook URLs. Em seguida, clique na URL para copiá-la.

4.3 Agora, abra sua conta do Chakra Chat e acesse a página de configuração do WhatsApp. Em seguida, clique na guia more. Cole a URL do webhook copiada no campo abaixo de "URL do webhook de encaminhamento".

4.4 Clique em Save no canto superior direito da página para salvar essa configuração. Agora, os eventos do WhatsApp serão enviados para a URL do webhook de produção.
Conclusão
Pronto! Agora você pode testar seu bot e, em seguida, modificar o agente para resolver casos de uso mais complexos. O agente de IA descrito acima é bastante básico. Para casos de uso práticos, você precisará adicionar outros recursos, como memória ou processamento de imagens. Mas o princípio básico continua o mesmo.
Apêndice
A. Adicionar uma condição if para filtrar eventos que não sejam de mensagens
O webhook de encaminhamento geralmente recebe muitos eventos do WhatsApp; alguns são eventos de mensagem, enquanto outros podem ser eventos de status ou de cobrança. O ideal é adicionar um nó de condição if após o nó Webhook para filtrar os eventos que não sejam de mensagens.
Depois de fazer isso, lembre-se de alterar a expressão do prompt do usuário no nó AI Agent para selecionar corretamente os dados do webhook. Ela ficará mais ou menos assim:
{{ $('Webhook').item.json.body.entry[0].changes[0].value.messages[0].text.body }}B. Usar memória para acompanhar uma conversa
Em algum momento, você vai querer usar memória para acompanhar uma conversa com um usuário. Os eventos de mensagem também incluem o número de telefone do usuário final; esse número é uma ótima chave para agrupar todas as mensagens.
C. Acessar mídias enviadas pelos usuários
Talvez você queira processar imagens ou documentos enviados pelos seus usuários. Nesse caso, os eventos de webhook do WhatsApp geralmente incluem um ID de mídia do WhatsApp. Você pode buscar a mídia associada a esse ID usando esta API de consulta de mídia.