Asterisk™: будущее телефонии Второе издание - Меггелен Джим Ван
strategy (стратегия)
Asterisk может использовать шесть стратегий распределения вызовов между агентами:
ringall (звонить всем)
Очередь звонит всем доступным агентам и устанавливает соединение с агентом, ответившим первым (это по умолчанию).
roundrobin (циклический) - устаревший
Очередь последовательно перебирает всех агентов до тех пор, пока не найдет того, кто может принять вызов. roundrobin не учитывает загруженности агентов. Также, поскольку roundrobin всегда начинает с первого агента в очереди, эта стратегия подходит только в среде, где агенты более высокого ранга должны обрабатывать все вызовы, и только в случае их занятости принять вызов могут агенты с более низким рангом.
leastrecent (самый давний)
Вызов направляется на обработку агенту, который не получал вызовы дольше всех.
fewestcalls (меньше всего вызовов)
Вызов направляется на обработку агенту, который получил меньше всего звонков. Эта стратегия не учитывает фактической загруженности агента; она учитывает только количество принятых им вызовов (например, агент, принявший 3 вызова по 10 мин каждый, будет предпочтительнее агента, принявшего 5 вызовов по 2 мин каждый).
random (случайный)
Как следует из имени этого параметра, выбор агента осуществляется случайным образом. Для небольшого центра обработки вызовов эта стратегия, вероятно, наиболее предпочтительная.
rrmemory
Очередь перебирает список обработчиков очереди вызовов, отслеживая, кто из них получил вызов последним. При поступлении следующего вызова Asterisk начнет с этого участника. (Эта стратегия известна как циклическая память (round-robin memory)). Она обеспечивает более или менее равномерное распределение вызовов между агентами.
servicelevel (уровень обслуживания)
В центре обработки вызовов уровень обслуживания представляет максимальное время ожидания вызывающего абонента перед тем, как его звонок будет передан на обработку агенту. Например, если для servicelevel задано значение 60 и показатель уровня обслуживания равен 80%, это означает, что 80% поступивших в очередь вызовов были переданы агентам в течение менее 60 с.
context
Если для очереди задан контекст, вызывающий абонент, нажав всего одну цифру, сможет выйти на соответствующий добавочный номер в заданном контексте, если тот существует. Это действие выводит вызывающего абонента из очереди вызовов, то есть он потеряет свое место в очереди - об этом необходимо помнить при использовании данной функции.
timeout
Значение timeout определяет максимальную продолжительность попыток дозвониться агенту (в секундах), по истечении которого агент будет признан недоступным, а вызов будет возвращен в очередь.
retry
По истечении времени ожидания значение параметра retry определяет, сколько секунд необходимо подождать, прежде чем представлять вызов вновь доступному агенту.
weight (вес)
Параметр weight определяет ранг очереди вызовов. Если вызовы ожидают в нескольких очередях, первыми агентам будут предлагаться очереди с большим значением weight. При проектировании очередей вызовов необходимо помнить следующее: эта стратегия может привести к тому, что вызов из очереди с самым низким весом никогда не получит ответа. Всегда необходимо гарантированно обеспечить перевод вызовов из очередей с более низким весом в очереди с более высоким весом, чтобы не допустить бесконечного ожидания ответа.
maxlen (максимальная длина)
maxlen - это максимальное количество вызовов, которое может быть добавлено в данную очередь, прежде чем вызов перейдет к следующему приоритету текущего добавочного номера.
announce-frequency (частота объявлений)
Значение announce-frequency (задаваемое в секундах) определяет, как часто вызывающему абоненту объявляется его место в очереди вызовов и предполагаемое время ожидания.
announce-holdtime (объявить время ожидания)
Существует три допустимых значения этого параметра: yes, no и once. Параметр announce-holdtime определяет, должно ли быть включено предполагаемое время ожидания в объявление места в очереди вызовов. Если задано значение once, оно будет озвучено для вызывающего абонента только один раз.
monitor-format (формат записи)
Этот параметр принимает три возможных значения: wav, gsm и wav49. Активируя эту опцию, вы сообщаете Asterisk о своем желании записывать все выполненные вызовы в очереди в заданном формате. Если эта опция не задана, звонки не будут записываться.
monitor-join (объединить запись)
Приложение Monitor() в Asterisk обычно выполняет запись каждого из направлений разговора в отдельный файл. Задавая параметру monitor-join значение yes, мы указываем Asterisk объединять эти файлы в конце разговора. Этот параметр следует задавать, только если задан параметр MonitorType для приложения Monitor.
joinempty
Этот параметр принимает три значения: yes, no и strict. Позволяет определять возможность добавления вызывающих абонентов в очередь вызовов на основании статуса участников обработки очереди. Опция strict запретит добавление вызывающих абонентов в очередь, если все участники обработки вызовов недоступны.
leavewhenempty (покинуть, если пустая)
Этот параметр определяет, будут ли ожидающие ответа вызывающие абоненты удалены из очереди вызовов при возникновении условия, не допускающего добавления абонента в очередь (то есть когда все ваши агенты вышли из системы и ушли домой).
eventwhencalled (событие при поступлении вызова)
Задайте для eventwhencalled значение yes, если вы хотите, чтобы события очереди передавались в интерфейс Manager.
eventmemberstatusoff (отключить формирование дополнительной информации)
Задав для этого параметра значение no, можно обеспечить формирование дополнительной информации о каждом участнике обработки очереди вызовов.
reportholdtime (сообщить время ожидания)
Если для этого параметра задано значение yes, участнику обработки очереди вызовов, ответившему на звонок, будет объявлено, сколько времени вызывающий абонент ожидал соединения.
memberdelay (задержка участника)
Этот параметр определяет, будет ли задержка между моментом выявления очередью свободного агента и моментом соединения вызова с этим агентом.
member => имя_участника
Участниками обработки очереди могут быть или типы каналов, или агенты. Все агенты, перечисленные здесь, должны быть описаны в файле agents.conf.
res_odbc.conf
Назначение модуля res_odbc.so - сохранение информации конфигурационного файла в базу данных и извлечение этой информации из базы данных. Файл res_odbc.conf определяет, как организуется доступ к таблице базы данных. Файл extconfig.conf используется для описания способа соединения с базой данных.
res_snmp.conf
Файл res_snmp.conf используется для конфигурации поддержки протокола SNMP (Simple Network Management Protocol - простой протокол управления сетью) в Asterisk. В разделе [general] имеется две опции. Опция subagent (субагент) определяет, должен ли res_snmp выполняться как субагент или как полноправный SNMP-агент. В Asterisk по умолчанию он выполняется как субагент. Опция enabled (активирован) определяет, активирована ли поддержка SNMP в Asterisk. Значение по умолчанию - no, его придется изменить, если необходима поддержка SNMP.
rpt.conf
Файл rpt.conf используется для конфигурации последнего проекта Джима Диксона, Jim's Radio Repeater Application (Программный ретранслятор Джима) (app_rpt). Он обеспечивает возможность Asterisk обмениваться информацией, используя VoIP с применением технологии ретранслятора. Это позволяет эффективно обеспечивать большую зону покрытия беспроводными сетями и информацией маршрутизации для радиолюбителей через их высокоскоростные локальные интернет-соединения.
rtp.conf
Файл rtp.conf управляет портами транспортного протокола реального времени RTP (Real-time Transport Protocol), используемым Asterisk для формирования и приема RTP-трафика. Протокол RTP используется SIP, H.323, MGCP и, возможно, другими протоколами для передачи медиа-данных между конечными точками.