/domain/<DOMAIN>/cc/queue/<QUEUE>/ - команды управления очередью
Таблица 1. Параметры очереди.
Параметр | Значение | Описание |
---|---|---|
Агенты (agents) | список вариантов: | список операторов, обслуживающих данную очередь |
агент (agent):<AgentId> | созданный заранее оператор (см. Создание агентов) | |
номер (alias):<PhoneNumber> | телефонный номер абонента SSW или внешний номер | |
Описание (description) | строка | краткое описание очереди |
Установка набора статусов постобработки (acw_status_set) | строка | устанавливает рабочий набор статусов постообработки (ACW). Пустое значение — отсутствие возможности выбора статусов |
Перевод оператора в состояние "Технический перерыв" по неответу на распределенный на него вызов (auxwork_if_no_answer) | строка | если установлена какая-либо причина технического перерыва, оператор будет переведен в состояние "Технический перерыв", если не ответит на распределенный на него вызов |
Перевод оператора в состояние "Технический перерыв" при отклонении распределенного на него вызова (auxwork_if_reject) | строка | если установлена какая-либо причина технического перерыва, и оператор отклонил вызов, этот оператор будет принудительно переведен в состояние "Технический перерыв". |
Распределение (distribution_mode) | варианты: | одна из следующих стратегий распределения: |
ручное (manual) | распределение звонков из очереди осуществляется супервизором вручную | |
зацикленное (cycle) | циклическое распределение | |
распределение с последовательным включением новых агентов (progressive) | распределение с последовательным включением агентов в окно вызова | |
серийное распределение (serial) | устанавливает соединение с операторами в алфавитном порядке. Сначала осуществляется соединение с первым оператором. Если оператор не отвечает по прошествии времени, указанного в window_duration, или же если оператор отбивает вызов, соединение с текущим оператором прекращается, и начинается соединение со следующим по списку оператором. Так продолжается до тех пор, пока окно не достигнет последнего оператора. После этого окно уже не сдвигается, и продолжается попытка соединения с последним оператором до исчерпания времени max_distribution_duration или пока оператор не отклонит соединение. При неудачной попытке распределения механизм будет запускаться повторно до исчерпания количества попыток, определяемого параметром max_distribution_attempts | |
случайное (random) | случайный оператор | |
наиболее свободный агент (mia) | наиболее свободный агент (Most Idle Agent) — оператор, который свободен от обслуживания нагрузки дольше других | |
наименее занятый агент (loa) | наименее занятый агент (Least Occupied Agent) — оператор, который обслужил меньшую нагрузку за определенный промежуток времени | |
массовый обзвон (multicall) | вызов на всех доступных операторов одновременно | |
Почта (email) | адрес почты | адрес почты, на который необходимо отправлять оповещения о пропущенных звонках |
extra_condition_mode | ||
Группы (groups) | список | группы, супервизоры которых смогут обозревать данную очередь |
Блокировать при неответе (lock_if_no_answer) | bool | если параметр выставлен в false, то после этого для всех последующих вызовов механизм блокировки отключается. Параметр 'goodness' продолжает меняться, поэтому все операторы начнут получать блокировку по заслугам после включения опции. Для уже заблокированных операторов блокировка не пропадает, но по истечении периода повторно не накладывается. |
Блокировать при отклонении вызова (lock_if_reject) | bool | Если параметр выставлен в true и оператор отклоняет вызов, то распределение других вызовов на него блокируется. При каждом следующем отклонении его статус понижается:
Изначально операторы имеют статус 'goodness' = good. После каждого непринятого или отклоненного вызова статус меняется: good → bad → ugly После каждого принятого вызова статус меняется в обратном порядке: ugly → bad → good |
Максимальное количество попыток распределения (max_distribution_attempts) | число | максимальное количество попыток распределения вызова на операторов. Если вызов не был распределён за данное количество попыток, то будет отправлен в ветку ERROR блока queue_cc |
Максимальное время попыток распределения (max_distribution_duration) | число, секунды | максимальное время для одной попытки распределения. Данный параметр используется для того чтобы ограничить время попытки распределения вызова (актуально для cycled-режима) |
Максимальное время ожидания (max_wait_time) | число, секунды | максимальное время, которое вызов находится в очереди. По истечении этого времени вызов покидает очередь, и IVR-сценарий продолжает выполнение по ветви ERROR |
Максимальное количество активных ожидающих обратных вызовов (max_active_waiting_callbacks) | число, секунды | максимальное количество активных ожидающих обратных вызовов. Этот параметр связан с параметром IVR-блока распределения входящих вызовов в очередь allow_waiting (разрешить дальнейшее ожидание) и дает возможность определенному количеству абонентов ожидать ответа оператора на линии |
Период между повтором обратного вызова (callback_cooldown_timeout) | число, секунды | таймер стартует, когда клиент отклонил обратный вызов от оператора. Если же оператор отклонил вызов, то callback повторно распределяется N раз, где N — max_distribution_attempts (свойство очереди). По умолчанию — 5 мин |
Обработка повторных обращений (remember_choice) | варианты: | отправлять вызов на того же оператора при повторном обращении клиента: |
не запоминать распределение (none) | не запоминать распределение | |
запоминать распределение (strict) | распределять в любом случае | |
распределять, если агент свободен (non_strict) | распределять, если агент свободен | |
Режим КПВ (ringback_mode) | варианты: | режим проигрывания приветствия, варианты: |
однократно (once) | однократно (по умолчанию) — проигрывать КПВ, если распределение началось немедленно при помещении вызова в очередь | |
не проигрывать КПВ (none) | не проигрывать КПВ, только приветствие | |
Отклонить, если нет операторов (rules\decline_if_no_operators) | bool | при значении true и отсутствии операторов очереди вызов будет отклонен |
Максимальное предсказываемое время ожидания в очереди (rules\max_predicted_time) | число, секунды | максимальное предсказываемое время ожидания. При превышении вызов не будет помещен в очередь и IVR-сценарий продолжит выполнение по ветви FULL |
Длина очереди (rules\queue_length) | число | максимальное количество вызовов в очереди. При превышении вызов не будет помещен в очередь и IVR-сценарий продолжит выполнение по ветви FULL |
Блокировка при серийном распределении (serial_lock_enabled) | bool | блокировка в случае отклонения вызова при серийном распределении. В случае, если свойство включено, операторы при серийных распределениях будут блокироваться на 20 сек |
Распределение согласно умениям (skill_based_distribution) | bool | распределение вызовов согласно умениям операторов; |
time_prediction\based_on | варианты: | параметр, определяющий, какое значение будет считаться базовым при расчете предсказываемого времени ожидания разговоров в очереди: |
average | среднее значение длительности обработки вызова. Используется как значение по умолчанию | |
most_freq | среднее значение длительности обработки вызова в 30 секундном интервале, в который попало наибольшее количество разговоров | |
defined_value | указанное вручную примерное значение продолжительности обработки вызова | |
time_prediction\defined_value | число, секунды | указанное вручную значение продолжительности обработки вызова в секундах. Используется в предсказании, если параметр based_on имеет значение defined_value или количество собранных значений продолжительности обработки вызовов, попадающих в интервал [lower_threshold, upper_threshold] , меньше значения min_values_in_statistics . |
time_prediction\min_values_in_statistics | число | минимальное количество собранных значений продолжительности обработки вызова, попадающих в интервал [lower_threshold, upper_threshold] . Является пороговым значением, при достижении которого, очередь начинает использовать алгоритмы основанные на средних значениях (average,most_freq). По умолчанию 10 значений |
time_prediction\statistics\lower_threshold | число, секунды | наименьшее значение продолжительности обработки вызова, определяет нижнюю границу при сборе статистических данных. Все вызовы, длительность обработки которых не превышает данное значение, не будут учитываться при расчёте времени ожидания. По умолчанию 10 секунд |
time_prediction\statistics\max_count | число | максимальное количество значений продолжительности обработки вызовов, хранимое в статистике. По умолчанию 100 |
time_prediction\statistics\upper_threshold | число, секунды | наибольшее значение продолжительности обработки вызова, определяет верхнюю границу при сборе статистических данных. Все вызовы, длительность обработки которых превышает данное значение, не будут учитываться при расчёте времени ожидания. По умолчанию 1800 секунд. |
Период сдвига "окна вызовов", с (window_duration) | число, секунды | таймаут сдвига окна вызовов. Данный параметр указывается для режимов: |
add-agent
Команда предназначена для добавления нового агента в очередь
Путь команды:
/domain/<DOMAIN>/cc/queue/<QueueId>/add-agent
Синтаксис:
add-agent alias <AddressRange> | agent <AgentRange>
Параметры:
<QueueId> - идентификатор очереди
<AliasRange> - интервал алиасов (номеров)
<AgentRange> - интервал идентификаторов агентов. Идентификатор агента - целое число, которое будет использоваться для управления агентом с телефонного аппарата;
Агенты предварительно должны быть созданы (см. /domain/<DOMAIN>/cc/agent)
Пример:
admin@[ds1@ecss1#ECSS 010070]:/$ domain/eltex/cc/queue/eltex_queue/add-agent agent 20{1-3} ok
clean
Команда предназначена для установки значения по умолчанию для выбранного параметра очереди.
/domain/<DOMAIN>/cc/queue/<QueueId>/clean
Синтаксис:
clean <Property>
Параметры:
<QueueId> - идентификатор очереди;
<Property> - параметр очереди, которому нужно установить значение по умолчанию.
Описание всех параметров очереди приведено в таблице 1.
Пример:
admin@[ds1@ecss1#ECSS 010070]:/$ domain/eltex/cc/queue/eltex_queue/clean distribution_mode ok
info
Команда позволяет просмотреть информацию о параметрах выбранной очереди.
Путь команды:
/domain/<DOMAIN>/cc/queue/<QueueId>/info
Синтаксис:
info [<Property>]
Параметры:
<QueueId> - идентификатор очереди;
<Property> - параметр очереди значение которого нужно вывести. Если не указан, то выводятся все установленные параметры.
Описание всех параметров очереди приведено в таблице 1.
Пример:
admin@mycelium1@ecss1:/$ domain/biysk.local/cc/queue/line1/info ┌──────────────────────────────────────────┬─────────────┐ │ Property │ Value │ ├──────────────────────────────────────────┼─────────────┤ │acw_status_set │busy │ │agent_number_forwarding_enabled │false │ │agents │agent:501 │ │ │agent:502 │ │ │agent:503 │ │ │agent:504 │ │ │agent:505 │ │ │agent:506 │ │ │agent:507 │ │ │agent:508 │ │ │agent:509 │ │auxwork_if_no_answer │undefined │ │auxwork_if_reject │undefined │ │callback_cooldown_timeout │300 │ │description │ │ │distribution_mode │random │ │email │undefined │ │extra_condition_mode │none │ │groups │ltp1 │ │lock_if_no_answer │true │ │lock_if_reject │false │ │max_active_waiting_callbacks │infinity │ │max_distribution_attempts │3 │ │max_distribution_duration │10 │ │max_wait_time │3600 │ │queue_id │line1 │ │remember_choice │none │ │ringback_mode │once │ │rules\decline_if_no_operators │false │ │rules\max_predicted_time │infinity │ │rules\queue_length │infinity │ │serial_lock_enabled │true │ │skill_based_distribution │false │ │time_prediction\based_on │defined_value│ │time_prediction\defined_value │60 │ │time_prediction\min_values_in_statistics │10 │ │time_prediction\statistics\lower_threshold│10 │ │time_prediction\statistics\max_count │100 │ │time_prediction\statistics\upper_threshold│1800 │ │window_duration │10 │ └──────────────────────────────────────────┴─────────────┘
is-member
Команда проверяет относится ли агент или алиас(номер) к указанной очереди.
Путь команды:
/domain/<DOMAIN>/cc/queue/<QueueId/is-member
Синтаксис:
is-member agent <AgentId> | alias <AliasNumber>
Параметры:
<QueueId> - идентификатор очереди;
<AgentId> - идентификатор агента, для которого необходимо проверить относится ли он к конкретной очереди;
<AliasNumber> - номер алиаса, для которого необходимо проверить относится ли он к конкретной очереди.
Примеры:
admin@[ds1@ecss1#ECSS 010070]:/$ domain/eltex/cc/queue/eltex_queue/is-member agent 201 true
remove-agent
Команда предназначена для удаления агентов из очереди
Путь команды:
/domain/<DOMAIN>/cc/queue/<QueueId>/remove-agent
Синтаксис:
remove-agent alias <AddressRange> | agent <AgentRange>
Параметры:
<QueueId> - идентификатор очереди
<AliasRange> - интервал алиасов агентов, которых необходимо удалить из очереди;
<AgentRange> - интервал идентификаторов агентов, которых необходимо удалить из очереди.
Пример:
admin@[ds1@ecss1#ECSS 010070]:/$ domain/eltex/cc/queue/eltex_queue/remove-agent agent 206 ok
set
Команда предназначена для установки значения определенного параметра очереди.
/domain/<DOMAIN>/cc/queue/<QueueId>/set
Синтаксис:
set <Property>
Параметры:
<QueueId> - идентификатор очереди;
<Property> - параметр очереди, который нужно изменить.
Описание всех параметров очереди приведено в таблице 1.
Пример:
admin@[ds1@ecss1#ECSS 010070]:/$ domain/eltex/cc/queue/eltex_queue/set max_distribution_attempts 2 ok