1. Inicio
  2. Documentos
  3. Protegido: Integração Red...
  4. ezWSI 2.0
  5. Método: queueGet

Método: queueGet

Função: Retorna o status atual de uma ou de todas as filas

CampoTipoNotasDefinição
queuevarcharOpcionalNome da queue. Permite espaços. Se informado, o nome deve ser case sensitive.

Status de retorno

CódigoDescrição
0OK
1Erro de aplicação no ezWSI
2Erro 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.

CampoTipoDefinição
StrategyvarcharEstratégia de chamada da fila
WeightintegerPeso da fila. Filas com maior peso tem prioridade ao enviar uma ligação para um membro compartilhado.
MaxSimultaneousCallsintegerNúmero de chamadas em espera na fila
ServiceLevelintegerNú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.
ServiceLevelPerffloatPerformance do SLA, em %
WaitingCallsintegerNúmero de ligações na fila de espera
FinishedCallsintegerNúmero total de ligações (atendidas e abandonadas) processadas na fila
AnsweredCallsintegerNúmero de ligações atendidas na fila
AbandonedCallsintegerNúmero de ligações abandonadas na fila
AbandonedPerffloatPercentual de ligações abandonadas na fila
TalkTimeintegerTempo total de conversação na fila
HoldtimeintegerMédia de tempo em espera da fila
AgentsTotalintegerMédia de tempo em espera da fila
AgentsOnlineintegerMédia de tempo em espera da fila
AgentsPausedintegerMédia de tempo em espera da fila
AgentsTalkingintegerMédia de tempo em espera da fila
ServiceLevelPerfWarningbooleanAlerta para nível de serviço comprometido (true ou false)
HoldTimeWarningbooleanAlerta 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).

CampoTipoDefinição
MembershipvarcharTipo 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
NamevarcharNome do canal do membro. É o campo usado como índice.
LocationvarcharLocalidade do canal do membro. Em geral, será o mesmo campo de Name.
StateInterfacevarcharInterface de estado do membro. Considerar o mesmo valor de Name.
PenaltyintegerPenalidade do membro. Penalidades mais baixa têm preferência para atendimento em uma fila.
CallsTakenintegerChamadas recebidas desde que a fila (queue) foi zerada. Em configurações padrões, a fila é zerada diariamente às 0h.
LastCallintegerHorário da última chamada atendida.
Formato unix timestamp
LastPauseintegerHorário da última pausa solicitada.
Formato unix timestamp
IsInCallbooleantrue – membro está em atendimento false – membro não está em atendimento
IsQueueCallbooleantrue – ligação em curso pertence a fila false – membro esta em ligação fora do sistema de fila
Statusinteger1 – Disponível
2 – Em uso
3 – Ocupado
4 – Não identificado
5 – Indisponível
6 – Tocando
Pausedbooleanfalse – membro está disponível para atendimento true – membro está em pausa
PausedReasonvarcharDescrição da pausa solicitada
PausedCauseIdintegerID da pausa solicitada
PausedDurationintegerDuração em segundos da pausa solicitada
WaitingToPausedbooleantrue – membro solicitou pausa em atendimento e esta aguardando a efetivação da pausa (quando a ligação for encerrada)
IdleTimeintegerTempo em segundos que o membro está disponível (sem receber ligações)
CallHoldTimeintegerTempo de espera para ser atendido em segundos da ligação que está conectada com o membro
CallDurationintegerDuração em segundos da ligação que está conectada com o membro
CallCalleridvarcharNúmero de origem da ligação que está conectada com o membro
BridgedChannelvarcharCanal da ligação que está conectada com o membro
BridgedUniqueidvarcharIdentificador único da ligação que está conectada com o membro
StatusDescriptionvarcharDescrição do Status (anteriormente documentado)
MemberNamevarcharNome do membro
MemberIdintegerID do membro no ezIPBX

Definição do objeto calls

O identificador (índice) do objeto é a posição atual na fila de espera.

CampoTipoDefinição
PositionintegerPosição da ligação na fila de espera
ChannelvarcharCanal da ligação de entrada.
UniqueidvarcharIdentificar único da ligação. Pode ser usado posteriormente com o método callRecFileGet para recuperar a gravação, se a mesma foi habilitada.
CallerIDNumvarcharNú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.
CallerIDNamevarcharNome de origem da ligação em espera
WaitintegerTempo 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.

Como podemos ajudar?