Вход на хостинг
IT-новости
20.04.2016 iPhone 2017 года поместят в водонепроницаемый корпус из стекла
Линейка iPhone в новом году серьезно поменяется. В этом уверен аналитический исследователь Мин Чи Ку......
30.07.2015 Ищем уникальный контент для сайта
Ищем уникальный контент для сайта Без уникального контента Ваш сайт обречен на то, что его страницы......
При описании агента, через запятую, после ID (member => Agent/3002,1) может указываться параметр penalty. Сервер будет последовательно обзванивать агентов, начиная с penalty с меньшим номером, если они все заняты, то перейдет на агентов с более высоким значением penalty. Это можно использовать для обслуживания очереди в критические моменты. Например, у персонала с номером penalty = 0 отвечать на звонки – это основная обязанность, они и будут обслуживать очередь. Если количество звонков увеличится, будет привлечен дополнительный персонал с penalty = 1 и так далее.
Параметр strategy отвечает за распределение вызовов между агентами. По умолчанию используется значение ringall, при котором звонок производится по всем свободным номерам, пока один из них не ответит. Такой режим не всегда удобен, и можно рекомендовать только при критических нагрузках, поэтому в зависимости от ситуации его нужно изменить на другой. Например, в небольшом офисе подойдет вариант более справедливый rrmemory. В этом случае запоминается последний агент, которому был передан звонок, при поступлении следующего запроса поиск начнется со следующего по списку агента. Режим roundrobin несколько похож на rrmemory, только запоминается агент, с которого начинался поиск, и в следующий раз поиск начнется со следующего по списку. Возможны другие варианты: random (произвольный агент), leastrecent (отвечавший ранее других) и fewestcalls (получивший меньшее количество звонков в этой очереди).
Также в файле в параметрах, начинающихся на queue-*, описано несколько звуковых файлов, используемых для указания абоненту его позиции в очереди или приблизительного времени ожидания обработки его вызова. Сами сообщения на английском, нужно на их место подставить свои.
Чтобы агенты могли регистрироваться, необходимо в extensions.conf добавить специальные расширения и занести сам экстеншн:
; номер для регистрации агента
exten=> 7001,1,AgentCallbackLogin(||${CALLERIDNUM}@callcenter)
[callcenter]
exten=> 911,1,Answer
exten=> 911,2,Ringing
exten=> 911,3,Wait(2)
exten=> 911,4,Queue(MyQueue)
exten=> 911,5,Hangup
; и номера телефонов
exten => 600,1,Dial(SIP/600)
; и так далее
После изменений в конфигурации не забываем перезагружать Asterisk:
$ sudo asterisk -r
CLI> reload
Сервер должен показать, что модуль app_queue.so готов к работе (True Call Queueing).
Теперь, чтобы зарегистрировать агента, набираем номер 7001 и по подсказкам системы вводим сначала ID = 3001 и #, затем пароль 1234 и #. При работе с некоторыми софтфонами (X-Lite и ZoIPer njxyj) Asterisk почему-то не определяет автоматически номер телефона, поэтому на третьем шаге может последовать запрос о номере, к которому следует привязать агента – 600 и #.
Если все сделано правильно, то будет проиграно сообщение «agent-loginok», сервер положит трубку, а в консоли появится сообщение:
Callback Agent '3001' logged in on 600@callcenter