Страница 2 из 3
Re: Не отрабатывается busylevel
Добавлено: 04 дек 2015, 14:56
Pechen
или group_count используйте.. или верните call-limit)
Re: Не отрабатывается busylevel
Добавлено: 04 дек 2015, 15:40
sip-queue
to Pechen
group_count у меня получилось сделать если идёт прямой вызов (прямой Dial), в очереди данная проверка не работает.
call-limit = 2 не дает делать исходящие вызовы, когда две линии заняты, а две свободны.
to ded
Не подскажите, как давать отлуп по статусу in use, если звонок в очереди?
Re: Не отрабатывается busylevel
Добавлено: 04 дек 2015, 16:24
ded
Буду рад, если вы сами это найдёте. Честно - много своей работы.
Re: Не отрабатывается busylevel
Добавлено: 04 дек 2015, 16:27
sip-queue
Согласен, было бы здорово!
Но пока все поиски по базе знаний, не дают результатов.
Re: Не отрабатывается busylevel
Добавлено: 04 дек 2015, 16:34
ded
Мне очень жаль.
Re: Не отрабатывается busylevel
Добавлено: 04 дек 2015, 16:54
sip-queue
Да и потом, если по in use мониторить и давать отбой - это будет означать, что на телефон может поступить только один вызов.
Код: Выделить всё
engeneries has 0 calls (max unlimited) in 'ringall' strategy (3s holdtime, 34s talktime), W:0, C:77, A:63, SL:0.0% within 0s
Members:
SIP/104 (Not in use) has taken no calls yet
SIP/103 (In use) has taken 6 calls (last was 6626 secs ago)
SIP/102 (Not in use) has taken 2 calls (last was 7728 secs ago)
SIP/101 (Not in use) has taken no calls yet
No Callers
Данный момент я могу закрыть параметром ringinuse=no
А мне-то нужно сделать только два вызова ИЗ ОЧЕРЕДИ (чтобы оставшиеся две линии из четырех были всегда свободны для исходящей связи).
Re: Не отрабатывается busylevel
Добавлено: 04 дек 2015, 16:58
ded
Нет.
CLI> sip show inuse
Peer name In use Limit
203 1/0/0 50
202 0/0/0 50
201 1/1/0 50
The three counters are from left to right
Channels in use
Channels ringing
Channels on hold
Думаю, что перед посылкой в очередь можно выполнять проверку на подобие sip show inuse, чтобы отслеживать сколько у каждого Channels in use, и если > 2, то переход к другим операторам.
два вызова ИЗ ОЧЕРЕДИ (чтобы оставшиеся две линии из четырех были всегда свободны для исходящей связи).
для этого не нужно две свободные линии, достаточно при занятых нажать кнопку Новый вызов. Распределять на физическом уровне линия свободна/занята - это наследие из аналоговых АТС.
Задача у вас нетривиальная, хотелось бы вскрыть мозг вживую оператору - автору такого запроса.
Get DEVICE_STATE () inuse
Set DEVICE_STATE () inuse
перед отправкой вызова в очередь.
https://books.google.lv/books?id=glJUa3 ... an&f=false
Re: Не отрабатывается busylevel
Добавлено: 04 дек 2015, 17:11
sip-queue
А это мысль, благодарствую.
Только что проверил, при проигрыше анонса, sip show inuse показывает, что линии не заняты.
А значит перед входом в очередь система скажет одно, а через несколько секунд состояние изменится (т.е. проигрышь анонса закончится и система опять будет обзванивать операторов и линии будут уже заняты).
для этого не нужно две свободные линии, достаточно при занятых нажать кнопку Новый вызов. Распределять на физическом уровне линия свободна/занята - это наследие из аналоговых АТС.
А как это сделать если все линии звонят (мигают), нажав на кнопку линии, оператор ответит на вызов?
Можно в момент проигрыша анонса нажать кнопку свободной линии, во-первых - это не удобно, а во-вторых - это если звонков не много, а если звонков в очереди например 20...
Re: Не отрабатывается busylevel
Добавлено: 04 дек 2015, 17:21
ded
при проигрышь анонса статус ringing
201 1/1/0 50 - вторая цифра из этих трёх счётчиков
Вам надо продумать логику проверки более детально.
Если линии будут inuse и/или ringing
Re: Не отрабатывается busylevel
Добавлено: 04 дек 2015, 21:00
sip-queue
Верно.
Хм...
Получается нужно несколько очередей создавать и в зависимости от того что там с линиями у каждого из операторов отправлять клиента в определенную очередь. А иначе после того как звонок попал в очередь, там не объяснить кому звонить, а кому нет, это же не прямой dial.