----- Original Message -----
From: James FitzGibbon
To: Asterisk Users Mailing List - Non-Commercial Discussion
Sent: Wednesday, February 14, 2007 10:34 AM
Subject: Re: [asterisk-users] AgentCallBackLogin vs AddQueueMember
On 2/13/07, gc <[EMAIL PROTECTED]> wrote:
I am developing an ACD front end using Asterisk 1.2.14. I heard that
AgentCallBackLogin will be deprecated in future version of *.
Is this true? If it is, how can I use AddQueueMember to replace
AgentCallBackLogin? I mean to login an agent in multiple queues at once. I have
multiple queues and a lot of agents defined in queues.conf and agents.conf.
Each agent may login more than one queue. It seem that AgentCallBackLogin is
much easier than AddQueueMember to manage this kind of situation.
The setup to use AddQueueMember isn't terribly difficult.
Here's a contrived example where dialing *11[23]XX adds channel SIP[23]XX to
queue sales, and *21 with the same suffix removes them. *12/*22 is for
custserv and *13/*23 is for techsupp. There's no authentication here, but
that's not the difficult part of the exercise:
exten => _*11[23]XX,1,AddQueueMember(sales,SIP/${EXTEN:3})
exten => _*11[23]XX,n,Saydigits(${EXTEN:3})
exten => _*11[23]XX,n,Hangup()
exten => _*21[23]XX,1,RemoveQueueMember(sales,SIP/${EXTEN:3})
exten => _*21[23]XX,n,Saydigits(${EXTEN:3})
exten => _*21[23]XX,n,Hangup()
exten => _*12[23]XX,1,AddQueueMember(custserv,SIP/${EXTEN:3})
exten => _*12[23]XX,n,Saydigits(${EXTEN:3})
exten => _*12[23]XX,n,Hangup()
exten => _*22[23]XX,1,RemoveQueueMember(custserv,SIP/${EXTEN:3})
exten => _*22[23]XX,n,Saydigits(${EXTEN:3})
exten => _*22[23]XX,n,Hangup()
exten => _*13[23]XX,1,AddQueueMember(techsupp,SIP/${EXTEN:3})
exten => _*13[23]XX,n,Saydigits(${EXTEN:3})
exten => _*13[23]XX,n,Hangup()
exten => _*23[23]XX,1,RemoveQueueMember(techsupp,SIP/${EXTEN:3})
exten => _*23[23]XX,n,Saydigits(${EXTEN:3})
exten => _*23[23]XX,n,Hangup()
Then, calls to Queue(queuename) will work like AgentCallbackLogin() do.
The problem I am having is that the channel that shows up in the CDR and the
queue log is the phone that took the call, not the agent on the phone. It
seems that I will have to establish a mapping between agents and channels and
remove down the mapping at agent logoff, then use the map to determine which
actual agent was on SIP/200 when the call came in in order to produce
meaningful per-agent reports.
Any suggestions on how to make that part easier are welcome.
--
j.
------------------------------------------------------------------------------
_______________________________________________
--Bandwidth and Colocation provided by Easynews.com --
asterisk-users mailing list
To UNSUBSCRIBE or update options visit:
http://lists.digium.com/mailman/listinfo/asterisk-users
_______________________________________________
--Bandwidth and Colocation provided by Easynews.com --
asterisk-users mailing list
To UNSUBSCRIBE or update options visit:
http://lists.digium.com/mailman/listinfo/asterisk-users