Função: Retorna o status atual de uma ou de todas as filas
Campo | Tipo | Notas | Definição |
queue | varchar | Opcional | Nome da queue. Permite espaços. Se informado, o nome deve ser case sensitive. |
Status de retorno
Código | Descrição |
0 | OK |
1 | Erro de aplicação no ezWSI |
2 | Erro na requisição (queue não encontrada) |
Objeto de retorno
Tipo: objeto, com índices sendo o nome das filas. Se o campo queue for informado, retorna apenas o objeto interno. O objeto interno possui 3 objetos: members (define status dos membros da fila), calls (chamadas entrantes) e summary (parâmetros e informações da fila).
Definição do objeto summary
O identificador (índice) do objeto é a posição atual na fila de espera.
Campo | Tipo | Definição |
Strategy | varchar | Estratégia de chamada da fila |
Weight | integer | Peso da fila. Filas com maior peso tem prioridade ao enviar uma ligação para um membro compartilhado. |
MaxSimultaneousCalls | integer | Número de chamadas em espera na fila |
ServiceLevel | integer | Número em segundos em que se espera que uma ligação seja atendida. Ligações atendidas dentro do ServiceLevel são consideradas dentro do SLA. |
ServiceLevelPerf | float | Performance do SLA, em % |
WaitingCalls | integer | Número de ligações na fila de espera |
FinishedCalls | integer | Número total de ligações (atendidas e abandonadas) processadas na fila |
AnsweredCalls | integer | Número de ligações atendidas na fila |
AbandonedCalls | integer | Número de ligações abandonadas na fila |
AbandonedPerf | float | Percentual de ligações abandonadas na fila |
TalkTime | integer | Tempo total de conversação na fila |
Holdtime | integer | Média de tempo em espera da fila |
AgentsTotal | integer | Média de tempo em espera da fila |
AgentsOnline | integer | Média de tempo em espera da fila |
AgentsPaused | integer | Média de tempo em espera da fila |
AgentsTalking | integer | Média de tempo em espera da fila |
ServiceLevelPerfWarning | boolean | Alerta para nível de serviço comprometido (true ou false) |
HoldTimeWarning | boolean | Alerta para o tempo de espera das ligações na fila (true ou false) |
Definição do objeto member
O identificador (índice) do objeto é o nome do canal do agente logado na fila. Se for um membro do tipo agente, será no formato Agent/NNNN, se for um membro do tipo ramal, será no formato SIP/NNNN (SIP pode ser substituído por outra tecnologia, em alguns casos).
Campo | Tipo | Definição |
Membership | varchar | Tipo de membro: static – Membro definido de forma estática dynamic – Membros dinâmicos de fila Note que a versão atual comporta apenas o tipo static |
Name | varchar | Nome do canal do membro. É o campo usado como índice. |
Location | varchar | Localidade do canal do membro. Em geral, será o mesmo campo de Name. |
StateInterface | varchar | Interface de estado do membro. Considerar o mesmo valor de Name. |
Penalty | integer | Penalidade do membro. Penalidades mais baixa têm preferência para atendimento em uma fila. |
CallsTaken | integer | Chamadas recebidas desde que a fila (queue) foi zerada. Em configurações padrões, a fila é zerada diariamente às 0h. |
LastCall | integer | Horário da última chamada atendida. Formato unix timestamp |
LastPause | integer | Horário da última pausa solicitada. Formato unix timestamp |
IsInCall | boolean | true – membro está em atendimento false – membro não está em atendimento |
IsQueueCall | boolean | true – ligação em curso pertence a fila false – membro esta em ligação fora do sistema de fila |
Status | integer | 1 – Disponível 2 – Em uso 3 – Ocupado 4 – Não identificado 5 – Indisponível 6 – Tocando |
Paused | boolean | false – membro está disponível para atendimento true – membro está em pausa |
PausedReason | varchar | Descrição da pausa solicitada |
PausedCauseId | integer | ID da pausa solicitada |
PausedDuration | integer | Duração em segundos da pausa solicitada |
WaitingToPaused | boolean | true – membro solicitou pausa em atendimento e esta aguardando a efetivação da pausa (quando a ligação for encerrada) |
IdleTime | integer | Tempo em segundos que o membro está disponível (sem receber ligações) |
CallHoldTime | integer | Tempo de espera para ser atendido em segundos da ligação que está conectada com o membro |
CallDuration | integer | Duração em segundos da ligação que está conectada com o membro |
CallCallerid | varchar | Número de origem da ligação que está conectada com o membro |
BridgedChannel | varchar | Canal da ligação que está conectada com o membro |
BridgedUniqueid | varchar | Identificador único da ligação que está conectada com o membro |
StatusDescription | varchar | Descrição do Status (anteriormente documentado) |
MemberName | varchar | Nome do membro |
MemberId | integer | ID do membro no ezIPBX |
Definição do objeto calls
O identificador (índice) do objeto é a posição atual na fila de espera.
Campo | Tipo | Definição |
Position | integer | Posição da ligação na fila de espera |
Channel | varchar | Canal da ligação de entrada. |
Uniqueid | varchar | Identificar único da ligação. Pode ser usado posteriormente com o método callRecFileGet para recuperar a gravação, se a mesma foi habilitada. |
CallerIDNum | varchar | Número de origem. Note que este campo não é necessariamente inteiro, pois uma ligação pode ser identificada como anonymous ou possuir caracteres alfanuméricos como número de entrada. |
CallerIDName | varchar | Nome de origem da ligação em espera |
Wait | integer | Tempo em segundos que a ligação esta aguardando na fila para ser atendida |
Exemplo:
"FILA_1": { "queueName": "FILA_1", "summary": { "Strategy": "random", "Weight": 0, "MaxSimultaneousCalls": 0 "ServiceLevel": 60, "ServicelevelPerf": 97.5, "WaitingCalls": 1, "FinishedCalls": 126, "AnsweredCalls": 122, "AbandonedCalls": 4, "AbandonedPerf": 3.2, "TalkTime": 413, "Holdtime": 6, "AgentsTotal": 24, "AgentsOnline": 6, "AgentsPaused": 2, "AgentsTalking": 1, "ServiceLevelPerfWarning": false, "HoldTimeWarning": false }, "members": { “Agent/1101": { "Membership": "static", "Name": "Agent/1004", "Location": "Agent/1004", "StateInterface": "Agent/1004", "Penalty": 30, "CallsTaken": 21, "LastCall": 1506014784, "LastPause": 1506004076, "IsInCall": false, "Status": 1, "Paused": true, "PausedReason": “Pausa Café", "PausedCauseId": 2, "PausedDuration": 294, "WaitingToPaused": false, "IsQueueCall": false, "IdleTime": 1247, "CallDuration": 0, "CallCallerid": null, "BridgedChannel": null, "BridgedUniqueid": null, "StatusDescription": “NOT_INUSE", "MemberName": “Dayane Souza", "MemberId": 5}, "SIP/2002": { "Membership": "static", "Name": "SIP/2002", "Location": "SIP/2002", "StateInterface": "SIP/2002", "Penalty": 30, "CallsTaken": 12, "LastCall": 1506016167, "LastPause": 0, "IsInCall": true, "Status": 3, "Paused": true, "PausedReason": "", "PausedCauseId": null, "PausedDuration": null, "WaitingToPaused": false, "IsQueueCall": true, "IdleTime": 0, "CallHoldTime": 20, "CallDuration": 130, "CallCallerid": "073999545512", "BridgedChannel": "SIP/carrier-00008a36", "BridgedUniqueid": "1506016868.59609", "StatusDescription": "BUSY", "MemberName": “Diego Oliveira", "MemberId": 7}, }, "calls": { 1: { "Position": 1, "Channel": "DAHDI/i1/16987654321-f114", "Uniqueid": "147011034.184038", "CallerIDNum": "16987654321", "CallerIDName": "16987654321", "Wait": "207"} } }
Este método é limitado e os dados ficam em cache (3 segundos), aceitando no máximo 4 requisições por segundo. É necessário que haja um controle de cache na aplicação externa destes dados caso seja necessário um volume maior de requisições.