Skip to content

Webhooks de notificación de eventos

Los webhooks salientes son una forma de notificar a otra plataforma cuando se produce uno de los eventos predefinidos en el código de uContact. Cuando se produce un evento, se envía una solicitud HTTP POST a una URL específica a la plataforma de destino. Esta solicitud contiene información sobre el evento en cuestión dependiendo del tipo.

Eventos

Todos los eventos envían su información en un objeto JSON el cuál contiene información especifica de cada evento. Estos objetos JSON contienen por defecto en todos los casos la fecha y hora que se presenta el evento en el parámetro 'date' y el evento que se presento en el parámetro 'event'.

A continuación se detallará cada uno de los eventos en cuestión con un ejemplo del objeto JSON que se envía en cada caso.

AgentRingNoAnswer

Este evento se ejecuta cuando un agente no responde a una llamada en el tiempo máximo de ring configurado para la campaña.

Propiedades que se envían

  • agent: Nombre de usuario.
  • agentNumber: Interno agente.
  • agentFullName: Nombre completo agente.
  • callerIdNum: Número que llama.
  • campaign: Campaña por la que ingresa la llamada.

Ejemplo

json
{
   "event":"AgentRingNoAnswer",
   "date":"2023-48-13 06:48:51",
   "agent":"agentTest",
   "agentNumber":"9999",
   "agentFullName":"Agente Test",
   "callerIdNum":"1234",
   "campaign":"Demo<-"
}

AgentLog

Este evento se ejecuta cuando un agente inicia o cierra sesión en uContact.

Propiedades que se envían

  • agent: Nombre de usuario.
  • isLogin: Dato que solo retornara ‘true’ o ‘false’ en caso de que sea login o logoff correspondientemente.

Ejemplo

json
{
   "event":"AgentLog",
   "date":"2023-16-13 05:16:22",
   "agent":"agentTest",
   "isLogin":true
}
json
{
   "event":"AgentLog",
   "date":"2023-16-13 15:18:43",
   "agent":"agentTest",
   "isLogin":false
}

AgentBreak

Este evento se ejecuta cuando un agente se coloca o quita su estado de break.

Propiedades que se envían

  • agent: Nombre de usuario.
  • motive: Motivo de descanso.
  • isBreak: Dato que solo retornará true o false en caso de que sea un evento break o unbreak.

Ejemplo

json
{
   "event":"AgentBreak",
   "date":"2023-52-13 04:52:57",
   "agent":"AgentTest",
   "motive":"Lunch",
   "isBreak":true
}
json
{
   "event":"AgentBreak",
   "date":"2023-52-13 05:52:00",
   "agent":"agentTest",
   "motive":"Lunch",
   "isBreak":false
}

FinishInteraction

Este evento se ejecutará cuando se finalice una interacción de cualquier canal.

Propiedades que se envían

  • guid: Guid de la interacción.
  • campaign: Campaña de atención.
  • agent: Agente que atendio la interacción.
  • duration: Tiempo activo de la interacción.
  • clientId: Identificador de usuario atendido (Depende del canal)
  • channel: Canal por el cual se atendió la interacción.

Ejemplo

json
{
   "event":"FinishInteraction",
   "date":"2023-06-13 06:06:01",
   "guid":"92bda9c4-e224-4cbf-8a01-8ca73e3a18b6",
   "campaign":"testDoc",
   "agent":"AgentTest",
   "duration":80,
   "clientId":"59894567987",
   "channel":"sms"
}
json
{
   "event":"FinishInteraction",
   "date":"2023-06-13 06:08:17",
   "guid":"a34eb6ec-e773-485d-8236-e5539bfc5eb2",
   "campaign":"testDoc",
   "agent":"AgentTest",
   "duration":60,
   "clientId":"59894567987",
   "channel":"whatsapp"
}
json
{
   "event":"FinishInteraction",
   "date":"2023-12-13 07:31:09",
   "guid":"88ab4551-840b-4306-9980-de96f7684067",
   "campaign":"Demo<-",
   "agent":"AgentTest",
   "duration":23,
   "clientId":"1234",
   "channel":"telephony"
}
json
{
   "event":"FinishInteraction",
   "date":"2023-12-13 06:21:50",
   "guid":"b5779746-f17e-4f8c-92dd-9c8597d9de51",
   "campaign":"test",
   "agent":"AgentTest",
   "duration":12,
   "clientId":"test@outlook.com",
   "channel":"email"
}
json
{
   "event":"FinishInteraction",
   "date":"2023-12-14 01:23:07",
   "guid":"5b28473b-34ef-4a26-8ba7-50e1b18584ee",
   "campaign":"Campana2",
   "agent":"AgentTest",
   "duration":29,
   "clientId":"test@test.com",
   "channel":"webchat"
}
json
{
   "event":"FinishInteraction",
   "date":"2023-12-17 10:30:58",
   "guid":"2ee76d81-f1a1-41eb-afcf-e2ea758a89c8",
   "campaign":"Campana2",
   "agent":"AgentTest",
   "duration":55,
   "clientId":"4627623942",
   "channel":"instagram"
}
json
{
   "event":"FinishInteraction",
   "date":"2023-12-30 12:50:03",
   "guid":"b6452eea-4f01-46c5-bf18-e07cbd0ac12f",
   "campaign":"Campana2",
   "agent":"AgentTest",
   "duration":55,
   "clientId":"4627623942",
   "channel":"messenger"
}

SentDisposition

Este evento se ejecutará cuando un agente tipifique una interacción de cualquier canal.

Propiedades que se envían

  • guid: Guid de la interacción.
  • campaign: Nombre de la campaña.
  • agent: Agente que tipificó la interacción.
  • data: Información proporcionada al momento de crear el lead.
  • disposition: Resultado de la tipificación del agente.

Ejemplo

json
{
  "event": "SentDisposition",
  "date": "2024-09-03 14:06:24",
  "guid": "8b4f0d9b-e86e-4704-a573-b9d6c7c5997c",
  "campaign": "Demo",
  "agent": "agentTest",
  "data": {
    "exampleId": 1234
  },
  "disposition": 0
}

uContact by net2phone