Integración ITBX versión 1.0
Introducción
Para usar la integración debe solicitar unas credenciales ya que todos los métodos utilizan un token. Ese token se consigue logueándose con las credenciales y se explica en este documento.
1. Crear TOKEN mediante Login
Descripción: Crea nuestro Token de seguridad para API, por medio del servicio de login
Tipo de salida: JSON con parámetros (access_token, token_type, expires_in)
Ruta: https://api.itbx.co/api/v1/login
Método: POST
Parámetros de entrada:
- email => Requerido, String (ejemplo: prueba1@gmail.com)
- password => Requerido, String (ejemplo: 123)
Ejemplo de salida:
{
"access_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwczpcL1wvbWFuYWdlci5pdGJ4LmNvXC9hcGlJdGJ4XC9pbmRleC5waHBcL2FwaVwvdjFcL2xvZ2luIiwiaWF0IjoxNTk0Mzk5MTE3LCJ",
"token_type": "bearer",
"expires_in": 31536000
}
2. Borrar TOKEN activo
Descripción: Borra un token previamente activo desde ITBX
Tipo de salida: JSON
Ruta: https://api.itbx.co/api/v1/eliminarToken
Método: POST
Parámetros de entrada:
- token => Requerido, String (ir a API Login)
Ejemplo de salida:
{
"error": false,
"data": "Token revocado"
}
3. Envíar de un mensaje SMS hacia uno o varios destinos
Descripción: Envía de un mensaje específico de SMS a un destino o a un lote de varios destinos (lotes de máximo 100 números)
Tipo de salida: JSON array con parámetros para cada teléfono (tel, msg, error, code). Cada teléfono tiene una respuesta: "error" = false si se lleva a cabo correctamente, de lo contrario, se considera error al enviar y "msg" contiene el mensaje del error correspondiente.
Ruta: https://api.itbx.co/api/v1/usuario/enviarSMS
Método: POST
Parámetros de entrada:
- token => Requerido, String (ir a API Login)
- numeros => Requerido, String (ejemplo: 3178516770,3158536149,3145645677)
- mensaje => Requerido, String (ejemplo: Hola mundo)
Ejemplo de salida:
[
{
"tel": "123456",
"msg": "Ok",
"error": false,
"code": 1
},
{
"tel": "123456",
"msg": "Ok",
"error": false,
"code": 1
}
]
4. Crear campaña masiva SMS de una vía o doble vía
Descripción: Crea una campaña de envío masivo de mensajes SMS a múltiples destinos con mensajes generales o individuales, con opción de mensaje en una vía y doble vía (Ejemplo: La respuesta del destinatario).
Tipo de salida: JSON con id de campaña
Ruta: https://api.itbx.co/api/v1/usuario/newCampaignSMS
Método: POST
Parámetros de entrada: Objeto JSON con los siguientes parámetros:
- token => Requerido, String (ir a API Login)
- arrayphones => Requerido, Array asociativo (ejemplo: [{"phone": 1234, "message":"mensaje de prueba 1"}, {"phone": 123456, "message":"mensaje de prueba 2"}])
- namecampaign => Requerido, String (ejemplo: Campaña de prueba)
- startdate => Requerido, Fecha (ejemplo: 2020-09-08)
- starthour => Requerido, Hora formato 24H (ejemplo: 09:00:00)
- endhour => Requerido, Hora formato 24H (ejemplo: 16:05:00)
- message => Requerido, String (ejemplo: Mensaje de prueba)
- callid => Requerido, String (ejemplo: 317676789897)
- paused => Opcional, Integer (1 para indicar que la campaña se genera en pausa)
- duplex => Opcional, Integer (1 para indicar que la campaña es duplex)
Ejemplo de entrada:
{"arrayphones": [{"phone": 1234, "message":"mensaje 1"},{"phone": 89789789, "message":"mensaje 2"}],"namecampaign": "Campaña auto 1","startdate": "2020-09-08","starthour": "09:00:00","endhour": "18:10:00","message": "Hola mundo","callid": 315678989899}
Ejemplo de salida sin errores:
{ "error": false, "data": 26 }
Ejemplo de salida con errores:
{ "error": true, "msg": "Error en el formato de las fechas" }
5. Editar parámetros de campaña masiva SMS
Descripción: Edita los parámetros e inicia o pausa el envío de una campaña masiva SMS activa
Tipo de salida: JSON con id de campaña
Ruta: https://api.itbx.co/api/v1/usuario/editCampaignSMS
Método: POST
Parámetros de entrada: Objeto JSON con los siguientes parámetros:
- token => Requerido, String (ir a API Login)
- idcampaign => Requerido, Integer (ejemplo: 26)
- startdate => Opcional, Fecha (ejemplo: 2020-09-08)
- starthour => Opcional, Hora formato 24H (ejemplo: 09:00:00)
- endhour => Opcional, Hora formato 24H (ejemplo: 16:05:00)
- callid => Opcional, String (ejemplo: 317676789897)
- paused => Opcional, Boolean (true o false, para indicar que la campaña se detiene o inicia)
Ejemplo de entrada:
{"idcampaign": 26,"startdate": "2020-09-08","starthour": "09:00:00","endhour": "18:10:00","callid": 315678989899,"paused":true}
Ejemplo de salida sin errores:
{ "error": false, "data": 26 }
Ejemplo de salida con errores:
{ "error": true, "msg": "Error en el formato de las fechas" }
6. Borrar campaña masiva SMS de una vía o doble vía
Descripción: Borrar una campaña masiva SMS activa
Tipo de salida: JSON
Ruta: https://api.itbx.co/api/v1/usuario/deleteCampaignSMS
Método: POST
Parámetros de entrada: Objeto JSON con los siguientes parámetros:
- token => Requerido, String (ir a API Login)
- idcampaign => Requerido, Integer (ejemplo: 26)
Ejemplo de salida sin errores:
{ "error": false, "data": "Ok" }
Ejemplo de salida con errores:
{ "error": true, "msg": "Error: No existe la campaña" }
7. Agregar registros de contacto a campaña masiva SMS
Descripción: Agrega registros invididuales o por lote, con mensaje general o individuales a una campaña masiva SMS activa.
Tipo de salida: JSON con id de campaña
Ruta: https://api.itbx.co/api/v1/usuario/addCampaignNumbersSMS
Método: POST
Parámetros de entrada: Objeto JSON con los siguientes parámetros:
- token => Requerido, String (ir a API Login)
- idcampaign => Requerido, Integer (ejemplo: 26)
- arrayphones => Requerido, Array asociativo (ejemplo: [{"phone": 1234, "message":"mensaje de prueba 1"}, {"phone": 123456, "message":"mensaje de prueba 2"}])
Ejemplo de entrada:
{"arrayphones": [{"phone": 1234,"message":"mensaje 1"},{"phone": 89789789,"message":"mensaje 2"}],"idcampaign": 26}
Ejemplo de salida sin errores:
{ "error": false, "data": 26 }
Ejemplo de salida con errores:
{ "error": true, "msg": "Error: No existe la campaña" }
8. Consultar HISTÓRICO detallado de campaña masiva SMS de una vía o doble vía
Descripción: Consulta todos los datos del reporte detallado con resultados de envío de una campaña masiva SMS (por rango de tiempo y con limite de registros)
Tipo de salida: JSON
Ruta: https://api.itbx.co/api/v1/usuario/getHistoricoMensajesSMS
Método: GET
Parámetros de entrada:
- token => Requerido, String (ir a API Login)
- startdate => Requerido, Fecha inicial (ejemplo: 2020-07-16 17:13:55)
- enddate => Requerido, Fecha final (ejemplo: 2020-07-24 16:57:40)
- offset => Opcional, Integer
- limit => Opcional, Integer
Ejemplo de salida:
{
"total": 2,
"mensajes": [
{
"mensaje": "Hola mundo",
"fecha_envio": "2022-06-17 17:33:25",
"enviado": true,
"codigo_respuesta": 1,
"mensaje_respuesta": "Mensaje Enviado",
"telefono_destino": "57317xxxxx",
"origen": "web",
"tipo": "1via",
"created_at": "2022-06-17 17:33:25",
"updated_at": "2022-06-17 17:33:25"
},
{
"mensaje": "Mensaje de prueba",
"fecha_envio": "2022-06-21 15:54:46",
"enviado": true,
"codigo_respuesta": 1,
"mensaje_respuesta": "Mensaje Enviado",
"telefono_destino": "57317xxxxx",
"origen": "campaign",
"tipo": "1via",
"created_at": "2022-06-21 15:54:46",
"updated_at": "2022-06-21 15:54:46"
}
]
}
9. Agregar lista de contactos a campaña AUTOMÁTICA
Descripción: Agrega lista de registros a una campaña automática activa (Predictiva y/o Progresiva).
Tipo de salida: 1 si es correcto o mensaje si hay un error
Ruta: https://api.itbx.co/api/v1/usuario/setCallbackCampaign
Método: POST
Parámetros de entrada:
- token => Requerido, String (ir a API Login)
- campaign_name => Requerido, String (ejemplo: Auto 1)
- numbers => Requerido, Array asociativo
Ejemplo de entrada:
{ "numbers": { "John": "123456", "Daniel": "654321" }, "campaign_name": "Auto 1" }
10. Agregar un contacto a campaña AUTOMÁTICA
Descripción: Agrega un registro a una campaña automática activa (Predictiva y/o Progresiva).
Tipo de salida: 1 si es correcto o mensaje si hay un error
Ruta: https://api.itbx.co/api/v1/usuario/setNewContactAutoBatch
Método: POST
Parámetros de entrada: Objeto JSON con los siguientes parámetros:
- token => Requerido, String (ir a API Login)
- phone => Requerido, String (ejemplo: 3156745677)
- campaign_name => Requerido, String (ejemplo: Campaña de prueba)
- clean => Opcional, String, para borrar (=1) contactos existentes antes de cargar los nuevos(ejemplo: 1)
- extra_params => Opcional, Array asociativo
Ejemplo de entrada:
[
{
"phone": "123456",
"campaign_name": "Auto 3",
"clean" : "1",
"extra_params": {
"Nombre": "Manuel Diaz",
"empresa": "ITBX",
"profesion": "Desarrollador"
}
},
{
"phone": "789012",
"campaign_name": "Auto 4",
"clean" : "0",
"extra_params": {
"Nombre": "John Wick",
"empresa": "Continental",
"profesion": "Retirado"
}
}
]
11. Borrar todos los registros de una campaña AUTOMÁTICA
Descripción: Borra los registros disponibles y/o sin gestionar de una campaña automática (Predictiva y/o Progresiva).activa o inactiva,
Tipo de salida: 1 si es correcto o mensaje si hay un error
Ruta: https://api.itbx.co/api/v1/usuario/delContactsAuto
Método: POST
Parámetros de entrada:
- token => Requerido, String (ir a API Login)
- campaign_name => Requerido, String (ejemplo: Campaña automática)
12. Agregar contactos a campaña AUTOMÁTICA por archivo
Descripción: Agrega registros de contactos a una campaña automática activa (Predictiva y/o Progresiva) desde un archivo plano y/o hoja de calculo
Tipo de salida: JSON
Ruta: https://api.itbx.co/api/v1/usuario/uploadMassiveCampaign
Método: POST
Parámetros de entrada:
- token => Requerido, String (ir a API Login)
- campaign_name => Requerido Cuando se declara unique_campaign = 1, String (ejemplo: Auto 12)
- unique_campaign => Opcional cuando el archivo es de una sola campaña y la misma no esta en la primer columna dentro del archivo, String (ejemplo: 1)
- file => Requerido, Archivo de excel (ods, xls, xlsx, csv) con el formato correcto (descargar aquí)
- cleaning_campaign => Opcional para borrar (=1) contactos existentes en campañas antes de cargar los nuevos, String (ejemplo: 1)
Ejemplo de salida sin errores:
{ "error": false, "msg": "Ok" }
Ejemplo de salida con errores:
{ "error": true, "msg": "Error: No existe la campaña" }
13. Consultar HISTÓRICO detallado del tráfico telefónico general
Descripción: Consulta todos los datos del reporte detallado o CDR del tráfico telefónico general (entrante y saliente), (por rango de tiempo y con limite de registros)
Tipo de salida: JSON
Ruta: https://api.itbx.co/api/v1/usuario/listCDR
Método: GET
Parámetros de entrada:
- token => Requerido, String (ir a API Login)
- startdate => Requerido, Fecha inicial (ejemplo: 2020-07-16 17:13:55)
- enddate => Requerido, Fecha final (ejemplo: 2020-07-24 16:57:40)
- offset => Opcional, Integer
- limit => Opcional, Integer
Ejemplo de salida:
{
"totalcdrcount": 14462,
"cdrs": [
{
"calldate": "2024-07-16T17:18:30-05:00",
"src": "",
"dst": "573142192812",
"channel": "",
"dstchannel": "SMS",
"disposition": "ANSWERED",
"uniqueid": "",
"duration": 0,
"billsec": 0,
"accountcode": ""
}
]
}
14. Consultar HISTÓRICO detallado del tráfico telefónico entrante en colas inteligentes
Descripción: Consulta todos los datos del reporte detallado del tráfico telefónico entrante en colas inteligentes (por rango de tiempo)
Tipo de salida: Array asociativo
Ruta: https://api.itbx.co/api/v1/usuario/queueLog
Método: GET
Parámetros de entrada:
- token => Requerido, String
- startdate => Requerido, Fecha (ejemplo: 2020-07-16 17:13:55)
- enddate => Requerido, Fecha (ejemplo: 2020-07-16 20:00:10)
- queue => Opcional, Integer (ejemplo: 502)
- event => Opcional, String ("COMPLETECALLER" o "EXITWITHTIMEOUT" o "ABANDON")
- src => Opcional, String (ejemplo: 7777777)
- agent => Opcional, String (ejemplo: Usuario 01)
- nit => Opcional, String (ejemplo: 11106)
- minWaittime => Opcional, Integer (ejemplo: 4)
- minDuration => Opcional, Integer (ejemplo: 4)
- minAbandon => Opcional, Integer (ejemplo: 4)
15. Crear campaña masiva de Whatsapp con mensajes HSM
Descripción: Crea una campaña de envío masivo de mensajes HSM de Whatsapp a múltiples destinos por medio de un (template) aprobado previamente en ITBX, (Previa aprobación Meta). Solo desde cuentas de Whatsapp oficiales.
Tipo de salida: JSON array con parámetros para cada teléfono (tel, msg, error, code). Cada teléfono tiene una respuesta: "error" = false si se lleva a cabo correctamente, de lo contrario, se considera error al enviar y "msg" contiene el mensaje del error correspondiente.
Ruta: https://api.itbx.co/api/v1/usuario/sendCampaignWA
Método: POST
Parámetros de entrada:
- token => Requerido, String (ir a API Login)
- telefonos => Requerido, String (ejemplo: 3178516770,3158536149,3145645677)
- id_template => Requerido, Integer (ID de la plantilla a enviar)
- usuario_proveedor => Requerido, String (Un nombre de usuario proporcionado por ITBX para la empresa)
- token_proveedor => Requerido, String (Un token proporcionado por ITBX para la empresa)
- template_variables => Requerido, String (Cadena con variables de la plantilla en orden de la forma:[variable1][variable2][variable3])
- media => Requerido, String (Un enlace url. Ejemplo: https://contacto-virtual.com/multiagente/public/storage/whatsapptemplate/197_567_2023-11-297a543ddf02418e2ec5c04c125cdf3f43.png)
Ejemplo de salida:
[
{
"telefono": "123456",
"mensaje": "¿Aún necesitas ayuda?",
"codigo_respuesta": 1,
"mensaje_respuesta": "mensaje enviado",
"enviado": true
},
{
"telefono": "123456",
"mensaje": "Hola",
"codigo_respuesta": 1050,
"mensaje_respuesta": "El mensaje no coincide con la plantilla establecida",
"enviado": false
}
]
16. Consultar HISTÓRICO detallado de campaña masiva de Whatsapp con mensajes HSM
Descripción: Consulta todos los datos del reporte detallado con resultados de envío de una campaña masiva de Whatsapp con mensajes HSM (por rango de tiempo y con limite de registros)
Tipo de salida: JSON
Ruta: https://api.itbx.co/api/v1/usuario/getHistoricoMensajesWA
Método: GET
Parámetros de entrada:
- token => Requerido, String (ir a API Login)
- startdate => Requerido, Fecha inicial (ejemplo: 2020-07-16 17:13:55)
- enddate => Requerido, Fecha final (ejemplo: 2020-07-24 16:57:40)
- offset => Opcional, Integer
- limit => Opcional, Integer
Ejemplo de salida:
{
"total": 2,
"mensajes": [
{
"mensaje": "¿Aún necesitas ayuda?",
"fecha_envio": "2022-05-02 18:21:54",
"enviado": true,
"codigo_respuesta": 4,
"mensaje_respuesta": "error en el número de celular a enviar",
"message_id_proveedor": null,
"telefono_destino": "5731XXXXX"
},
{
"mensaje": "Bienvenido",
"fecha_envio": "2022-05-02 18:35:07",
"enviado": true,
"codigo_respuesta": 1,
"mensaje_respuesta": "mensaje enviado",
"message_id_proveedor": "743d402f-481d-42ca-82ca-e21aedfc860c",
"telefono_destino": "573XXXXX"
}
]
}
17. Agregar contactos a campaña PREVIEW
Descripción: Agrega los datos de un nuevo contacto o registro a una campaña (Preview) activa.
Tipo de salida: 1 si es correcto o mensaje si hay un error
Ruta: https://api.itbx.co/api/v1/usuario/setNewContactPreview
Método: POST
Parámetros de entrada: Objeto JSON con los siguientes parámetros:
- token => Requerido, String (ir a API Login)
- phone => Requerido, String (ejemplo: 123456)
- name => Requerido, String (ejemplo: John Doe)
- id_campaign => Opcional, Integer (ejemplo: 1)
- phone_office => Opcional, String (ejemplo: 123456)
- cellphone => Opcional, String (ejemplo: 123456)
- description => Opcional, String (ejemplo: Prueba de nuevo contacto)
- schedule => Opcional, String
- phone_list => Opcional, Array Asociativo
- params => Opcional, Array Asociativo
- id_subject => Opcional, Integer (ejemplo: 100)
- id_relative => Opcional, Integer (ejemplo: 100)
- campaign_name => Opcional, String (ejemplo: Campaña de prueba)
Ejemplo de entrada:
{ "phone":"123456", "name":"John Doe", "id_campaign":"", "phone_office":"123456", "cellphone":"", "description":"prueba", "schedule":"", "phone_list": { "Casa": 123456, "Empresa": 987456 }, "params": { "frecuencia" : "semanal", "dia": "lunes" }, "id_subject":"", "id_relative":"", "campaign_name":"Auto 3" }
18. Consultar los contactos de una campaña PREVIEW
Descripción: Consulta y trae todos los datos de los registros de una campaña (Preview) activa o inactiva
Tipo de salida: Array asociativo
Ruta: https://api.itbx.co/api/v1/usuario/getPreviewData
Método: GET
Parámetros de entrada:
- token => Requerido, String (ir a API Login)
- limit => Opcional, Integer (ejemplo: 10)
19. Borrar todos los registros de las campañas PREVIEW
Descripción: Borra los registros disponibles y/o sin gestionar de todas las campañas (Preview) activas o inactivas, (por rango de tiempo)
Tipo de salida: String (número de registros eliminados)
Ruta: https://api.itbx.co/api/v1/usuario/delPreviewRegs
Método: POST
Parámetros de entrada:
- token => Requerido, String (ir a API Login)
- date1 => Requerido, Fecha (ejemplo: 2020-01-01 10:00:05)
- date2 => Requerido, Fecha (ejemplo: 2020-01-01 10:00:05)
Ejemplo de salida:
Deleted regs: 2
20. Consultar histórico de gestión de registros en una campaña PREVIEW
Descripción: Consulta reporte detallado de la gestión de registros en una campaña (Preview) activa o inactiva. (por rango de tiempo)
Tipo de salida: Array asociativo
Ruta: https://api.itbx.co/api/v1/usuario/getHistoryReport
Método: GET
Parámetros de entrada:
- token => Requerido, String (ir a API Login)
- date1 => Requerido, Fecha (ejemplo: 2020-01-01 10:00:05)
- date2 => Requerido, Fecha (ejemplo: 2020-01-01 10:00:05)
- campaign_name => Opcional, String
- id_subject => Opcional, Integer
- name => Opcional, String
- phone_last_dialed => Opcional, String
- agent_number => Opcional, String
- agent_name => Opcional, String
- status => Opcional, String
- uniqueid => Opcional, Integer
21. Resumen de campañas salientes automáticas CALLCENTER
Descripción: Reporte de campañas salientes (Automáticas). Campañas gestionadas de manera predictiva, progresiva o preview. Desde módulos de Call center
Tipo de salida: Array asociativo
Ruta: https://api.itbx.co/api/v1/usuario/getCampaignData
Método: GET
Parámetros de entrada:
- token => Requerido, String (ir a API Login)
- fecha_inicio => Requerido, Fecha (ejemplo: 2020-01-01)
- fecha_fin => Requerido, Fecha (ejemplo: 2020-01-01)
Descripcion campos respuesta:
- status => Estado final de registros en una campaña específica. [Posibles estados finales: Exitosa (Contestada), LlamadaCorta, Timbrando, EnProceso, EnCola, NoContestada, Fallida, Abandonada, SinGestión]
- campaign => Nombre de campaña específica
- agent_name => Nombre del agente que interviene en la gestión de registros de una campaña específica
- total_duration => Duración total de la gestión de los registros según su estado final. (Valor en segundos)
- total_calls => Cantidad total de llamadas según su estado final. Sumatoria total
- tmo => Promedio TMO entre duración y cantidad de llamadas según su estado final. (Valor en segundos)
- total_transfer => Total de llamadas transferidas
- transfer_survey => Total de llamadas transferidas a módulo de encuestas
- transfer_other => Total de llamadas transferidas a otros destinos
- agent_hangup => Total de llamadas contestadas por un agente y finalizadas por el mismo desde la consola
Ejemplo de salida:
{
"error": false,
"registros": 2,
"id_itbx": XXX,
"data": [
{
"status": "Fallida",
"campaign": "Prueba1_16_05_25",
"agent_name": "",
"total_duration": "0",
"total_calls": "1",
"tmo": "0",
"total_transfer": "0",
"transfer_survey": "0",
"transfer_other": "0",
"agent_hangup": "0"
},
{
"status": "Contestada",
"campaign": "CALLBACK506",
"agent_name": "8645",
"total_duration": "58",
"total_calls": "1",
"tmo": "58",
"total_transfer": "0",
"transfer_survey": "0",
"transfer_other": "0",
"agent_hangup": "0"
},
]
}
22. Resumen de campañas salientes Gestor Virtual Omnicanal (GVO)
Descripción: Reporte de campañas salientes automáticas por medio del Gestor Virtual Omnicanal (GVO) - Call Blasting + Call Deflection
Tipo de salida: Array asociativo
Ruta: https://api.itbx.co/api/v1/usuario/getCampaignGVOData
Método: GET
Parámetros de entrada:
- token => Requerido, String (ir a API Login)
- fecha_inicio => Requerido, Fecha (ejemplo: 2020-01-01)
- fecha_fin => Requerido, Fecha (ejemplo: 2020-01-01)
Descripcion campos respuesta:
- status => Estado final de registros en una campaña específica de (GVO). [Posibles estados finales: Contestada+Final, Contestada+Cola, Contestada+IVR, Contestada+Extensión. Contestada+Omnicanal, LlamadaCorta, EnMensaje, NoContestada, Fallida, Abandonada, SinGestión]
- campaign => Nombre de campaña específica de (GVO)
- to_extension => Registro finalizado en la entrega de llamada a una extensión específica, Registro de una campaña GVO específica
- to_sms => Confirmación de un registro finalizado en el envío de un SMS a un destiino específico, Registro de una campaña GVO específica
- to_wa => Confirmación de un registro finalizado en el envío de un HSM a un destiino específico, Registro de una campaña GVO específica
- to_callback => Confirmación de un registro finalizado en el agendamiento a una campaña de Callback, Registro de una campaña GVO específica
- to_option1 => Confirmación de un registro finalizado en la captura de intención de la opción1 por marcación de DTMF. Registro de una campaña GVO específica
- to_option2 => Confirmación de un registro finalizado en la captura de intención de la opción2 por marcación de DTMF. Registro de una campaña GVO específica
- to_option3 => Confirmación de un registro finalizado en la captura de intención de la opción3 por marcación de DTMF. Registro de una campaña GVO específica
- to_option4 => Confirmación de un registro finalizado en la captura de intención de la opción4 por marcación de DTMF. Registro de una campaña GVO específica
- to_option5 => Confirmación de un registro finalizado en la captura de intención de la opción5 por marcación de DTMF. Registro de una campaña GVO específica
- total_calls => Cantidad total de llamadas según su estado final. Sumatoria total
- tmo => Promedio TMO entre duración (Llamadas contestadas) y cantidad de llamadas según su estado final. (Valor en segundos)
Ejemplo de salida:
{
"error": false,
"registros": 2,
"id_itbx": XXX,
"data": [
{
"status": "LlamadaCorta",
"campaign": "PBI",
"to_extension": "8645",
"to_sms": "",
"to_wa": "",
"to_callback": "",
"to_option1": "",
"to_option2": "",
"to_option3": "",
"to_option4": "",
"to_option5": "",
"total_calls": "1",
"tmo": "5"
},
{
"status": "Contestada+Omnicanal",
"campaign": "PBI",
"to_extension": "",
"to_sms": "",
"to_wa": "",
"to_callback": "",
"to_option1": "",
"to_option2": "",
"to_option3": "Confirmar",
"to_option4": "",
"to_option5": "",
"total_calls": "1",
"tmo": "0"
}
]
}
23. Resumen de campañas entrantes CALLCENTER
Descripción: Reporte de Campañas entrantes. Desde módulos de Call center
Tipo de salida: Array asociativo
Ruta: https://api.itbx.co/api/v1/usuario/getCampaignInboundCCData
Método: GET
Parámetros de entrada:
- token => Requerido, String (ir a API Login)
- fecha_inicio => Requerido, Fecha (ejemplo: 2020-01-01)
- fecha_fin => Requerido, Fecha (ejemplo: 2020-01-01)
Descripcion campos respuesta:
- status => Estado final de registros en una campaña específica entrante. [Posibles estados finales: Contestada, Abandonada]
- agent_name => Nombre del agente que interviene en la gestión de registros de una campaña específica entrante
- queue_name => Número de la Cola de atención que recibe el registro y está relacionada a una campaña específica entrante
- agent_hangup => Total de llamadas contestadas por un agente y finalizadas por el mismo desde la consola
- total_calls => Cantidad total de llamadas según su estado final. Sumatoria total
- tmo_answer_calls => Promedio TMO de llamadas en estado (Contestada) entre duración y cantidad de llamadas. (Valor en segundos)
- average_wait_calls => Promedio de tiempo de espera en la gestión de los registros antes de ser (Contestada o Abandonada). (Valor en segundos)
- total_transfer => Total de llamadas transferidas
- total_transfer_survey => Total de llamadas transferidas a módulo de encuestas
- total_transfer_wa_fail => Total de llamadas transferidas por Espera Omnicanal a Whatsapp por medio de un HSM (Envío fallido)
- total_transfer_wa_success => Total de llamadas transferidas por Espera Omnicanal a Whatsapp por medio de un HSM (Envío exitoso)
- total_transfer_sms_fail => Total de llamadas transferidas por Espera Omnicanal a un SMS (Envío fallido)
- total_transfer_sms_success => Total de llamadas transferidas por Espera Omnicanal a un SMS (Envío exitoso)
- total_transfer_callback_fail => Total de llamadas transferidas por Espera Omnicanal a un agendamiento de Callback (Agendamiento Fallido)
- total_transfer_callback_success => Total de llamadas transferidas por Espera Omnicanal a un agendamiento de Callback (Agendamiento exitoso)
- total_transfer_others => Total de llamadas transferidas a otros destinos
Ejemplo de salida:
{
"error": false,
"registros": 2,
"id_itbx": XXX,
"data": [
{
"status": "Abandonada",
"agent_name": "",
"queue_name": "501",
"agent_hangup": "6",
"total_calls": "413",
"tmo_answer_calls": "0",
"average_wait_calls": "45",
"total_transfer": "0",
"total_transfer_survey": "0",
"total_transfer_wa_fail": "0",
"total_transfer_wa_success": "0",
"total_transfer_sms_fail": "0",
"total_transfer_sms_success": "0",
"total_transfer_callback_fail": "0",
"total_transfer_callback_success": "0",
"total_transfer_others": "0"
},
{
"status": "Abandonada",
"agent_name": "",
"queue_name": "502",
"agent_hangup": "0",
"total_calls": "432",
"tmo_answer_calls": "0",
"average_wait_calls": "52",
"total_transfer": "0",
"total_transfer_survey": "0",
"total_transfer_wa_fail": "0",
"total_transfer_wa_success": "0",
"total_transfer_sms_fail": "0",
"total_transfer_sms_success": "0",
"total_transfer_callback_fail": "0",
"total_transfer_callback_success": "0",
"total_transfer_others": "0"
}
]
}
24. Resumen de atencion por Cola Inteligente desde PBX
Descripción: Reporte de nivel de atención por Cola inteligente, atendidas por extensiones. Desde módulos de PBX
Tipo de salida: Array asociativo
Ruta: https://api.itbx.co/api/v1/usuario/getAtentionQueueData
Método: GET
Parámetros de entrada:
- token => Requerido, String (ir a API Login)
- fecha_inicio => Requerido, Fecha (ejemplo: 2020-01-01)
- fecha_fin => Requerido, Fecha (ejemplo: 2020-01-01)
Descripcion campos respuesta:
- status => Estado final de registros en una Cola de atención. [Posibles estados finales: Contestada, Abandonada, Desbordada, EsperaInteligente, Transferida]
- queue_name => Número de la Cola de atención específica que recibe el registro
- destination => Nombre del usuario (extensión y/o agente) que interviene en la gestión de registros de una Cola de atención específica, según su estado final.
- average_wait_before_answer => Promedio de tiempo de espera en la gestión de los registros antes de ser (Contestada). (Valor en segundos)
- tmo_answer_calls => Promedio TMO de llamadas en estado (Contestada). (Valor en segundos)
- average_wait_before_exit => Promedio de tiempo de espera en la gestión de los registros antes de ser (Abandonada o Desbordada). (Valor en segundos)
- tmo_answer_before_transfer => Promedio TMO de llamadas en estado (Transferida). (Valor en segundos)
- total_calls => Cantidad total de llamadas según su estado final. Sumatoria total
- total_transfer => Total de llamadas transferidas
- total_transfer_survey => Total de llamadas transferidas a módulo de encuestas
- total_transfer_wa_fail => Total de llamadas transferidas por Espera Omnicanal a Whatsapp por medio de un HSM (Envío fallido)
- total_transfer_wa_success => Total de llamadas transferidas por Espera Omnicanal a Whatsapp por medio de un HSM (Envío exitoso)
- total_transfer_sms_fail => Total de llamadas transferidas por Espera Omnicanal a un SMS (Envío fallido)
- total_transfer_sms_success => Total de llamadas transferidas por Espera Omnicanal a un SMS (Envío exitoso)
- total_transfer_queue_fail => Total de llamadas transferidas por Espera Omnicanal a un agendamiento de Callback (Agendamiento Fallido)
- total_transfer_queue_success => Total de llamadas transferidas por Espera Omnicanal a un agendamiento de Callback (Agendamiento exitoso)
- total_transfer_others => Total de llamadas transferidas a otros destinos
Ejemplo de salida:
{
"error": false,
"registros": 2,
"id_itbx": XXX,
"data": [
{
"status": "Desbordada",
"queue_name": "201",
"destination": "NONE",
"average_time_wait_before_answer": "0",
"tmo_answer_calls": "0",
"average_wait_before_exit": "0",
"tmo_answer_before_transfer": "0",
"total_calls": "1",
"total_transfer": "0",
"total_transfer_survey": "0",
"total_transfer_wa_fail": "0",
"total_transfer_wa_success": "0",
"total_transfer_sms_fail": "0",
"total_transfer_sms_success": "0",
"total_transfer_queue_fail": "0",
"total_transfer_queue_success": "0",
"total_transfer_others": "0"
},
{
"status": "Contestada",
"queue_name": "501",
"destination": "Agent/1001",
"average_time_wait_before_answer": "7",
"tmo_answer_calls": "36",
"average_wait_before_exit": "0",
"tmo_answer_before_transfer": "0",
"total_calls": "79",
"total_transfer": "0",
"total_transfer_survey": "0",
"total_transfer_wa_fail": "0",
"total_transfer_wa_success": "0",
"total_transfer_sms_fail": "0",
"total_transfer_sms_success": "0",
"total_transfer_queue_fail": "0",
"total_transfer_queue_success": "0",
"total_transfer_others": "0"
},
]
}
25. Resumen de trafico saliente por extensiones
Descripción:Reporte de tráfico saliente de llamadas por extensión a destinos externos
Tipo de salida: Array asociativo
Ruta: https://api.itbx.co/api/v1/usuario/getOutgoingtraficPBX
Método: GET
Parámetros de entrada:
- token => Requerido, String (ir a API Login)
- fecha_inicio => Requerido, Fecha (ejemplo: 2020-01-01)
- fecha_fin => Requerido, Fecha (ejemplo: 2020-01-01)
Descripcion campos respuesta:
- status => Estado final de las llamada a destinos externo. [Posibles estados finales: Contestada, NoContestada, Ocupado, Fallido]
- source => Número de la extension que realizó la llamada saliente a destino externo.
- trunk => Nombre de la troncal por la que se realizó la llamada saliente a destino externo.
- total_calls => Cantidad total de llamadas según su estado final. Sumatoria total
- tmo_calls => Promedio TMO entre duración y cantidad de llamadas según su estado final. (Valor en segundos)
Ejemplo de salida:
{
"error": false,
"registros": 2,
"id_itbx": XXX,
"data": [
{
"status": "Contestada",
"source": "1001",
"trunk": "ITBX",
"total_calls": "332",
"tmo_calls": "77"
},
{
"status": "Ocupado",
"source": "1001",
"trunk": "ITBX",
"total_calls": "5",
"tmo_calls": "0"
}
]
}
26. Agregar un contacto a campaña AUTOMÁTICA Gestor Virtual Omnicanal (GVO)
Descripción: Agrega un registro a una campaña automática al Gestor Virtual Omnicanal
Tipo de salida: 1 si es correcto o mensaje si hay un error
Ruta: https://api.itbx.co/api/v1/usuario/setNewContactAutoGvoBatch
Método: POST
Parámetros de entrada: Objeto JSON con los siguientes parámetros:
- token => Requerido, String (ir a API Login)
- campaign_name => Requerido, String (ejemplo: Auto 1)
- phone => Requerido, String (ejemplo: 123456)
- destEXT => Opcional, String (ejemplo: 9012)
- msgSMS => Opcional, String (ejemplo: Prueba de mensaje SMS)
- campaignCB => Opcional, String (ejemplo: 510)
- nombreContacto => Opcional, String (ejemplo: Pedro Suarez)
- templateHSM => Opcional, String (ejemplo: 6789)
- data1HSM => Opcional, String (ejemplo: Carlos Cuartas)
- data2HSM => Opcional, String (ejemplo: Oftalmología)
- data3HSM => Opcional, String (ejemplo: Julio 18 2023 5:30pm)
- dateOP1 => Opcional, String (ejemplo: Asistiré)
- dateOP2 => Opcional, String (ejemplo: No asistiré)
- dateOP3 => Opcional, String (ejemplo: No interesado)
- dateOP4 => Opcional, String (ejemplo: Ya lo recibí)
- dateOP5 => Opcional, String (ejemplo: Mas información)
- extra_params => Opcional, Array asociativo
Ejemplo de entrada:
[
{
"phone": "3197579554",
"campaign_name" : "Desarrollo2",
"destEXT": "8645",
"msgSMS": "Prueba ITBX",
"campaignCB": "CALLBACK503",
"nombreContacto": "Carlos Perez",
"templateHSM": "3556",
"data1HSM": "JohnWA1",
"dataOP1": "Ya pago",
"dataOP2": "No volver a llamar",
"dataOP3": "Estoy interesado",
"dataOP4": "Finalizo llamada",
"dataOP5": "opcion5-4",
"extra_params": {
"Dia": "17",
"Mes": "1",
"Hora": "14",
"Saldo": "50000"
}
},
{
"phone": "3001122334",
"campaign_name" : "Desarrollo2",
"destEXT": "9911",
"msgSMS": "Seguimiento de oferta",
"campaignCB": "CALLBACK504",
"nombreContacto": "Laura Sanchez",
"templateHSM": "3557",
"data1HSM": "LauraWA2",
"dataOP1": "Quiere más informacion",
"dataOP2": "No contesta",
"dataOP3": "Requiere asesor",
"dataOP4": "Agenda cita",
"dataOP5": "opcion5-2",
"extra_params": {
"Dia": "18",
"Mes": "1",
"Hora": "10",
"Saldo": "0"
}
}
]