Matthew Koch
2004-Jun-17 12:56 UTC
[Asterisk-Users] Having problems with Agents and calls going to voicemail
I am having problems with a call queue setup where voicemail seems to be getting in the way. Here's what I've found: When I have 2 users logged in as Agents (using AgentCallbackLogin) they will both ring when a new call comes in. If, for instance, one of the users makes an outgoing call and a new call comes in, the caller will get sent directly to that agents busy voicemail message. It seems to me the queue should just ignore that agent and move on to another agent if there is one available. If there is not, the call should sit in the queue until normal timeouts apply. As a side note, the 180 second timeout doesn't seem to apply. The timeouts specified in queues.conf do seem to have some affect, but I can't tell what they end up meaning. Here are the relevant configs: -- queues.conf -- [FirstLevel] music = default monitor-format = gsm monitor-join = yes context = queue-options timeout = 20 strategy = ringall retry = 10 maxlen = 0 member => Agent/2000 member => Agent/2001 -- agents.conf -- agent => 2000,,Chuck Rice agent => 2001,,Bob Smith -- extensions.conf -- [Support] exten => t,1,Queue(FirstLevel|nt|||180) exten => s,1,Background(Q) exten => s,2,Queue(FirstLevel|nt|||180) exten => s,3,Queue(SecondLevel|nt|||180) exten => s,4,Queue(ThirdLevel|nt|||180) exten => s,5,Voicemail(b3000) Matthew Koch Ethostream LLC mkoch@ethostream.com
Aaron J. Angel
2004-Jun-17 18:46 UTC
[Asterisk-Users] Having problems with Agents and calls going to voicemail
Matthew Koch [asterisk@house-o-love.com] wrote:> When I have 2 users logged in as Agents (using > AgentCallbackLogin) they will both ring when a new call comes in. > > If, for instance, one of the users makes an outgoing call and > a new call comes in, the caller will get sent directly to > that agents busy voicemail message.Depends on how your agents login. Actually, it doesn't seem Asterisk works well with voicemail to begin with, as there seems to be no variable for the destination channel (although there is a CDR field). However, one could do something like this with the AgentCallbackLogin app, for example: [agentext] exten => 3000,1,Dial(SIP/3000) [normalext] exten => 3000,1,Macro(standardextensionmacro,SIP/3000) exten => 555,1,AgentCallbackLogin(,${CALLERIDNUM}@agentext) I really think this is a kludgy way to do it though, and would rather see a ${DSTCHANNEL} variable or the likes. Now that I'm curious, I just might delve into the code and see how to do that...