Очередь ожидания (hunt)
Описание
Дескриптор очереди ожидания. В качестве ресурсов очереди назначаются SIP-пользователи.
Обслуживается ролью huntq, которая на основании дескрипторов выстраивает очереди ожидания, следит за состояниями ресурсов и соединяет ожидающие объекты с ресурсами на основе настроенных стратегий.
В очередь могут быть размещены звонки. Размещением звонков в очереди управляет роль IVR посредством КАФ (featurecode) с типом 'hunt' и 'queue'.
Для организации персональных и групповых очередей можно не создавать сущности отдельно, они по умолчанию динамически воссоздаются с настройками по умолчанию для организации очереди в момент поступления вызова на КАФ типа 'queue'. При необходимости задать специфические свойства для такой очереди, достаточно создать сущность с требуемыми параметрами и указать в поле 'phonenumber' сущности hunt номер соответствующего пользователя или группы.
Объект может представлять собой шаблон, на основании которого динамически выстраиваются дескрипторы очередей в момент поступления вызова на код абонентской функции "queue".
Так, одним экземпляром сущности hunt можно настроить единый формат разных очередей для нескольких (или всех) объектов - пользователей или групп. Сущность рассматривается как шаблон, если значение поля 'opts.template_type' указано 'personal' или 'group'.
При поступлении вызова на очередь постфикс набираемого номера (extension) рассматривается как номер, по которому сначала ищется конкретная сущность hunt, затем ищется шаблон, затем выстраивается динамический дескриптор со стандартными значениями по умолчанию.
Будет ли применен конкретный шаблон для динамического построения на базе него дескриптора зависит от заданного типа ('opts.template_type') и маски номера ('opts.filter_number'). Конкретно, удовлетворяет ли маска, заданная в поле 'opts.filter_number' (и опционально 'opts.tab'), расширению набранного номера. Если удовлетворяет, то обнаруживается учетная запись sipuser или sipgroup с исследуемым номером в зависимости от того, какой тип шаблона указан в поле 'opts.template_type'.
Ограничения
-
Коллекция недоступна в мастер-домене.
-
Лицензируется количественным параметром: расходуется лицензия на количество ресурсов выбранного типа.
Поля
{
"id": uuid,
"code": str,
"phonenumber": str,
"priority": int,
"type": str,
"resourses": array<object>,
"strategy": object,
"resmode": str,
"objmode": str,
"weight": int,
"wivrscript": str,
"qivrscript": str,
"preivrscript": str,
"reslimit": int,
"maxattempts": int,
"maxattemptstrannumber": str,
"resdialtimeout": int,
"timeout": int,
"timeouttrannumber": str,
"displayname": str,
"huntblock": object,
"resbansec": int,
"opts": {
"title": str,
"comment": str,
"exit_no_resource": bool
},
"ext": {
"ct": date,
"lwt": date
}
}
Спецификация | Описание |
---|---|
Поле: |
Идентификатор. Может быть задан при создании, иначе генерируется системой. |
Поле: |
Код. Используется для ассоциирования с другими сущностями. Уникальное значение. |
Поле: |
Телефонный номер. Является ключом при поиске сущности во время поступления звонка на КАФ (featurecode) типа 'hunt'. При формировании шаблона поле не используется и заполняется автоматически. |
Поле: |
Приоритет очереди. |
Поле: |
|
Поле: |
Список ресурсов (участников) в очереди с указанием их приоритета. Состав полей элемента списка. |
Поле: |
Стратегия добавления участников для объекта (абонента). Состав полей. |
Поле: |
Стратегия выбора ресурса (участника) из числа свободных ресурсов при поступлении нового объекта в пустую очередь |
Поле: |
Стратегия выбора объекта очереди при освобождении ресурса |
Поле: |
Вес очереди. |
Поле: |
Код IVR-сценария приветствия в очереди звонков. |
Поле: |
Код IVR-сценария ожидания в очереди звонков. |
Поле: |
Код IVR-сценария предварительного воспроизведения участнику очереди звонков после его ответа перед соединением с абонентом. |
Поле: |
Количество одновременно выдаваемых ресурсов. |
Поле: |
Максимально допустимое количество вызовов ресурсов (участников). |
Поле: |
Номер для переключения при превышении попыток maxattempts. |
Поле: |
Продолжительность попытки дозвона в секундах. |
Поле: |
Максимальное время ожидания в очереди в секундах |
Поле: |
Номер для переключения при превышении максимального времени ожидания. |
Поле: |
DislpayName, подставляемый в звонок из очереди к ресурсу. |
Поле: |
Режим применения временного запрета использования ресурса типа SIP-пользователь после завершения обслуживания звонка. Пример:
Применется при type = |
Поле: |
Время в секундах, на которое ресурс (участник) становится заблокированным в связи с неудачей соединения. |
Поле: |
|
Поле: |
Произвольный заголовок |
Поле: |
Произвольный комментарий |
Признак прекращения ожидания при отсутствии доступных ресурсов |
|
Поле: |
Выключатель режима early-media во время ожидания в очереди. При вызовах из внешней сети провайдеры могут ограничивать время пребывания в состоянии Early Media, например 20 секундами, после чего производит обрыв сеанса.
|
Поле: |
Режим шаблона. По умолчанию не используется. Варианты значений:
|
Поле: |
Маска-фильтр номера, которому принадлежит правило переадресации. |
Поле: |
Табличные данные для использования фильтров в рамках одной сессии поиска сущности. |
Поле: |
Позволяет расширять состав произвольными ключами и значениями |
Поле: |
Время создания объекта |
Поле: |
Время последней модификации объекта |
Типы очередей
Значение | Описание |
---|---|
|
Все ресурсы являются идентификаторами объекта user. |
|
Все ресурсы являются идентификаторами объекта sipuser. |
Состав полей элемента списка ресурсов
Поле | Тип значения | Описание |
---|---|---|
|
|
|
|
|
Приоритет ресурса (участника) в момент применения resmode |
Состав полей стратегии
Поле | Тип значения | Описание |
---|---|---|
|
|
Название стратегии:
|
|
|
Список временных сдвигов начала вызова следующего ресурса (участника), начиная со второго. |
Стратегии выбора ресурса (участника)
Значение | Описание |
---|---|
|
Выбирает из свободных ресурсов самый приоритетный ресурс, а если их несколько, то выбирает среди них случайным образом |
|
Выбирает случайный ресурс из свободных на данный момент |
|
Выбирает из свободных ресурсов ровно в том порядке, как они указаны в списке в поле resources |
Стратегии выбора объекта (абонента)
Значение | Описание |
---|---|
|
(Strict Priority Queueing) – режим выбора очереди на основании priority |
|
(Weighted Fair Queueing) – режим выбора очереди на основании weight |
|
режим выбора очереди, на основании priority, а среди одинаковых по weight |
Режимы работы фильтра
Режим | Описание |
---|---|
|
Подвергаемое проверке соответствия значение посимвольно проводится через фильтр.
При необходимости указать один из служебных символов как целевой, его следует заключать в квадратные скобки, например Например, |
|
Может применяться подстрока
В качестве значений полей в таблице могут применяться:
Применение табличного модификатора допускается в комбинации с другими управляющими командами посимвольного режима. Например, |
|
К исходному значению применяется шаблон Pattern. Структура значения regex-шаблона: Например,- значение:
При формировании шаблонов Pattern могут применяться все стандартные правила регулярных выражений. |
|
Подвергаемое проверке соответствия значение - целое числовое и входит в указанный диапазон числовых значений. Структура значения dia-шаблона: Например,- значение: |