Saltar al contenido
Entorno de revisión. Lo que ves aquí todavía no está publicado en conexiatec.com.
Área de clientes Hablar con un especialista
  1. Inicio
  2. Servicios
  3. Integraciones
  4. Webhooks

Webhooks · Conexia Infinity

Eventos en tiempo real para tu stack

Cada vez que pasa algo relevante en la centralita —una llamada que entra, contesta, finaliza, un mensaje de voz o una grabación lista— Infinity lo notifica por HTTPS a la URL que tú elijas. Sin polling, sin retrasos: tu CRM, ERP, data warehouse o motor de IA reaccionan al instante.

  • POST JSON firmado HMAC-SHA256
  • Reintentos con backoff hasta 24 h
  • Panel con histórico, latencia y tasa de éxito
Eventos de una llamada enviados por webhook a tu endpoint La centralita Infinity genera los eventos de una llamada en orden: event_call_started al entrar, event_call_connected al contestar, event_call_finished al colgar, y después customer_interaction y call_rating, todos con el mismo linked_id. Cada evento sale como POST JSON firmado con HMAC-SHA256 hacia tu endpoint HTTPS, que lo reparte a tu CRM, a tu data warehouse y a tus automatizaciones. Si tu endpoint falla, Infinity reintenta con backoff hasta 24 horas. Centralita Infinity una llamada · mismo linked_id event_call_startedentra event_call_connectedcontesta event_call_finishedcuelga customer_interactionresumen call_ratingtarificación POST JSON firma HMAC-SHA256 reintentos hasta 24 h Tu endpoint HTTPS CRM ficha y registro Data warehouse reporting Automatización avisos y tareas esquema ilustrativo
  • Eventos de una llamada, enlazados por linked_id
  • Reintento con backoff si tu endpoint falla
Esquema ilustrativo: solo recibes los eventos que actives, y los destinos los eliges tú.

Eventos disponibles

Suscríbete solo a lo que importa

Cada evento se envía como POST JSON firmado. Tu endpoint solo recibe los eventos que hayas activado en el panel: sin ruido, sin sobrecarga.

  • Llamada iniciada

    event_call_started
    Al crear el tramo de llamada. Útil para abrir la ficha del contacto en el CRM antes incluso de descolgar.

  • Llamada contestada

    event_call_connected
    Al contestar. Marca el inicio real de conversación: arrancar timer, actualizar dashboard, pasar a agente.

  • Llamada finalizada

    event_call_finished
    Incluye duración, estado de grabación y si la atendió otra extensión. Base del registro en CRM y del pipeline a IA.

  • Llamada actualizada

    event_call_updated
    Transferencia, conferencia o cambio de número conectado. Mantiene el estado sincronizado.

  • Interacción de cliente

    customer_interaction
    Resumen consolidado al final de la llamada. Registra la interacción completa en el CRM con un único POST.

  • Buzón de voz recibido

    voicemail_received
    Hay un mensaje de voz nuevo. Crea ticket, avisa por WhatsApp/email o lanza el flujo de seguimiento.

  • Tarificación de llamada

    call_rating
    Coste y duración tarificada por llamada. Para analítica de rentabilidad, control de consumo y refacturación.

  • Cola y agentes

    queue_caller_info
    Tiempo de espera, posición, motivo de salida y agente que atendió. Para reporting de SLA, abandono y supervisor.

  • Marcador / campaña

    dialer_info
    Lead marcado, número de intentos, disposición y campaña asociada. Feedback en tiempo real al CRM de ventas.

Para qué los usan nuestros clientes

De evento telefónico a acción automática

Un webhook bien diseñado convierte la centralita en parte activa del flujo digital de la empresa. Estos son los patrones que vemos a diario en producción.

Aviso a Slack en llamadas críticas

Si una cola supera SLA o entra un número marcado como VIP, el equipo recibe un mensaje en Slack o Teams con el número, agente y tiempo de espera.

Registro en CRM al cuelgue

Al finalizar la llamada, el evento customer_interaction crea o actualiza la ficha en Zoho, HubSpot o Salesforce con duración, agente y dirección.

Ingesta a data warehouse

Cada evento se persiste en BigQuery, Snowflake o Postgres para reporting interno: volumen por agente, conversión, picos horarios y compliance.

