Страница 1 из 2

Очереди и их параметры.

Добавлено: 19 апр 2011, 20:31
Samael28
День добрый. Возникла проблема с очередями.
Есть очередь Operators:

Код: Выделить всё

strategy=rrmemory
timeout=10
retry=1
ringinuse = no
autofill=yes
joinempty=strict
leavewhenempty=strict
setinterfacevar=yes
monitor-format=wav
wrapuptime=60
Вызывается так:

Код: Выделить всё

exten => <Pattern>,n,Queue(Operators,rtT,,,33)
Операторы в нее добавляются сами через AddQueueMember.

Операторы вида

Код: Выделить всё

fullname =ХХХ
secret = ХХХХ
context = ХХХХХ
type = friend
host = dynamic
disallow = all
allow = alaw
call-limit = 3
callgroup=1
pickupgroup=1
limitonpeer=yes
canreinvite=no
t38pt_udptl = yes
dtmf=rfc2833
Cуть в том, чтобы звонящие сразу выходили из очереди, если все операторы заняты. Собсно, для этого указаны leavewhenempty и joinempty.
Это отлично отрабатывает, когда в очереди нету операторов. Но если есть, и они заняты, то звонок все равно весь тайм-аут крутится в очереди и в логи сыпется

Код: Выделить всё

app_queue.c:2275 wait_for_answer: No one is answering queue 'Operators' (6/1/0)
Вроде уже все просмотрел, но не получается, чтобы звонящие покидали очередь при занятых операторах. не подскажете, куда копать?
Версия * 1.4.40

Re: Очереди и их параметры.

Добавлено: 19 апр 2011, 21:14
ded
Если нужно чтобы звонящие сразу выходили из очереди, если все операторы заняты, то вам не нужна очередь, ибо очередь преследует как раз цель чтобы не выходили и ожидали.
Вам подойдёт просто Ring group с серийным исканием - hunting, memory-hunting. То есть выбор свободного оператора без учёта кто только что из них разговаривал или с учётом. Если все заняты - до свиданья!

Re: Очереди и их параметры.

Добавлено: 20 апр 2011, 14:37
Samael28
Эта надстройка, как я понял, используется в FreePBX. А если чистый *?

Re: Очереди и их параметры.

Добавлено: 20 апр 2011, 14:39
ded
Dial(SIP/101&SIP/102&SIP/103&SIP/104&SIP/105)
http://forum.asterisk.ru/viewtopic.php?f=3&t=121

Re: Очереди и их параметры.

Добавлено: 20 апр 2011, 16:46
Samael28
Спасибо, но тут вылезает куча других моментов. Queue позволяет нормально распределять нагрузку на операторов, плюс, пауза перед следующим вызовом, динамическое добавление/удаление агентов из очереди (сами входят и выходят).
Подсказали мне на asterisk.org, что добиться такого поведения очереди можно обновившись на 1.6.Х

Re: Очереди и их параметры.

Добавлено: 21 апр 2011, 12:15
Samael28
В общем, разобрался. В 1.4 такого функционала на Queue добиться нельзя. Поставил 1.6.2
А суть в том, чтобы делать каскадирование очередей. В первой нету свободных операторов - добро пожаловать во вторую.

Re: Очереди и их параметры.

Добавлено: 21 апр 2011, 13:34
barkosa
А если в queues.conf параметр joinempty установить равным strict?

Re: Очереди и их параметры.

Добавлено: 21 апр 2011, 13:43
Samael28
strict - это выход из очереди если в ней нет агентов, или все unaviable.
strict - penalty,paused,invalid,unavailable
InUse в ней нету.

Re: Очереди и их параметры.

Добавлено: 21 апр 2011, 13:55
barkosa
Я так понимаю у вас возник вопрос с тарификацией абонентов. Если в очереди именно агенты, тогда зачем в диалплане в команде Queue ставить 33 секунды ожидания? Если не используется аннонс для оператора то достаточно 1-2 секунды поставить, за это время звонок дойдет до свободного агента, если нет то абона выкинет из очереди.

И в Queue добавить параметр n, что не даст повторяться времени ожидания по истечении времени ожидания. Каламбур однако =)

Re: Очереди и их параметры.

Добавлено: 21 апр 2011, 15:10
Samael28
Нет, суть не в тарификации.
Суть в том, что надо играть сообщение типа "извините, никого нет, но вы можете подождать еще или нажмите 2 для...." если никто не берет трубку в течение 30 сек или все агенты заняты. А сделано для того, чтобы не пугать звонящих сразу снятой трубкой и музычкой.
Стоит 2 идентичных по агентам очереди, одна с moh.
Вот и все.

PS: Там не агенты в понимании *, там что-то типа AgentCallBackLogin.