中文 EN
← Volver al inicio

🚨 Guía de integración de Alert Center

Conecte sus fuentes de alerta (ANPR / estacionamiento / seguridad / cualquier webhook) a Wabot Alert Center para escalada automática en 3 niveles: WA texto → WA nota de voz → llamada telefónica real.

1. Flujo general

Fuente de alerta del cliente → POST /alert/in → servidor Wabot ↓ L1: Mensaje WA (con enlace de confirmación) ↓ (sin confirmar 30s) L2: Nota de voz WA PTT (TTS) ↓ (sin confirmar 2 min) L3: Llamada Twilio real (presione 1=ack / 2=humano) ↓ (3 fallidas) Escalar al contacto #2, repetir L1→L3 ↓ (todos fallaron) Notificación de respaldo Telegram al dueño

2. Protocolo del webhook

Petición

CampoValor
MétodoPOST
URLhttps://api.gowabot.com/license/v1/alert/in
HeaderX-Alert-Token: <token> (desde superadmin tab 🎯 Fuentes)
HeaderContent-Type: application/json

Cuerpo

{
  "title":      "(requerido) título de alerta, < 500 caracteres",
  "body":       "(opcional) texto detalle, < 5000 caracteres",
  "severity":   "(opcional) info | warn | critical (por defecto según fuente)",
  "dedup_key":  "(opcional) clave de deduplicación; auto = sha1(source+title+body+payload)",
  "payload":    "(opcional) cualquier JSON, < 30KB (preserva el original)"
}

Respuesta

{ "ok": true, "event_id": 123, "status": "open", "deduplicated": false }
⚠️ Reglas de límite
• Misma dedup_key dentro de 5 min solo dispara una vez
• Por licencia: máximo 5 eventos/minuto, exceso marcado throttled
• Cap mensual events_count_cap excedido → rechazado (vea tab 📊 Cuota)

3. Tres escenarios reales

Escenario A · ANPR placa en lista negra

curl -X POST https://api.gowabot.com/license/v1/alert/in \
  -H "X-Alert-Token: SU_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "title": "🚗 Placa en lista negra 6T1234",
    "body": "SUV roja · entrada norte · 14:32:18",
    "severity": "critical",
    "payload": {
      "plate": "6T1234",
      "camera": "north_gate",
      "confidence": 0.96,
      "image_url": "https://camera.local/snap/abc.jpg"
    }
  }'

Escenario B · Estacionamiento casi lleno

curl -X POST https://api.gowabot.com/license/v1/alert/in \
  -H "X-Alert-Token: SU_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "title": "🅿️ Estacionamiento casi lleno",
    "body": "P1 ocupación 95%, solo 5 espacios libres",
    "severity": "warn",
    "payload": { "lot": "P1", "occupancy": 0.95, "free": 5 }
  }'

Escenario C · Alerta de intrusión

curl -X POST https://api.gowabot.com/license/v1/alert/in \
  -H "X-Alert-Token: SU_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "title": "🛡️ Alerta de intrusión",
    "body": "PIR del patio trasero activado, sin actividad ayer a esta hora",
    "severity": "critical",
    "payload": { "sensor": "pir_yard", "zone": "back_yard" }
  }'

4. Planes y cuotas

PlanWA textoWA voz (L2)Llamada (L3)Cap voz mensual
basic✅ ilimitado5 min de prueba5 min
pro ⭐50 min
enterprise500 min

Al 80% → vista previa Telegram al dueño; al 100% → auto degradación (omitir voz, solo WA texto).

5. Confirmación / escalada

Tras recibir el WA, el contacto toca el enlace 👉 Toque para confirmar → escalada se detiene, ack registrado
En llamada real, presione 1 = ack; presione 2 = transferencia humana (sigue escalando)

6. Obtener un webhook token

  1. Inicie sesión en admin.gowabot.com
  2. Vaya a la tab 🎯 Fuentes
  3. Pulse + Nueva fuente, elija licencia + tipo (webhook/anpr/parking/security)
  4. Después de crear, pulse ⚙️ Acciones ▾ → 📋 Copiar curl, pegue en su sistema de alerta

7. Códigos de estado

EstadoSignificado
200 + status=openAceptado, dispatcher inició escalada
200 + deduplicated=trueMisma clave en 5 min, reutiliza evento previo
200 + status=throttledLimitado (>5/min o cap mensual)
401 missing_tokenFalta header X-Alert-Token
403 invalid_tokenToken inválido o desactivado
403 license_inactiveLicencia del cliente no activa
400 invalid_titletitle falta o >500 caracteres

¿Necesita ayuda? [email protected]