AgentCallBackLogin() 在 Asterisk 1.6.x 的解決方法
AgentCallBackLogin()這個Dialplan 功能在 Asterisk 1.6.x 後已經被删去了。因此,用 Asterisk 1.6.x 的 ACD 功能的話這部分便需要自己用 dialplan 解決了。以下的 source code 是小弟自己在 Google 找出來的。功能有待驗證。
參考:http://hostseries.com/agentcallbacklogin-alternative/
voicemail.conf
[agent] 1234,Robert,agents@hostseries.com,attach=yes|saycid=yes|envelope=yes|delete=yes|nextaftercmd=no
extensions.conf
[internal]
exten = 701,1,VMAuthenticate(@agent|)
exten = 701,n,AddQueueMember(SALES|local/${AUTH_MAILBOX}@agents/n)
exten = 701,n,AddQueueMember(SUPPORT|local/${AUTH_MAILBOX}@agents/n)
exten = 701,n,Read(AGENT_SIP|agent-newlocation)
exten = 701,n,Set(DB(agent_sip/${AUTH_MAILBOX})=${AGENT_SIP})
exten = 701,n,Playback(agent-loginok)
exten = 701,n,Playback(goodbye)
exten = 701,n,Hangup
exten = 702,1,VMAuthenticate(@agent|)
exten = 702,n,RemoveQueueMember(SALES|local/${AUTH_MAILBOX}@agents/n)
exten = 702,n,RemoveQueueMember(SUPPORT|local/${AUTH_MAILBOX}@agents/n)
exten = 702,n,Set(oldvar=${DB_DELETE(agent_sip/${AUTH_MAILBOX})})
exten = 702,n,Playback(agent-loggedoff)
exten = 702,n,Playback(goodbye)
exten = 702,n,Hangup
[agents]
exten = 1050,1,Set(AGENT_SIP=${DB(agent_sip/1050)})
exten = 1050,n,Dial(SIP/${AGENT_SIP})




