AF
Asterisk Forum
обсуждения телефонии, VoIP и IP-PBX
12разделов
5 423тем
34 385сообщений
← К списку тем

asterisk queue пропускать занятых операторов

Newbies/FAQ Forum 5 сообщений -
#1

Добрый вечер!

подскажите пожалуйста как реализовать задачу.

в queues.conf

[911]
announce-frequency=35
announce-holdtime=yes
announce-position=yes
periodic-announce-frequency=0
queue-callswaiting=queue-callswaiting
queue-thereare=queue-thereare
queue-youarenext=queue-youarenext
queue-thankyou=queue-thankyou
announce-position=yes
maxlen=0
retry=1
timeout=10
strategy=rrmemory
ringinuse=yes
member=SIP/913
member=SIP/911

в sip.conf

call-limit=2

при такой настройке, когда звонок попадает в очередь, вне зависимости от того занят оператор или нет, звонок все равно будет поступать на оператора. как сделать чтобы звонок попадая в очередь пропускал занятых операторов и попадал только на свободных, но если все они заняты звонок все таки приходил на оператора по второй линии?

ringinuse=no и ожидание пока освободиться какой-либо оператор если все заняты не подходит как вариант((( один оператор находится в нескольких очередях и если он занят ему нужно видеть что пришел второй звонок и возможно ответить на него если он важнее.

спасибо за помощь!
#2

inuse ?

вам нужно будет сделать две очереди.
В первой проверять параметр inuse и если все заняты перекидывать в вторую очередь и так уже начинать крутить по кругу "ждите ответа" пока кто-то не освободиться, и дергать занятых операторов.

joinempty = inuse,paused,ringing,unavailable,invalid,unknown,penalty
leavewhenempty = inuse,paused,ringing,unavailable,invalid,unknown,penalty
#3

параметр

ringinuse=no

_________________
P4 3.0 + 1Gb CentOS 5.7 Aster 1.8.15.1
Не люблю gui-сборки: натуральный продукт вкуснее.
И еще: я ПРОФИ так как НЕ ЛЕНЮСЬ читать литературу.
#4

awsswa @ Вт Окт 02, 2012 03:55 писал(а):
inuse ?

вам нужно будет сделать две очереди.
В первой проверять параметр inuse и если все заняты перекидывать в вторую очередь и так уже начинать крутить по кругу "ждите ответа" пока кто-то не освободиться, и дергать занятых операторов.

joinempty = inuse,paused,ringing,unavailable,invalid,unknown,penalty
leavewhenempty = inuse,paused,ringing,unavailable,invalid,unknown,penalty



спасибо. придется так и делать. не хотелось очереди плодить, сейчас больше 10 станет еще в два раза больше(((
#5

ааааа, так бы и сказали что оператор в нескольких очередях.
Тогда можно извратится с постановкой на паузу в очереди, через PauseQueueMember и возврат через UnpauseQueueMember