WhatsApp tras llamada perdida

Si is_answered=false, el sistema lanza un WhatsApp al cliente con plantilla aprobada y abre tarea de devolución al comercial.

IA: transcripción + resumen

Al disparar event_call_finished con grabación disponible, el audio entra al pipeline de transcripción, resumen y extracción de tareas.

Ticket automático en soporte

Una entrada por DID de soporte genera ticket en Zendesk/Jira con número, cola, tiempo de espera y agente asignado. Trazabilidad completa.

Diseñado para integrarse de verdad

Payload claro, correlación por linked_id

Cada POST trae los campos que necesitas para identificar la llamada, el tramo y la entidad que llama. El linked_id conecta todos los eventos de una misma llamada, incluyendo tarificación y grabación posterior.

  • Call Leg Events: trazabilidad técnica por tramo (extensión, cola, conferencia).
  • Customer Interaction: consolidado comercial al finalizar la interacción.
  • Call Rating: coste y duración tarificada, correlacionable por linked_id.
  • Voicemail Received: nuevo mensaje de voz, con origen, destino y email.
  • uid
  • linked_id
  • tenant_code
  • number
  • did
  • trunk
  • state
  • direction
  • duration
  • record_status
  • queue_agent_info
  • event_time_info

Ejemplo de payload · event_call_finished

POST https://api.tuempresa.com/hooks/conexia

// Headers
Content-Type: application/json
X-Conexia-Signature: t=1715594400,v1=9a3f…
X-Conexia-Event: event_call_finished

{
  "event": "event_call_finished",
  "tenant_code": "acme",
  "uid": "1715594400.482",
  "linked_id": "1715594398.481",
  "number": "201",
  "connected_num": "+34600123456",
  "did": "+34900730650",
  "direction": "INBOUND_CALL",
  "is_pbx_user": true,
  "state": "None",
  "duration": 187,
  "record_status": "RecordingActive",
  "queue_caller_info": {
    "queue": "ventas",
    "wait_time": 14,
    "talk_time": 173,
    "reason": "agent"
  },
  "event_time_info": {
    "timestamp": 1715594587,
    "date": "2026-05-13",
    "time": "10:23:07"
  }
}

Revisamos cómo conectar tus herramientas con Conexia

Te responde un especialista de nuestro equipo. Si lo prefieres, llámanos al 900 730 650.

Cómo funciona · Seguridad y fiabilidad

Configuración en minutos, sin desarrollo en tu PBX

Activas el módulo desde el panel de Conexia Infinity, defines tu endpoint HTTPS y eliges qué eventos quieres recibir. Cada evento se entrega como POST JSON firmado con HMAC-SHA256 y queda registrado en el panel de entregas. Una capa de producto, no un script: las garantías que pides a una pasarela de pagos, ahora para tu telefonía.

Endpoint HTTPS bajo tu dominio

Tú expones la URL. Conexia firma cada petición con tu secreto compartido, sin abrir puertos en tu red.

Suscripción granular por evento

Activas solo los eventos que necesitas y cambias la selección en cualquier momento sin desplegar nada.

HTTPS + firma HMAC-SHA256

Cabecera X-Conexia-Signature con timestamp + hash. Validas que el evento viene de Conexia antes de procesarlo.

Reintentos con backoff hasta 24 h

Reentrega automática ante 5xx, timeouts o caídas, y cola de morgue accesible desde el panel. Sin pérdida silenciosa de eventos.

Idempotencia con uid

Cada evento trae un uid único. Si llega dos veces, tu sistema lo descarta sin generar tareas duplicadas.

Panel de entregas en Infinity

Histórico por evento, latencia, código HTTP, payload completo y reintento manual. Auditoría para soporte y compliance.

El equipo técnico de Conexia te acompaña en el diseño del flujo, prueba en sandbox y despliegue en producción. Referencia técnica en la documentación de Webhook.

Webhooks vs API REST

Push para reaccionar, pull para consultar

No es uno u otro: la mayoría de integraciones serias combinan webhooks (push) para reaccionar a eventos en tiempo real con API REST (pull) para consultas puntuales y operaciones administrativas.

Webhooks (push) · tiempo real

