[asterisk-users] Full queue issues

Vinícius Fontes vinicius at canall.com.br
Thu Apr 24 15:58:37 CDT 2008


Hello everyone.

I got a little problem in here: I want to set up a queue so that if anything of these happens:

a) No agents logged in
b) All agents busy

Then the user gets diverted somewhere. I used this (for testing purposes only, of course):

exten => 7080,1,Answer()
exten => 7080,n,Queue(teste)
exten => 7080,n,Goto(${QUEUESTATUS})
exten => 7080,n(ERROR),NoOp(${QUEUESTATUS})
exten => 7080,n,Hangup()
exten => 7080,n(LEAVEEMPTY),Goto(ERROR)
exten => 7080,n(TIMEOUT),Goto(ERROR)
exten => 7080,n(JOINUNAVAIL),Goto(ERROR)
exten => 7080,n(LEAVEUNAVAIL),Goto(ERROR)
exten => 7080,n(JOINEMPTY),Goto(ERROR)
exten => 7080,n(TIMEOUT),Goto(ERROR)

exten => *210,1,AddQueueMember(teste,SIP/${CALLERID(num)})
exten => *210,n,UserEvent(RefreshQueue)
exten => *210,n,Playback(agent-loginok)

exten => *220,1,RemoveQueueMember(teste,SIP/${CALLERID(num)})
exten => *220,n,UserEvent(RefreshQueue)
exten => *220,n,Playback(agent-loggedoff)



In queues.conf:

[teste]
strategy=roundrobin
music=default
timeout=10
retry=0
maxlen=1
ringinuse=no
leavewhenempty=strict
joinempty=strict


Then I have those scenarios:

a) There is no agents logged in, a call tries to enter the queue, the ${QUEUESTATUS} variable is set to LEAVEEMPTY and the call is disconnected. Everything fine in here.

b) There is only one agent logged in, he's in a call (InUse), the call enters the queue and stays there. I would like the call NOT to enter the queue and the ${QUEUESTATUS} variable to be set to something different.

Am I missing something or it's just not possible? I'm using SIP phones for the agents and Asterisk 1.4.15.


Att
Vinícius Fontes
Desenvolvimento
Canall Tecnologia em Comunicações Ltda.



More information about the asterisk-users mailing list