Asterisk Queue呼叫中心的实现

1.先在sip.conf中建立若干个sip账号

   如:

   [2207]
type=friend
mailbox=2207
dtmfmode=rfc2833
callgroup=
host=dynamic
username=2207
secret=2207
canreinvite=yes
context=internal
callerid=sch<2207>
pickupgroup=
accountcode=
nat=yes
disallow=all
allow=ilbc
allow=alaw
allow=g729

其他的账号就不一一写出来了。

2. 将这些sip账号加入了座席(Agent)中,在agents.conf中加入

   agent => 2207,2207,Agent one

   即 agent => 账号,密码,座席名(任意定义)

   其他的成员也以这样的方式加入.

3.将座席加入到队列(Queue)中,即在queues.conf中加入

   (1),先定义一个队列名 ,

   (2),然后将座席加入

  如下:

  [myqueue]

  member => Agent/2207

  同理再将其他的座席也加入

  4. 在拨号方案中加入登录到队列的操作,在extension.conf中的sip指定的[internal]中加入以下语句

   [internal]

   exten => 6100,1,AgentCallbackLogin(,,${CALLERID(num)}@internal) 

   在sip账号登录之后,再呼叫6100,然后系统会提示输入座席号及密码,然后就会提示已经进入队列了。 

   即具体的AgentCallbackLogin的参数的使用,就请各位在http://www.voip-info.org查询一下了。

   大致就是指 AgentCallbackLogin([AgentNo][|[options][|[exten]@context]]):

   即 AgentNo 就是指 座席号,由于本流程中,是希望所有的座席都可以登录,所以就省去了这个参数。

   options这里没有使用,也空着

   [exten]@context 这个就是指,在哪个context和exten 中接收进入到队列的流程。

   如我们这里设置的,即是在internal中。

   因为我们要在internal的context中加入

   exten => _22XX,1,Dial(${EXTEN})  

   在呼叫座席,所以要这样定义。

   如果想在其他的context中接收进入队列的流程时,可以自己调整

   5. 在拨号方案 internal中接收呼叫

   [internal]

   加入

   exten => _22XX,1,Dial(${EXTEN})

   6.在拨号方案中,增加进入队列的流程

   [internal]

   增加

   exten => 999,1,Queue(myqueue)

   整个呼叫中心就是这样完成了。

猜你喜欢

转载自hwzyyx.iteye.com/blog/767113