La centralita te avisa cuando algo ocurre. Latencia de segundos: tu CRM reacciona antes de que el agente cuelgue. Sin polling, cero carga inútil sobre tu infra y la nuestra, y un modelo event-driven que cuadra con automatizaciones, IA y mensajería. A cambio, necesitas exponer un endpoint HTTPS validando la firma HMAC.

API REST (pull) · consultas

Tú preguntas a la centralita cuando lo necesitas: lecturas históricas (llamadas, agentes, colas, extensiones) y operaciones administrativas (crear extensión, asignar DDI, mover usuarios), sin exponer nada hacia internet. Para tiempo real, polling = latencia + carga: ahí ganan los webhooks.

Ver la API REST

Preguntas frecuentes

Lo que preguntan los equipos técnicos

Dudas habituales antes de integrar webhooks de Conexia en tu backend. Si te queda alguna, llámanos al 900 730 650.

¿Cómo valido la firma HMAC-SHA256?

Cada POST trae la cabecera X-Conexia-Signature con formato t=<timestamp>,v1=<hash> . Calculas HMAC_SHA256(secret, timestamp + "." + raw_body) y comparas con timing-safe contra v1 . Si difieren o el timestamp tiene más de 5 minutos, rechazas el evento. Te entregamos snippet de ejemplo en Node, Python y PHP.

¿Qué pasa si mi endpoint está caído cuando llega un evento?

Si responde 5xx, timeout o se desconecta, Conexia reintenta con backoff exponencial durante hasta 24 horas . Cada intento queda registrado en el panel con código HTTP y latencia. Pasadas las 24 h sin éxito, el evento entra en una cola de "morgue" desde la que puedes reentregar manualmente. Para que un evento se considere entregado correctamente tu endpoint debe responder un 2xx en menos de 10 segundos.

¿Cómo evito procesar el mismo evento dos veces?

Cada evento incluye uid único e inmutable. La forma estándar es persistirlo en una tabla con índice único: si la inserción falla por duplicado, descartas el procesamiento. Es el patrón que usan Stripe, Shopify y la mayoría de pasarelas de eventos. Combinado con linked_id , puedes además correlacionar todos los eventos de una misma llamada (tramos, tarificación, grabación).

¿En qué orden llegan los eventos de una misma llamada?

El orden lógico es event_call_started → event_call_connected (si contesta) → event_call_updated (en caso de transferencia o cambio) → event_call_finished . Posteriormente puede llegar customer_interaction (resumen) y call_rating (tarificación, suele venir minutos después). La red no garantiza orden estricto entre POSTs independientes: usa siempre los timestamps del payload ( event_time_info ) y el uid para reconstruir la secuencia.

¿Qué eventos llegan en una llamada de cola con varias extensiones?

Los Call Leg Events solo se disparan para extensiones registradas en la PBX. Si una llamada hace sonar 10 extensiones pero solo 2 están registradas, recibirás eventos para esas 2 — más el customer_interaction final con el resumen consolidado y el campo extension apuntando a la que efectivamente atendió.

¿Puedo filtrar eventos por extensión, cola o DID?

Sí. En el panel defines reglas de enrutado: por familia de evento, por DID, por cola o por extensión. Puedes apuntar diferentes eventos a diferentes endpoints — por ejemplo, llamadas comerciales a tu CRM y voicemails al sistema de ticketing.

¿Hay sandbox para probar antes de producción?

Sí. Te damos un tenant de prueba con eventos simulados y un endpoint público tipo webhook.site para que puedas inspeccionar payloads reales sin tocar tu infra. Cuando tu integración esté validada, movemos la configuración a tu tenant de producción.

¿Es compatible con Make, n8n o Zapier?

Sí. Cualquier plataforma que pueda recibir un POST JSON en una URL pública sirve como receptor. Tenemos plantillas listas para Make y n8n con la validación de firma HMAC ya implementada. Si usas Zapier, recomendamos un pequeño paso intermedio (Cloudflare Worker o función serverless) para validar la firma antes de entrar al zap.

Activar webhooks

Activa webhooks en tu centralita

Conexia te ayuda a diseñar el flujo, validar la firma en sandbox y desplegar en producción. Si necesitas que coordinemos directamente con tu equipo de desarrollo o integrador, también lo hacemos.

  • Sandbox con eventos simulados
  • Plantillas para Make y n8n
900 730 650