Простая настройка очередей queues в asterisk

Простая настройка очередей queues в asterisk

Очереди в Asterisk являются действительно мощным средством управления приемом входящего вызова. Настройка Asterisk относительно очередей сводится к конфигурации файлов queues.conf и agents.conf. Технически задача выглядит следующим образом, имея три внутренних sip peer собрать стенд, для понимания и тестирования очередей. Реализация действий:

 

 

1-е Прописываем в файле sip.conf наши три тестовых номера sip, шаблон:
[clt-p6000001]
disallow=all
allow=ulaw
allow=alaw
type=friend
dtmfmode=auto
defaultuser=clt-p600
fromuser=clt-p600
secret=pass
nat=force_rport,comedia
qualify=yes
context=clt-p600
callerid=101
host=dynamic
call-limit=3
canreinvite=no
accountcode=clt-p600
amaflags=billing
callgroup=1
namedcallgroup=client
pickupgroup=1
namedpickupgroup=client
parkinglot=cltpark
;deny=0.0.0.0/0
;permit=192.168.2.2

2-е Добавляем агентов в файл agents.conf
[clt-agents](!)
autologoff=15
ackcall=yes
acceptdtmf=##
[1001](clt-agents)
fullname=Agent1
[1002](clt-agents)
fullname=Agent2
[1003](clt-agents)
fullname=Agent3

3-е Прописываем очередь для наших тестов
[queue1]
member => SIP/clt-p6000002,0,Agent2,Agent:1002
member => SIP/clt-p6000003,0,Agent3,Agent:1003
strategy = rrmemory
;ringall - При котором звонок производится по всем свободным номерам, пока один из них не ответит
;rrmemory - В этом случае запоминается последний агент, которому был передан звонок
;roundrobin - Несколько похож на rrmemory, только запоминается агент, с которого начинался поиск
;random (произвольный агент)
;leastrecent (отвечавший ранее других)
;fewestcalls (получивший меньшее количество звонков в этой очереди)
; syntax: member => interface,[,penalty][,membername][,state_interface][,ringinuse]
;
;member => DAHDI/1
;member => DAHDI/2,10
;member => DAHDI/3,10,Bob Johnson
;member => Local/1001'@'agents,0,May Flowers,Agent:1001
;member => Local/1002'@'agents,0,John Doe,Agent:1002
;member => Local/1000'@'default,0,John Smith,SIP/1000
;member => Local/2000'@'default,0,Lorem Ipsum,SIP/2000,no
;penalty - Приоритет менее и более важного агента, чем выше число, тем ниже вероятность поступления вызова

4-е Добавляем extensions по которому будут работать наши агенты и вызов в очередь
[queue]
exten => 1800,1,Answer()
exten => 1800,n,Queue(queue1)
exten => 1800,n,Hangup()
;AgentLogin
exten => 1801,1,AgentLogin(1001)
exten => 1802,1,AgentLogin(1002)
exten => 1803,1,AgentLogin(1003)

Поделиться:

Добавить комментарий

7 + 7 =
Решите простой математический пример. Например для "два плюс четыре =?" введите "6".