Con el fin de gestionar adecuadamente las colas de ACD (Automatic Call Distribution), es importante hacer un seguimiento detallado de los eventos que se ejecutan en las mismas. Para ello, Asterisk implementa el queue_log, que es un archivo donde se registran dichas acciones en formato de texto plano y por defecto se encuentra en /var/log/asterisk/queue_log.
Por lo general las herramientas de estadísticas de call center, como Asternic y QueueMetrics, entre otras, basan su funcionamiento en la información que es entregada en este archivo. Por lo tanto, en este artículo nos dedicaremos a analizar en profundidad los datos que podremos encontrar en este log.
Al editar el archivo, encontraremos que los registros se encuentran con el siguiente formato:
TIMESTAMP|UNIQUEID|QUEUE_NUMBER|AGENT|EVENT|DATA1|DATA2|DATA3|DATA4|DATA5
Timestamp:
Es la fecha y hora en formato unix time
UniqueID:
El id único que identifica el canal
Queue_number:
El numero de interno de la cola o NONE si se trata de un evento general como AGENTLOGOFF
Agent:
Si el llamado fue asignado a un agente: Tecnología/Interno o NONE si es un evento general como ABANDON
Data n:
Son los valores que retorna cada evento, luego de su ejecución. Por ejemplo la duración de un llamado cuando es finalizado.
Ahora que conocemos la estructura general del archivo queue_log, pasaremos a ver en detalle los eventos y los valores que devuelve cada uno.
ABANDON:
Este evento se produce, cuando una persona abandona su posición en la Cola, antes de ser atendido. Los data que devuelve son:
- Data 1: position, la posición que tenía en la cola cuando realizó el hangup
- Data 2: origposition, la posición en la que entró en la cola
- Data 3: waittime, el tiempo que espero en la cola
AGENTDUMP:
El agente rechazó el llamado, mientras el cliente escuchaba el anuncio de la cola.
AGENTLOGIN:
El agente es logueado.
- Data 1: channel, el canal donde se genero el logueo
AGENTCALLBACKLOGIN:
El agente del tipo "callback" es logueado en la cola. Un agente del tipo "callback", a diferencia de un "agent/" es aquel que espera los llamados con el teléfono colgado, y en el momento que un llamado entra a la cola el teléfono suena y es logueado a la cola.
- Data 1: exten@context, el interno@contexto del agente.
AGENTLOGOFF:
El agente se desloguea
- Data 1: channel, el canal donde se origino el deslogueo
- Data 2: logintime, la cantidad de tiempo que el agente estuvo logueado. (en segundos)
AGENTCALLBACKLOGOFF:
El agente del tipo "callback" es deslogueado de la cola.
- Data 1: exten@context, el interno@contexto utilizado por el agente.
- Data 2: logintime, el tiempo que estuvo logueado
- Data 3: reason, la razón por la cual fue deslogueado, si no es un logoff normal. Ej: Autologoff, Chanunavail
COMPLETEAGENT:
El llamado fue conectado con un agente, y este fue finalizado normalmente por el agente.
- Data 1: holdtime, Tiempo que espero el cliente a ser atendido
- Data 2: holdtime, Duración de la llamada
- Data 3: origposition, Posición donde ingresó en que ingresó el llamado a la cola.
COMPLETECALLER:
El llamado fue conectado con un agente, y este fue finalizado normalmente por el cliente.
- Data 1: holdtime, Tiempo que espero el cliente a ser atendido
- Data 2: holdtime, Duración de la llamada
- Data 3: origposition, Posición donde ingresó en que ingresó el llamado a la cola.
CONFIGRELOAD:
La configuración ha sido re-cargada. (ej: asterisk -rx "reload")
CONNECT:
El llamado fue conectado con un agente.
- Data 1: holdtime, la cantidad de tiempo que el cliente estuvo en hold
- Data 2: bridgedchanneluniqueid, es el uniqueid del canal del agente que toma el llamado
ENTERQUEUE:
Un llamado ha ingresado a la cola.
- Data 1: URL, si es especificada
- Data 2: CallerID, Número de teléfono del cliente
EXITEMPTY:
La llamada es rechazada por la cola, debido a que no existen agentes logueados para atender la misma.
- Data 1: position, posición de la llamada en el momento que fue rechazada
- Data 2: origposition, posición de la llamada cuando ingresó a la cola
- Data 3: waittime, tiempo de espera
EXITWITHKEY:
El cliente utilizó una opción del menú, para salir de la cola.
- Data 1: key, tecla que presionó
- Data 2: position, posición en la que se encontraba en la cola
EXITWITHTIMEOUT:
El cliente estuvo demasiado tiempo en hold, y el tiempo expiró
- Data 1: position, posición del cliente en la cola
QUEUESTART:
El sistema de colas ha sido iniciado.
RINGNOANSWER:
El llamado es conectado a un agente, pero este no lo atiende.
- Data 1: ringtime, tiempo que estuvo sonando el teléfono del agente.
SYSCOMPAT:
La llamada es atendida por el agente, pero el sistema la rechaza porque los canales no son compatibles.
TRANSFER:
La llamada es transferida a otro interno.
- Data 1: extension, interno de destino
- Data 2: context, contexto utilizado
- Data 3: holdtime, tiempo en espera del agente hasta que se realizó la transferencia
- Data 4: calltime, duración de la llamada hasta que fue transferida.
Buena info mil gracias
ResponderEliminar