WhatsApp (Evolution API)

Sentinel se conecta a WhatsApp Web vía Evolution API, un bridge open-source. El pairing es por QR (mismo flujo que WhatsApp Web del browser).

¿Por qué Evolution API y no WhatsApp Business Cloud?

Evolution API permite onboarding inmediato sin aprobación previa de Meta Business Manager. Para volúmenes altos o templates marketing oficiales, el roadmap incluye Cloud API; hoy el 100% del tráfico va por Evolution.

Setup

  1. En /settings/integrationsWhatsApp Generar QR. Sentinel pide una instancia nueva al worker Evolution.
  2. Abrí WhatsApp en el teléfono que vas a usar como número del negocio → Configuración → Dispositivos vinculados → Vincular dispositivo.
  3. Escaneá el QR. La conexión se valida server-side (esperá 5–10 segundos) y la integración pasa a Connected.
Screenshot pendiente — modal con QR y instrucciones de escaneo

Permisos / requisitos

  • Un número de WhatsApp dedicado al negocio (no el personal).
  • El device debe quedar online (igual que WhatsApp Web). Si se cierra la sesión, el QR pairing tiene que regenerarse.
  • Para WhatsApp Business (la app), funciona igual; Sentinel solo necesita una sesión activa.

Qué data toca Sentinel

  • Mensajes entrantes y salientes (texto + media URL). Los media files se descargan al storage del workspace; podés desactivar esto en settings.
  • Metadata del chat (timestamp, contact phone, status).
  • NO toca: status, calls, lists, broadcasts globales.

Flujo de datos

Mensaje inbound → Evolution worker → webhook firmado HMAC → API Sentinel /api/integrations/evolution/webhook → cola → sub-agents (KB Indexer, Lead Triage). La data nunca pasa por servidores de terceros además de Evolution + Sentinel.

Troubleshooting

El QR no se escanea
Suele ser el QR expirado (validez ~60s). Cerrá el modal y volvé a generar. Si persiste, reiniciá la instancia Evolution desde Troubleshooting → WhatsApp QR.
Sesión se desconecta sola
WhatsApp limita dispositivos vinculados a 4. Asegurate de no haber desvinculado Sentinel desde el teléfono. Si el dispositivo queda offline >14 días, WhatsApp lo cierra automáticamente.
Mensajes outbound “queued” pero no llegan
Casi siempre falta consent. Chequeá workspace_agent_runs con error consent_missing en la página del agent.