Conecta el agente de IA de n8n
Pasos para conectar el agente de IA de n8n a WhatsApp mediante los webhooks y las API de Chakra
Conectar un bot de IA de n8n a WhatsApp
En este artículo, veremos cómo conectar un bot o agente de IA de n8n a WhatsApp. Para ello, usaremos las API de WhatsApp y los webhooks que proporciona Chakra Chat.
Al finalizar, podrás tener un agente de chat completo de n8n que responderá las consultas de los usuarios en tu número de WhatsApp conectado a la nube.
Requisitos previos
A) Supondremos que ya tienes una cuenta de n8n Cloud o que tienes n8n alojado en algún lugar accesible desde la internet pública.
B) También necesitas una cuenta de Chakra Chat y haber conectado WhatsApp. Si aún no lo has hecho, sigue estos pasos:
Ten en cuenta que también puedes crear este bot con una cuenta gratuita de Chakra Chat. 🎉
C) También necesitarás una cuenta de OpenAI y una clave de OpenAI, ya que usaremos OpenAI como proveedor de IA. Puedes registrarte para obtener una cuenta de desarrollador de OpenAI desde esta página.
1. Configura el activador de webhook en n8n
1.1 Inicia sesión en tu cuenta de n8n
Crea un flujo de trabajo haciendo clic en el botón "Create Workflow" en la esquina superior derecha del panel principal de n8n.

1.2 Agrega el primer paso
Haz clic en el nodo "Agregar primer paso" y selecciona el activador "Al recibir una llamada de webhook" .

1.3 Configura la URL del webhook de prueba
1.3.1 La página de configuración del activador de webhook debería estar abierta. Haz clic en la URL del webhook de prueba para copiarla al portapapeles.

1.3.2 Abre tu cuenta de Chakra Chat y ve a la página Configuración de WhatsApp ; haz clic en la pestaña Más .

1.3.3 Desplázate hacia abajo y haz clic en el interruptor debajo de "Habilitar webhook de paso".

1.3.4 Pega la URL del webhook de prueba de n8n que copiaste en el campo de entrada debajo de "URL del webhook de paso".

1.3.5 Haz clic en el botón Guardar en la esquina superior derecha de la página de configuración de WhatsApp para guardar la configuración.

1.4 Prueba nuestra integración
1.4.1 Vuelve a n8n y cambia el método HTTP del activador a POST desde la página de configuración del webhook.

1.4.2 Haz clic en el botón "Escuchar evento de prueba".

1.4.3 Debemos enviar un mensaje al número de WhatsApp desde el número de WhatsApp de otro usuario para que se genere un evento de webhook de prueba.

1.4.4 Ahora deberías ver en la página de configuración del activador de n8n el evento de webhook correspondiente al mensaje que acabas de enviar, como se muestra en la siguiente captura de pantalla. Si no ves ningún evento, revisa todos los pasos anteriores y verifica la configuración.

1.4.5 Muy bien, ahora estamos listos para configurar un agente de IA. Haz clic en "Volver al lienzo" y guarda rápidamente todo el progreso que llevas en el flujo de trabajo.
2. Configura un agente de IA
Ahora configuraremos un agente de IA de OpenAI en n8n.
2.1 Haz clic en el botón más junto al activador de webhook en el editor de flujos de trabajo de n8n. Se abrirá un panel a la derecha con opciones de nodos. Haz clic en "IA" para ver todas las opciones de nodos de IA.

2.2 Haz clic en Agente de IA para seleccionar y agregar un nodo de agente de IA.

2.3 La página de configuración del nodo de agente de IA debería estar abierta.

2.4 Haz clic en el menú desplegable de "Fuente para el prompt (mensaje del usuario)". De forma predeterminada, está configurado para recibir una entrada de chat, pero debemos conectarlo a la entrada del activador de webhook. Haz clic en la opción "Definir abajo".

2.5 La pestaña Entrada del lado izquierdo muestra el objeto JSON completo enviado mediante el webhook. Busca el mensaje que enviaste en la entrada del lado izquierdo, y haz clic en él y arrástralo hasta el cuadro de texto del prompt.

2.6 Ahora configuremos el modelo de chat. Haz clic en el botón más debajo de la opción "Modelo de chat" en la parte inferior de la página.

2.7 Se abrirá un submenú a la derecha con una lista de modelos de IA disponibles. Busca OpenAI y haz clic para seleccionarlo.

2.8 Ahora debería estar abierta la página de configuración del subnodo de OpenAI. Aquí debemos configurar las credenciales de OpenAI. Si ya están disponibles, selecciónalas; de lo contrario, haz clic en crear credenciales nuevas e ingresa una clave de API de OpenAI.


2.9 Ahora podemos volver al lienzo haciendo clic en "Volver al lienzo" y hacer clic en "Ejecutar flujo de trabajo" para probar la configuración hasta ahora. Esto hará que el flujo de trabajo empiece a escuchar eventos en el webhook de prueba.

2.10 Abre tu cuenta de WhatsApp de usuario final y envía un mensaje a tu número de WhatsApp conectado. No recibirás una respuesta, pero deberías ver los registros de la respuesta de OpenAI en el nodo de agente de IA. El nodo también debería aparecer con un borde verde, lo que indica que se ejecutó correctamente.
Si no ves una ejecución correcta, revisa la configuración siguiendo de nuevo los pasos anteriores.

