Функциональная группа (sipkit)
Описание
Определяет группу учетных записей SIP-пользователей, звонок на которых обслуживается по алгоритму группы.
Доступны следующие функциональные типы: группа переадресации, группа отказа, группа установки опций вызова, группа параллельных вызовов, группа шеф-секретарь.
Поля
{
"id": uuid,
"name": str,
"type": str,
"enabled": bool,
"cascade": bool,
"priority": int,
"details": object,
"opts": {
"title": str,
"comment": str
},
"ext": {
"ct": date,
"lwt": date
}
}
Спецификация | Описание |
---|---|
Поле: |
Идентификатор. Может быть задан при создании, иначе генерируется системой. |
Поле: |
Название группы. Отображается при трассировке. |
Поле: |
Тип группы. Под каждый тип задаются специфические настройки в поле 'details'.
|
Поле: |
Выключатель группы. |
Поле: |
Выключатель режима каскадирования. |
Поле: |
Приоритет применения группы. |
Поле: |
Объект с типизированными настройками. Подробнее в разделе Типы групп. |
Поле: |
Составное поле |
Поле: |
Произвольный заголовок |
Поле: |
Произвольный комментарий |
Поле: |
Составное поле, позволяющее расширять состав произвольными ключами и значениями |
Поле: |
Время создания объекта |
Поле: |
Время последней модификации объекта |
Типы групп
В зависимости от установленного типа группы задается специальный параметр 'details', и при звонке реализуется соответствующая логика.
Группа переадресации (redirect)
Группа переадресации вызова.
Фильтр 'filter_from' применяется к номеру исходного абонента-инициатора без учета переадресаций и переводов. Номер абонента, переадресовавшего вызов может быть отфильтрован полем 'filter_by'.
Поле: filter_from Режим: in Тип: str По умолчанию: * |
Маска-фильтр номера источника. Проверяется результат модификации правилами маршрутизации, примененными на предыдущих шагах. Изначально на проверку попадает номер источника из поля username заголовка Referred-By, а при его отсутствии заголовка From, SIP-запроса INVITE, либо результат более сложного определения номера абонента-инициатора (например sipuser phonenumber, результат применения sipuser extension, правил преобразования callerid на esg и др.). Режимы работы фильтров. |
---|---|
|
Маска-фильтр номера абонента, переадресовавшего звонок. |
|
Номер для переадресации. |
{ "filter_from": "*", "filter_by": "*", "redirect_number": "122" }
Группа отказа (reject)
Группа отказа в вызове.
Фильтр 'filter_from' применяется к номеру исходного абонента-инициатора без учета переадресаций и переводов. Номер абонента, переадресовавшего вызов может быть отфильтрован полем 'filter_by'.
Поле: filter_from Режим: in Тип: str По умолчанию: * |
Маска-фильтр номера источника. Проверяется результат модификации правилами маршрутизации, примененными на предыдущих шагах. Изначально на проверку попадает номер источника из поля username заголовка Referred-By, а при его отсутствии заголовка From, SIP-запроса INVITE, либо результат более сложного определения номера абонента-инициатора (например sipuser phonenumber, результат применения sipuser extension, правил преобразования callerid на esg и др.). Режимы работы фильтров. |
---|---|
|
Маска-фильтр номера абонента, переадресовавшего звонок. |
|
Код ответа. |
|
Причина отказа. |
{ "filter_from": "*", "filter_by": "*", "sip_code": 603, "sip_reason": "Some reason" }
Группа установки опций вызова (options)
Группа формирует изменение опций вызова для плеча и дочерних плеч (вызовов, инициированных переадресацией и/или параллельными вызовами в рамках текущего процесса маршрутизации).
В частности, позволяет установить:
-
dialog_timeoutsec
- ограничение на продолжительность разговора (от 5 до 7200). -
fork_timeoutsec
- специфическое время вызова плеча (от 3 до 180). -
fork_fromuri
- представление вызывающего абонента.
Установленное значение применяется для всех дочерних плеч, если для них в продолжении процесса маршрутизации не будет применена индивидуальная настройка из другой группы.
Значение по умолчанию - не применяет параметр группы. Значение "undefined"
- сбрасывает примененный ранее параметр.
Фильтр 'filter_from' применяется к номеру исходного абонента-инициатора без учета переадресаций и переводов. Номер абонента, переадресовавшего вызов может быть отфильтрован полем 'filter_by'.
Поле: filter_from Режим: in Тип: str По умолчанию: * |
Маска-фильтр номера источника. Проверяется результат модификации правилами маршрутизации, примененными на предыдущих шагах. Изначально на проверку попадает номер источника из поля username заголовка Referred-By, а при его отсутствии заголовка From, SIP-запроса INVITE, либо результат более сложного определения номера абонента-инициатора (например sipuser phonenumber, результат применения sipuser extension, правил преобразования callerid на esg и др.). Режимы работы фильтров. |
---|---|
|
Маска-фильтр номера абонента, переадресовавшего звонок. |
|
Список номеров, при поступлении вызова на которые происходит активация группы. |
|
Максимальная длительность диалога, секунды. Значение |
|
Таймаут вызова плеча, секунды. Применяется для всех плеч, дочерних по отношению к текущему вызову в рамках текущего процесса маршрутизации. Значение |
|
Представление вызывающего абонента. Применяется для всех плеч, дочерних по отношению к текущему вызову в рамках текущего процесса маршрутизации. Применяются только username и displayname. |
{ "filter_from": "*", "filter_by": "*", "numbers_to": ["205","206"], "fork_timeoutsec": 3, "fork_fromuri": "\"DISPLAY NAME\" <sip:username@domain>" }
Группа параллельного вызова (parallel)
Группа распараллеливания вызова в зависимости от маски инициатора вызова и опционально инициатора перевода вызова.
Любой вызов на номер учетной записи, указанной в списке 'numbers_to', приводит к одновременному вызову заданных в поле 'numbers_parallel' параллельных номеров.
Любой - это прямой, групповой, переведенный, переадресованный, из сценария.
В случае если такой номер вызывается в качестве параллельного из другой функциональной группы, то применение установленных для него параллельных номеров зависит от свойства каскадности функциональной группы.
Является общей альтернативой настройке индивидуального параллельного вызова в учетной записи SIP-пользователей.
При этом вызов в статистике привязывается к реальному владельцу номера-назначения.
Фильтр 'filter_from' применяется к номеру исходного абонента-инициатора без учета переадресаций и переводов. Номер абонента, переадресовавшего вызов может быть отфильтрован полем 'filter_by'.
Поле: filter_from Режим: in Тип: str По умолчанию: * |
Маска-фильтр номера источника. Проверяется результат модификации правилами маршрутизации, примененными на предыдущих шагах. Изначально на проверку попадает номер источника из поля username заголовка Referred-By, а при его отсутствии заголовка From, SIP-запроса INVITE, либо результат более сложного определения номера абонента-инициатора (например sipuser phonenumber, результат применения sipuser extension, правил преобразования callerid на esg и др.). Режимы работы фильтров. |
---|---|
|
Маска-фильтр номера абонента, переадресовавшего звонок. |
|
Список номеров, при поступлении вызова на которые происходит активация группы. |
|
Список номеров применяемых для инициации параллельного вызова. В любом случае вызовы будут отправлены на каждый из целевых номеров по одному разу. |
{ "filter_from": "*", "filter_by": "*", "numbers_to": ["205","206"], "numbers_parallel": ["205","206","207"] }
Группа шеф-секретарь (chief)
При поступлении вызова на шефа от номеров, отсутствующих в списке прямого доступа, производится вызов секретарей.
Решение о том, разрешен ли инициатору прямой вызов шефа, принимается на основании фильтра, примененного к номеру абонента, переведшего или переадресовавшего вызов на шефа.
Одновременно группа разрешает перехват вызова, подписку BLF между шефом и секретарями, а также размещает детализацию по входящему вызову в BLF-уведомлениях для отображения на панели устройств, чтобы абоненты группы видели инициатора вызова и могли перехватить.
Таким образом между шефом и секретарями нет необходимости настраивать отдельно разрешения правилами featurerules на следующие типы функций:
* pickup
, callwaiting
, blf
, blf_details
- во всех направлениях;
* intercom
, barge
- в направлении от шефа к секретарям.
Чтобы режим работал полноценно, необходимо:
* включить опцию 'blf_details_enabled' в настройках домена;
* настроить на телефонах шефа и секретарей BLF-подписки по необходимости (чтобы секретари видели состояние шефа, шеф видел состояния секретарей);
* настроить на телефонах шефа и секретарей отображение информации об инициаторе вызова при получении BLF сообщения (Yealink: account.X.dialoginfo_callpickup=1, features.pickup.blf_visual_enable=1);
* ограничить на телефонах шефа и секретарей применение визуализации BLF для определенного списка номеров (Yealink: features.pickup.blf_visual.list=101,102,103 или any);
* при необходимости аудио оповещения о звонке на номер шефа, настроить на телефонах секретарей проигрывание мелодии при получении BLF сообщения (Yealink: features.pickup.blf_audio_enable=1), настроить мелодию, и прописать ограничения применение аудио оповещения BLF для определенного списка номеров (Yealink: features.pickup.blf_audio.list=101,102,103 или any).
При вышеперечисленных настройках телефон подписчика отображает на дисплее входящие вызовы отслеживаемого абонента, предоставляя возможность перехватить выбранный.
Перехват осуществляется отправкой INVITE с заголовком Replaces (а не звонком на код абонентской функции, поскольку в этом режиме невозможно указать конкретный вызов для перехвата).
Существует альтернативная настройка с перехватом через код абонентской функции:
* создать код абонентской функции с типом "перехват по номеру" и настроить его доступность в правилах маршрутизации;
* настроить на телефонах шефа и секретарей поддержку функции перехвата - задание номера соответствующего фичакода (Yealink: account.x.direct_pickup_code);
* при настройке BLF-подписок на телефонах шефа и секретарей указать для каждой из них номер для перехвата (тот же код абонентской функции).
Чтобы работал режим с перехватом через фичакод, необходимо выключить на телефоне опцию (Yealink: account.X.dialoginfo_callpickup=0).
При использовании фичакода типа 'перехват' невозможно указать конкретный вызов для перехвата, если на отслеживаемое устройство поступает несколько вызовов.
В этой связи в целях повышения производительности целесообразно не использовать детализацию в BLF уведомлениях, отключив опцию 'blf_details_enabled' в настройках домена.
Поле: mode Режим: in Тип: str По умолчанию: cascade |
Алгоритм работы. Возможные варианты: * parallel - при звонке на номер шефа с любого номера, не упомянутого в группе, вызов переадресуется на обоих ассистентов параллельно.* cascade - при звонке на номер шефа с любого номера, не упомянутого в группе, вызов переадресуется последовательно на первого ассистента, затем на второго.* direct - при звонке на номер шефа с любого номера вызов проходит без переадресации. |
---|---|
|
Номер шефа. |
|
Номер первого ассистента. |
|
Номер второго ассистента. |
|
Список номеров, напрямую проходящих на шефа. Применяется к результату преобразования from/referred-by правилами маршрутизации. |
|
Мобильный номер шефа. Номер применяется для автоматической публикации состояния абонента, участвующего в диалоге. Пример кейса: секретарь соединяет шефа на мобильном номере последовательно с несколькими абонентами. Расширяет список внешних номеров с отслеживаним состояний, список которых задается в настройках домена. |
{ "mode": "cascade", "chief_number": "101", "assistant1_number": "102", "assistant2_number": "103", "direct_numbers": ["115", "123"] }
Произвольная группа (custom)
Применяется для реализации проектной логики.
Поле: filter_from Режим: in Тип: str По умолчанию: * |
Маска-фильтр номера источника. Проверяется результат модификации правилами маршрутизации, примененными на предыдущих шагах. Изначально на проверку попадает номер источника из поля username заголовка Referred-By, а при его отсутствии заголовка From, SIP-запроса INVITE, либо результат более сложного определения номера абонента-инициатора (например sipuser phonenumber, результат применения sipuser extension, правил преобразования callerid на esg и др.). Режимы работы фильтров. |
---|---|
|
Маска-фильтр номера абонента, переадресовавшего звонок. |
|
Список номеров, при поступлении вызова на которые происходит активация группы. |
|
Проектный тип группы. Определяет набор прочих параметров детализации. |
Дополнительно
Режимы работы фильтра
Режим | Описание |
---|---|
|
Подвергаемое проверке соответствия значение посимвольно проводится через фильтр.
При необходимости указать один из служебных символов как целевой, его следует заключать в квадратные скобки, например Например, |
|
Может применяться подстрока
В качестве значений полей в таблице могут применяться:
Применение табличного модификатора допускается в комбинации с другими управляющими командами посимвольного режима. Например, |
|
К исходному значению применяется шаблон Pattern. Структура значения regex-шаблона: Например,- значение:
При формировании шаблонов Pattern могут применяться все стандартные правила регулярных выражений. |
|
Подвергаемое проверке соответствия значение - целое числовое и входит в указанный диапазон числовых значений. Структура значения dia-шаблона: Например,- значение: |