Trabajo en Soy Agentia
Automatización de WhatsApp con IA sobre n8n
Diseño técnico e implementación de un flujo de automatización conversacional para WhatsApp: orquesta los eventos entrantes, el procesamiento multimodal, la conversación con un agente de IA con memoria por sesión, las integraciones con el backend y las acciones de negocio controladas.
- Dónde
- Soy Agentia
- Publicación
- Caso técnico anonimizado
- Repositorio
- picojohn/ai-whatsapp-automation
El problema
Una operación por WhatsApp mezcla formatos de mensaje distintos, el contexto de la conversación, acciones del negocio y momentos en que la automatización tiene que detenerse.
Hace falta coordinar los eventos que llegan, normalizar la entrada multimodal, conservar el contexto, invocar solo operaciones aprobadas y no responder en el momento equivocado.
La solución
n8n es la capa de orquestación entre WhatsApp/Meta, OpenAI, la memoria conversacional y las APIs del negocio: coordina el enrutamiento de los mensajes, las transformaciones, las esperas y las llamadas externas.
Los eventos entrantes se clasifican y se normalizan antes de llegar al agente de IA. El agente está conectado a un modelo de lenguaje de OpenAI, a una memoria conversacional en PostgreSQL por sesión y a herramientas HTTP controladas para las operaciones del negocio, en lugar de tener acceso libre al backend.
Su salida se limpia y se transforma antes de la ruta de envío por WhatsApp. Cuando una conversación no debe seguir como respuesta automática, hay un camino de asistencia humana.
Tipos de mensaje
- Texto
- Pasa a la conversación con el agente.
- Audio
- Se descarga de la plataforma de mensajería, se transcribe con OpenAI, se registra en el backend y se incorpora a la conversación.
- Imagen
- Se descarga, se sube al backend, se analiza con OpenAI y entra a la conversación como una descripción guardada.
- Se valida el tamaño antes de descargarlo y subirlo al backend; los que superan el límite van por una ruta aparte.
- Botones
- Las respuestas a botones se transforman antes de entrar a la conversación.
Controles de estado
- Pausa, bloqueo de la IA para el lead y estado del usuario: deciden si la automatización sigue, espera o se redirige.
- Debounce con espera y verificación del último mensaje o lote, para no responder duplicado, tarde o a destiempo cuando llegan mensajes seguidos.
- Detección de bucles.
- Rutas aparte para llamadas y eventos de eco.
Caso anonimizado: el repositorio público presenta solo la arquitectura conceptual. No incluye el flujo, la configuración interna, los prompts, los endpoints, las credenciales ni datos de clientes.