Webhooks
Los webhooks permiten a IvozProvider notificar eventos de llamada a servicios HTTP externos en tiempo real. Cada vez que se produce un evento suscrito en una llamada coincidente, IvozProvider envía una petición HTTP POST al endpoint configurado con un payload JSON personalizable.
Consejo
Los webhooks se pueden habilitar por marca a través de Funciones.
Campos configurables
- Nombre
Se utiliza para identificar este webhook.
- Descripción
Texto libre opcional que describe el propósito del webhook.
- URL
Endpoint que recibirá la petición HTTP
POSTcada vez que se dispare un evento suscrito.- Dirección
Restringe el webhook a las llamadas de una dirección determinada:
Entrante: solo llamadas entrantes.
Saliente: solo llamadas salientes.
Ambos: llamadas entrantes y salientes (por defecto).
Eventos
Cada webhook se suscribe a uno o más eventos de llamada. Se envía una petición POST cada vez que se produce un evento suscrito en una llamada coincidente:
- Inicio
Se envía cuando se inicia una nueva llamada.
- Sonando
Se envía cuando el destino empieza a sonar.
- Respuesta
Se envía cuando se responde la llamada.
- Fin
Se envía cuando finaliza la llamada.
- Actualizar CLID
Se envía cuando la identificación de línea del llamante (CLID) se actualiza durante la llamada.
Plantilla
El cuerpo de la petición POST se define mediante el campo Plantilla: un documento JSON válido donde las marcas {{placeholder}} se sustituyen por los valores reales de la llamada antes de enviar la petición.
Consejo
Al crear un nuevo webhook se proporciona una plantilla por defecto. Puedes adaptarla libremente siempre que el resultado sea un JSON válido.
Placeholders disponibles
Estos son los placeholders que se pueden usar en la plantilla a nivel de marca:
|
Evento que ha disparado la petición (start, ring, answer, end, updateClid). |
|
Marca de tiempo del evento. |
|
Call-ID del diálogo SIP. |
|
ID interno del cliente implicado en la llamada. |
|
Nombre del cliente implicado en la llamada. |
|
ID interno del DDI implicado. |
|
ID interno del carrier utilizado (llamadas salientes). |
|
ID interno del proveedor de DDI utilizado (llamadas entrantes). |
|
Dirección de la llamada (entrante/saliente). |
|
Número del llamante en E.164. |
|
Número del llamado en E.164. |
|
Nombre del carrier utilizado (llamadas salientes). |
|
Nombre del proveedor de DDI utilizado (llamadas entrantes). |
|
Identificador del webhook. |
Niveles de asignación
Los operadores de marca pueden definir webhooks en dos niveles diferentes:
- Nivel de cliente
Se configura en la configuración de cada cliente (sección Webhooks). Se aplica a todas las llamadas de ese cliente, independientemente del DDI implicado.
- Nivel de DDI
Se configura en un DDI concreto. Se aplica solo a las llamadas de ese DDI.
Consejo
Los placeholders y eventos disponibles son los mismos en ambos niveles; solo cambia el alcance de las llamadas coincidentes.