3: Envía la respuesta de IA al usuario
Ahora que nuestro agente de IA puede responder las consultas de chat entrantes, empecemos a enviar las respuestas por WhatsApp.
3.1 En el editor de flujos de trabajo de n8n, haz clic en el botón + a la derecha del nodo de agente de IA. Se abrirá el menú de selección de nodos. En la barra de búsqueda, escribe "solicitud HTTP" y haz clic en el tipo de nodo Solicitud HTTP .

3.2 Configura el nodo de solicitud HTTP para enviar un mensaje mediante la API de envío de mensajes de WhatsApp.
Puedes encontrar información sobre esta API en esta documentación de la API. La configuración debería ser similar a la siguiente:
- Método: POST
- URL:
https://api.chakrahq.com/v1/ext/plugin/whatsapp/{{chakraPluginId}}/api/v22.0/{{whatsappPhoneNumberId}}/messages

- Encabezados:
Authorization: Bearer {{chakraAccessToken}}

- Cuerpo: Debe ser de tipo JSON

- Cuerpo: El objeto JSON completo debería tener este aspecto

Los datos de entrada necesarios para configurar la API anterior se encuentran en tu cuenta de Chakra Chat. A continuación, encontrarás una breve descripción:
Encuentra chakraPluginId
En la página de configuración de Chakra Chat - WhatsApp, ubica el ícono de tres puntos junto al botón Guardar, en la esquina superior derecha. Haz clic en él y luego en el botón "Copy Plugin Id". El ID del plugin se copiará y podrás pegarlo donde lo necesites.
Encuentra whatsappPhoneNumberId
En la página de configuración de Chakra Chat - WhatsApp, haz clic en el ícono de engranaje junto a "📞 WhatsApp Phone Numbers". En el panel que se abre, encontrarás el ID de Meta de cada número de teléfono en la columna del número de teléfono.
Obtén chakraAccessToken
Para poder usar las API de Chakra, primero debes crear una clave de API para tu caso de uso en la sección API Keys de Chakra Chat.
Crea una clave de API
Para crear una clave de API, debes proporcionar la siguiente información:
- Nombre: nombre de la clave. Usa un nombre descriptivo. Esto facilita la administración de las claves.
- Descripción (opcional): descripción de las claves de API
- Rol de acceso: elige un
rolepara la nueva clave de API. La clave de API heredará los privilegios del rol asignado y estará limitada por ellos. Asegúrate de que las claves de API expuestas públicamente tengan el rol con los menos privilegios necesarios para realizar la tarea.
Después de crear una clave de API, encontrarás chakraAccessToken en la sección "Access Tokens" de la clave de API creada.
3.3 Después de configurar la solicitud HTTP, vuelve al Canvas y haz clic en el botón para ejecutar el paso, ubicado sobre el nodo de solicitud HTTP. Si todo está configurado correctamente, el nodo debería ejecutar el paso sin problemas y recibirás el resultado de prueba de OpenAI en la cuenta de WhatsApp del usuario final 🥳
4. Publica el flujo de trabajo
4.1 Guarda tu flujo de trabajo y márcalo como activo.

4.2 Haz doble clic en el webhook y haz clic en Production URL, debajo de webhook URLs. Luego, haz clic en la URL para copiarla.

4.3 Ahora abre tu cuenta de Chakra Chat y ve a la página de configuración de WhatsApp. Luego, haz clic en la pestaña More. Pega la URL del webhook que copiaste en el cuadro de entrada debajo de "URL del webhook de transferencia".

4.4 Haz clic en Guardar en la esquina superior derecha de la página para guardar esta configuración. Ahora, los eventos de WhatsApp se enviarán a la URL del webhook de producción.
Conclusión
¡Eso es todo! Ahora puedes probar tu bot y luego modificar el agente para resolver casos de uso más complejos. El agente de IA descrito anteriormente es bastante básico. Para casos de uso prácticos, tendrás que agregar otros elementos, como memoria o procesamiento de imágenes. Pero el principio básico sigue siendo el mismo.
Apéndice
A. Agrega una condición if para filtrar los eventos que no sean mensajes
El webhook de transferencia suele recibir muchos eventos de WhatsApp; algunos son eventos de mensajes y otros pueden ser eventos de estado o de facturación. Lo ideal sería agregar un nodo de condición if después del nodo Webhook para filtrar los eventos que no sean mensajes.
Después de hacer lo anterior, asegúrate de cambiar la expresión del mensaje del usuario en el nodo AI Agent para seleccionar correctamente los datos del webhook. Ahora debería verse más o menos así:
{{ $('Webhook').item.json.body.entry[0].changes[0].value.messages[0].text.body }}B. Usa la memoria para llevar un registro de una conversación
En algún momento, querrás usar la memoria para llevar un registro de una conversación con un usuario. Los eventos de mensajes también contienen el número de teléfono del usuario final; este número es una excelente clave para agrupar todos los mensajes.
C. Accede a los archivos multimedia enviados por los usuarios
Es posible que quieras procesar imágenes o documentos enviados por tus usuarios. En ese caso, los eventos del webhook de WhatsApp generalmente incluirán un ID de WhatsApp Media. Puedes obtener el archivo multimedia asociado a este ID mediante esta API para mostrar archivos multimedia.