[Asterisk-Users] getting agentID and DNID help

Terry Wade terry at acticom.co.za
Wed Jun 28 02:31:52 MST 2006


Hi Guys

I have just installed a call center onto Suse 10. I have managed to do a 
DBget (astdb) and extract the DNID numbers to play a DNID specific 
greeting. We have installed Snom 320 and the customer would like us to 
Send the DNID(nam) to the phone screens so that the agent will be able 
to answer in the correct language and with the specific customer company 
name (ie. Agent says "Welcome to JP Morgan helpline" as they will be 
able to get the JP morgan helpline name on the screen).  This is what my 
incoming dial-plan looks like so far:

[Inbound}
exten => _X.,1,GotoIfTime(21:29-07:29|mon-thu|*|*?After-hours,s,1)
exten => _X.,2,GotoIfTime(17:59-07:59|fri-sat|*|*?After-hours,s,1)
exten => _X.,3,GotoIfTime(17:59-07:29|sun|*|*?After-hours,s,1)
exten => _X.,4,Answer
exten => _X.,5,Wait(2)
exten => _X.,6,NoOp(-----ID ${CALLERID(num)}-----)
exten => _X.,7,DBget(COMPDNID=checked/${DNID})
exten => _X.,8,GotoIf($["${DNID}" = "4966"]?clientX,4966,1:9)
exten => _X.,9,GotoIf($["${COMPDNID}" = "1"]?10:102)
exten => _X.,10,ResponseTimeout(7)
exten => _X.,11,Background(custom/${DNID}1)
exten => 1,1,Goto(english-q,1,1)
exten => 2,1,Goto(lang-2-q,1,1)
exten => 3,1,Goto .......etc

I have tried to do a:
exten => _X.,1,Set(CALLERID(name)=${DB(CIDNAMES/${DNID})})
but this has not seemed to help.

I am sure there is someone out there that will be able to point me in 
the right direction. Please bear in mind that i am still fairly new to 
asterisk and their dial plans.

The second question i would like to ask is as follows:

I have roaming agents. They have no fixed seating positions as the work 
in shifts for 24 hour days. There are extensions on the desks and they 
have unique agent login ID's.

This creats a small problem if i am trying to pause the agents from the 
multiple queues that are in. 5 of them to be correct.

This is what i was thinking:

exten => PauseQueueMember(|Agent/${agentid}) ;

but i cant seem to manage to get the agentID from anywhere, I see that 
once an agent has logged in there is a global variable 
AGENTBYCALLERID_{EXTEN} set. Is there some way of using this to pause or 
unpause the agent?


TIA


Terry



More information about the asterisk-users mailing list