Описание функционала Call-центра

В данной части руководства по эксплуатации изложены основные понятия, настройка и управление Call-центром.

Определения

Ключевыми компонентами в Call-центре являются очереди, операторы и супервизоры. К ним можно добавить IVR редактор системы ECSS-10.

Call-центр представляет собой компонент системы EСSS-10, включающий в себя:

  • Очереди, занимающиеся распределением входящих вызовов на указанные телефонные номера и операторов.
  • Операторов — пользователей, занимающихся обработкой вызовов с очередей. Роль оператора даёт дополнительные преимущества по сравнению с обычным телефонным номером:
    • поддержка статусов "доступен", "отошел", "заблокирован";
    • возможность принимать/отклонять входящие вызовы через веб-браузер, просматривать историю разговоров и статистику через автоматизированное рабочее место (АРМ) оператора;
  • Супервизоров — пользователей автоматизированного рабочего места (АРМ) супервизора. С помощью этого компонента можно наблюдать за текущей работой Call-центра:
    • статусы операторов; вызовы, ожидающие в очереди;
    • статистика и так далее. В АРМ Супервизора есть дополнительные инструменты для повышения эффективности работы Call-центра:
    • подключение к вызову, обслуживаемому оператором, в режиме консультирования, прослушивания или конференции;
    • блокировка указанного оператора.

Прямые вызовы на телефонные номера операторов Call-центра или осуществляемые ими вызовы так же видны супервизору, могут прослушиваться, записываться, отражаются в статистике, а значит являются полноценными вызовами Call-центра.

Прямой вызов — вызов осуществленный на телефонный номер напрямую (без помощи процедуры ACD).

ACD (Auto Call Distribution) вызов — вызов прошедший через автоматическую процедуру распределения (это вызов распределенный очередью на одного из операторов, или на один из указанных номеров).

Вызовы, ожидающие в очереди, так же видны супервизору. Таким образом он может оценивать как долго ждет ответа тот или иной абонент. Кроме того, в истории вызовов будет видна причина по которой завершился тот или иной вызов. Например, если абонент положит трубку не дождавшись ответа оператора, это будет видно в истории вызовов и будет отражено в статистике.

Очередь Call-центра

Очередь (Queue) - один из центральных компонентов Call-центра, позволяющий определять приоритеты между входящим обращениями и распределять их между агентами.
Очередь вызовов предназначения для приема вызовов и постановки их в очередь ожидания. Вызов ожидает очереди до тех пор, пока не освободится один из операторов. Таким образом количество упущенных вызовов существенно снижается. Пока вызывающий абонент ожидает ответа, ему может проигрываться музыка, место в очереди и приблизительное время ожидания в очереди.

Очередь Call-центра также является компонентом IVR редактора, что даёт дополнительные возможности по гибкому конфигурированию под индивидуальные требования заказчика: голосовое меню, переадресация по времени дня, по вызываемому номеру и так далее. Call-центр Eltex предоставляет два типа очередей: базовые и расширенные. Оба типа доступны в IVR редакторе.

Базовая очередь

Базовая очередь доступна в стандартной лицензии ECSS-10. Для такого типа очереди определяется одна из следующих стратегий распределения вызовов:

  • Random (Случайный выбор)
  • Serial (Серийный)
  • Progressive (Нарастающий)
  • Cyclic (Циклический)
  • Multicall (Массовый обзвон)
  • В базовую очередь можно подключить только телефонные номера (Операторы с АРМ не обслуживаются)
  • Очереди не видны супервизору;
  • Базовую очередь, созданную в одном IVR сценарии, нельзя использовать в другом.

Преимуществом такой очереди является простота конфигурирования. Такая очередь подойдёт клиентам, которым нужна возможность обеспечивать комфортное ожидание дозвонившимся абонентам, и в то же время не нужен полный функционал Call-центра (АРМ оператора, АРМ супервизора и так далее).

Расширенная очередь

Для клиентов, которым необходим полноценный функционал Call-центра существует механизм расширенной очереди. Настройка расширенной очереди включает большее число шагов, но такая очередь имеет ряд преимуществ:

  • Расширенная очередь может распределять вызовы на телефонные номера и операторов.
  • Супервизор может просматривать статистику по данной очереди; осуществлять мониторинг и прослушивание вызовов, распределенных с данной очереди; осуществлять консультирование операторов (более подробно о возможностях АРМ супервизора (см. Супервизор).
  • Очередь учитывает статусы операторов и не распределяет вызовы на отсутствующих на месте агентов;
  • Очередь не распределяет вызовы на операторов, которые заняты постобработкой вызовов (см. Оператор);
  • Расширенную очередь можно добавить в несколько IVR сценариев;

Интеграция с супервизором является важной особенностью расширенной очереди. Например, супервизор может оценить как часто Call-центр теряет вызовы, причины потерь (абоненты в данной очереди не дожидаются ответа или операторы, находясь на месте не обрабатывают поступающие вызовы). Использование операторов вместо обычных телефонных номеров также является важным преимуществом. Очередь, помимо состояния телефонной линии, определяет статусы операторов ("доступен", "отошел", "заблокирован"), и не будет распределять вызовы на операторов, которых нет на месте.

Постобработка вызова - это состояние, когда оператор уже положил трубку, но ещё не готов принять следующий вызов, так как ему требуется предпринять дополнительные действия связанные с обработкой текущего вызова — например заполнить специальную карточку инцидента, заказа и так далее. Для завершения постобработки оператор может воспользоваться АРМ Оператора (см. Оператор), или использовать специальный feature-код телефонного аппарата (см. Оператор). Только после этого очередь будет считать данного оператора доступным.

Чтобы сконфигурировать расширенную очередь необходимо выполнить следующие шаги:

Также имеется возможность создавать расширенную очередь, используя приложение web-конфигуратора Call-центр.

Помимо стратегий распределения и ограничений на помещение в очередь, которыми обладают базовая очереди, расширенная очередь обладает ещё одним важным свойством — группы. Очередь может быть членом одной или более групп. Если при создании очереди группа не была указана, очередь считается членом группы по умолчанию — default. Для того чтобы супервизор мог наблюдать за очередью, очередь должна находиться в той же самой группе, что и супервизор. Помимо административной роли, деление на группы имеет также чисто технический аспект: чем меньше группа (чем меньше в ней очередей и операторов) тем ниже трафик между ECSS-10 и АРМ Супервизора.

Ограничения очереди

Базовая и расширенная очереди могут устанавливать ограничения по количеству вызовов, по времени ожидания вызова в очереди.

Существуют следующие ограничения:

  • Длина очереди — максимальное количество вызовов, которое одновременно может ожидать в очереди. Если количество превышено, вызов не будет добавлен в очередь, а IVR сценарий немедленно продолжит выполнение по ветке FULL (см. Описание IVR сценария с использованием очереди). Для базовой очереди данный параметр указывается в блоке "Очередь" ("Queue") в IVR сценарии, для расширенной — конфигурируется через командную строку CLI реализованную подсистемой Cocon (см. Руководство по управлению Call-центром).
  • Максимальное время ожидания — максимальное время, которое вызов может ожидать в очереди. Если время превышено, вызов немедленно покидает очередь и связанный с данным вызовом IVR сценарий немедленно продолжит выполнение по ветке ERROR (см. Описание IVR сценария с использованием очереди). Для базовой очереди данный параметр указывается прямо в блоке очереди в IVR сценарии ("время ожидания"), а для расширенной — конфигурируется через командную строку CLI реализованную подсистемой Cocon (см. Руководство по управлению Call-центром).
  • Максимальное предполагаемое время ожидания. Данный параметр является опциональным, доступен только для расширенной очереди (см. Руководство по управлению Call-центром). При добавлении вызова очередь пытается предсказать время, которое он будет ожидать в очереди как "Примерная частота обслуживания вызовов очередью" * "Количество предшествующих вызовов". Если полученное время превышает настроенное максимальное предсказываемое время ожидания, то вызов не будет добавлен в очередь, и сценарий немедленно продолжит выполнение по ветке FULL.

Сервис очереди для обратного вызова (Callback)

Если абонент не дождался ответа оператора или сработало ограничение очереди, то вызов может быть отмечен специальным признаком и размещен в очереди в режиме Callback.

Вызов, находящийся в очереди в режиме callback сохраняет многие свойства обычного вызова, в том числе:

  • Позиция в очереди определяется согласно приоритету и времени добавления;
  • К вызову применяются штатные, настроенные для очереди стратегии распределения (включая skill-based распределение);
  • Для вызова работают механизмы принудительного распределения, перемещения в другую очередь и на предпочтительного оператора;
  • Работают опции "максимальное количество попыток распределения", "продолжительность распределения" (подробнее см. Руководство по управлению Call-центром)

Однако, есть следующие отличия:

  • Максимальное время ожидания ответа для такого вызова равно 2 часам. При этом предыдущее время ожидания (до приобретения вызовом признака callback) не учитывается.
  • Специальная пауза между попытками обратного вызова. В случае, если оператор ответил на вызов, но до абонента дозвониться не удалось, то повторная попытка распределения будет осуществлена не ранее, чем через 5 минут.

Существует два режима работы сервиса очереди Callback:

  • Перезвонить, если абонент не дождался ответа

Если абонент не дождался ответа оператора, то вызов отмечается специальным признаком и размещается в очереди в режиме Callback.

  • Перезвонить при сработавшем ограничении

Позволяет добавлять в очередь в режиме callback вызов, который не проходит ни по одному из граничных условий (max_predicted_time или queue_length) (подробнее см. Руководство по управлению Call-центром).

Работу сервиса можно настроить через IVR-редактор. Существуют следующие варианты работы данного сервиса:

  • Требовать/не требовать подтверждения с помощью нажатия кнопки на телефонном аппарате:
    • Кнопка для подтверждения
    • Кнопка для отказа
  • Разрешать/не разрешать дальнейшее ожидание
  • Проигрывать/не проигрывать КПВ оператору

Помимо этого можно задать набор фраз, проигрываемых в той или иной ситуации, каждая из которых является опциональной (подробнее см. блок очереди в разделе IVR-редактор).

Режимы "Перезвонить, если абонент не дождался ответа" и "Перезвонить при сработавшем ограничении" не противоречат друг другу и могут использоваться вместе.

В случае если абонент делает повторный звонок и попадает в очередь, где у него уже есть вызов В1 в режиме callback, то очередь, проанализировав его номер телефона, заменит вызов В1 новым вызовом, поставив его на ту же самую позицию. Таким образом абонент при желании может возобновить ожидание, позвонив в очередь повторно. Для этого должны быть соблюдены следующие условия: длина очереди позволяет добавить вызов, разрешено дальнейшее активное ожидание вызовов, добавляемых в режиме callback (активирован режим "Перезванивать при сработавшем ограничении").

Если на момент распределения вызов обладает признаком callback и абонент отсоединен, то очередь, выполнив успешное распределение на свободного оператора, предпримет попытку вызова на отсоединенного абонента. Если абонент отвечает, то соединение считается установленным, если нет, то засчитывается неудачная попытка распределения. Свойство goodness у оператора повышается, как в случае успешного обслуживания вызова.

Если на момент распределения абонент остаётся на линии, хотя вызов и добавлялся в режиме "Перезванивать при сработавшем ограничении" или "Перезванивать, если абонент не дождался", процедура распределения отрабатывает штатным образом. Максимальное время ожидания в этом случае соответствует максимальному времени ожидания обычного вызова. Также для этих вызовов не используется специальная пауза между попытками обратного вызова.

Более подробно настройка полноценной очереди будет рассмотрена ниже.

Стратегии распределения

Стратегии распределения базовой очереди

Базовая очередь доступна в стандартной лицензии ECSS-10. Для такого типа очереди определяется одна из следующих стратегий распределения вызовов:

  • Random (Случайный выбор)
  • Serial (Серийный)
  • Progressive (Нарастающий)
  • Cyclic (Циклический)
  • Multicall (Массовый обзвон)

Стратегии распределения расширенной очереди

Стратегии распределения делятся на два вида: простые и множественного выбора.

Простые стратегии распределения

Простые стратегии распределения подразумевают выбор одного свободного оператора за попытку распределения. Вот их список:

  • MIA (Most Idle Agent) — очередь выбирает оператора, с момента последней попытки распределения на которого прошло больше всего времени. Более формально это можно описать следующим образом. При включенной стратегии mia идентификаторы операторов помещаются в специальный список в порядке в котором они перечислены в конфиге. При распределении очередь будет выбирать свободного оператора, который наиболее всего близок к голове данного списка, и распределять на него вызов, при этом сразу же перемещая его идентификатор в конец списка.
  • LOA (Least Occupied Agent) — очередь выбирает оператора, который за определенный интервал времени менее других обслуживал вызовы, распределенные очередью. Размер интервала определяется таймером /domain/<Domain>/timers/core/abonent_manager_statistic_boom_timeout и по умолчанию равен 5 минут.
  • Random — очередь выбирает оператора случайным образом

Если оператор не отвечает на распределенный вызов, он временно блокируется очередью. Время блокировки зависит от свойства оператора goodness:

  • good — время блокировки 20 секунд;
  • bad — время блокировки 40 секунд;
  • ugly — время блокировки 60 секунд;

Изначально у всех операторов значение свойства goodness = good. При каждом неотвеченном вызове значение goodness, в зависимости от текущего значения, изменяется от good к bad или от bad к ugly. При каждом отвеченном вызове значение goodness изменяется в обратном направлении — от ugly к bad или от bad к good.
Очередь не будет предпринимать попытки распределения на заблокированного оператора и, если у вызова не исчерпались попытки распределения, вызов будет обслужен другим свободным оператором.
Блокировка очередью не является штатным механизмом работы очереди, так как оператор, уходящий на перерыв или отсутствующий по другим причинам, может перейти в состояние "отошел", либо выполнить logout, используя телефонный аппарат или веб-АРМ. Кроме того, супервизор может принудительно заблокировать оператора, используя механизм блокировки супервизором, или же выполнить force-logout. Однако блокировки очередью служат защитным механизмом, в случае если отсутствующий на оператор всё же не был выведен из обслуживания, или же, если в качестве операторов используются рядовые абоненты SSW, не использующие функционал агентов. Сказанное выше о блокировках очередью справедливо для всех простых стратегий распределения как в базовых, так и в расширенных очередях.

Стратегии распределения множественного выбора

Стратегии распределения множественного во время одной процедуры распределения захватывают сразу всех операторов (или подходящих по скиллу. См. skill-based распределение) и устанавливают с ними соединение, руководствуясь логикой конкретной стратегии распределения.

  • Multicall (Массовый обзвон) — очередь распределяет вызов на всех операторов из числа доступных одновременно. Первый оператор, поднявший трубку будет обслуживать вызов, соединения с остальными операторами отбиваются. В случае если ни один из выбранных операторов не отвечает на вызов, все операторы, участвовавшие в распределении блокируются и их свойство goodness изменяется аналогично простым стратегиям распределения. Однако время блокировки не зависит от значения goodness и всегда равно 20 секундам.

В случае всех остальных стратегий распределения множественного выбора, блокировка очередью не применяется.
Параметр очереди window_duration актульнен только для стратегий serial, cycled и progressive. Это время в секундах после которого очередь начнет устанавливать соединение со следующей подгруппой операторов. Иными словами, это время сдвига окна распределения. По умолчанию 10 секунд.

  • Serial (Серийный выбор) — устанавливает соединение с операторами в порядке, в котором они добавлены в очередь. Сначала осуществляется соединение с первым оператором. Если оператор не отвечает по прошествии времени, указанного в window_duration, или же если оператор отбивает вызов, соединение с текущим оператором прекращается и начинается соединение со следующим по списку оператором. Так продолжается до тех пор, пока окно не достигнет последнего оператора. После этого окно уже не сдвигается, и продолжается попытка соединения с последним оператором до исчерпания времени max_distribution_duration или пока оператор не отклонит соединение. При неудачной попытке распределения, механизм будет запускаться повторно до исчерпания количества попыток, определяемого параметром max_distribution_attempts.
  • Progressive (Нарастающий выбор) — аналогично стратегии Serial последовательно производятся попытки соединения с операторами, но в отличие от стратегии Serial соединение с предыдущим оператором не прекращается при начале соединения с новым участником. В финале, если никто из участников не положит трубку, очередь будет параллельно осуществлять соединение со всеми операторами аналогично стратегии Multicall. Когда окно включит в себя последнего оператора, попытка распределения будет продолжаться до исчерпания времени max_distribution_duration или пока все операторы не отклонят соединение. При неудачной попытке распределения, механизм будет запускаться повторно до исчерпания количества попыток, определяемого параметром max_distribution_attempts.
  • Cycled (Циклический выбор) — аналогично стратегии Serial последовательно производятся попытки соединения с операторами. После достижения последнего оператора окно переходит к первому оператору, и так далее по-кругу. Соединения будут продолжаться до тех пор пока не истечет время max_distribution_duration. При неудачной попытке распределения, механизм будет запускаться повторно до исчерпания количества попыток, определяемого параметром max_distribution_attempts.

Skill-based распределение

Для того чтобы очередь при распределении могла выбрать наиболее подходящего оператора, обладающего тем или иным умением, существует skill-based распределение. Когда оно активировано, очередь будет применять процедуру распределения не ко всем свободным операторам, а к тем из них, кто наиболее соответствует по уровню умения. Примеры умения — владение английским языком, знание принципов построения сетей TCP/IP, навыки оказания первой помощи и так далее. Список скиллов является открытым и администратор домена может создавать произвольные скиллы по своему усмотрению.
Чтобы активировать skill-based распределение, нужно установить у очереди параметр skill_based_distribution (см. "Руководство по управлению Call-центром").
Также для того чтобы skill-based распределение работало, скиллы, с одной стороны, должны быть настроены у операторов, и, с другой стороны должны быть выставлены у вызова перед его помещением в очередь с помощью IVR-блока Set.
Скилл в общем виде задаётся как <имя скилла>[:<уровень скилла>]. Уровень скилла может быть опущен, и тогда он по умолчанию равен 1. Примеры скиллов:

  • english:3,
  • police,
  • medicine

Имя скилла может быть разделено на две части разделенные знаком /: <тип>/<подтип>. Никакой алгоритмической ценности данное разделение не имеет — оно служит только для смысловой группировки скиллов, и специальным образом не обрабатывается. Пример такого задания скиллов:

  • language/english:3
  • language/belarus:5
  • emergency/fire
  • emergency/medicine

В данном примере language/english и language/belarus никак не связаны, и общий префикс language/* не даёт при определении соответствия никаких преимуществ перед другими скиллами. При определении соответствия учитывается только полное имя скилла включающее и тип и подтип

С помощью IVR блока Set вызову могут быть назначены один и более скиллов, разделённых запятой (см. IVR-редактор).
Для того чтобы выбрать наиболее подходящих по умению операторов, очередь выполняет оценку соответствия каждого оператора затребованному скиллу.
В простом случае, когда вызову назначен всего один скилл, его уровень соответствия скиллу (далее conformance) будет равен <Уровень скилла оператора>/<Требуемый уровень скилла вызова>. Т.е, для примера, если вызову назначен уровень скилла language/english:5, а у оператора уровень скилла language/english:4, то вычисленный уровень соответствия скиллу будет равен 4/5, т.е 0.8.
Conformance для одного скилла не может превышать 1, поэтому если вызову требуется уровень скилла language/english:5, то даже если уровень скилла оператора превышает данное значение, он не будет иметь преимуществ перед операторами у которых значение уровня точно равно 5. В обоих случаях conformance будет равняться 1.

Если у оператора отсутствует запрошенный скилл, то его значение conformance для данного скилла будет равняться 0.

После оценки соответствия, очередь выберет из всех операторов подгруппу, у которых максимальное и одинаковое между собой значение conformance и применит к ней текущую стратегию распределения (см. Стратегии распределения). Приведём пример.
Допустим вызову выставлен скилл language/english:5.

Операторskillconformance
Оператор 1language/english:40.8
Оператор 2language/english:71
Оператор 3-0
Оператор 4language/english:51

В этом случае очередь выберет операторов под номером 2 и 4, так как у них максимальное среди прочих значение conformance.

Если у всех операторов значение conformance будет равно 0, то очередь будет применять текущую стратегию распределения ко всем операторам.

В случае, если вызову выставлено более одного скилла, то суммарное значение conformance будет вычислено как сумма conformance каждого скилла в отдельности. Например, если вызову назначены скиллы language/english:5 и emergency/medicine:5, а оператору назначен уровень скилла language/english:4 и emergency/medicine:3, то суммарное значение conformance будет равняться conformance первого скилла т.е 0.8 плюс conformance второго скилла т.е 0.6, и будет равняться 1.4. Т.е. в случае более одного скилла conformance может быть и больше единицы. Приведём пример.
Допустим вызову выставлены скиллы language/english:5 и emergency/medicine:5.

Операторskill-ыconformance englishconformance medicineconformance
Оператор 1language/english:4, emergency/medicine:30.80.61.4
Оператор 2language/english:3, emergency/medicine:40.60.81.4
Оператор 3language/english:30.600.6
Оператор 4emergency/medicine:10011

В этом случае очередь выберет операторов под номером 1 и 2, так как у них максимальное среди прочих значение conformance.

В случае простых стратегий распределения (см. Простые стратегии распределения), порядок выбора оператора для распределения можно формально описать так:

  • Выбираются операторы, которые в данный момент не обслуживают вызовы
  • Среди них выбирается подгруппа с наибольшим и равным между собой значением conformance
  • К выбранным операторам применяется простая стратегия распределения

Таким образом в случае простых стратегий распределения, если есть свободные операторы, вызов будет распределяться в любом случае, даже если среди свободных операторов наибольшее значение соответствия скиллу будет 0, так как skill-based распределение в случае простых стратегий распределения применяется только к операторам, которые в данный момент не обслуживают вызовы. Иными словами, в случае простых стратегий распределения, skill-based распределение носит для очереди рекомендательный характер и более строгого разделения можно добиться перемещением операторов в отдельные очереди средствами IVR сценария.

В случае стратегий распределения множественного выбора, порядок выбора оператора отличается:

  • Выбираются операторы с наибольшим и равным между собой значением conformance
  • Выполняется выбранная стратегия множественного распределения

Таким образом в случае стратегий множественного выбора операторы выбираются по соответствию скиллу строгим образом. Т.е если операторы свободны, но есть более подходящие операторы, соответствующие скиллу, которые заняты, вызов будет ожидать в очереди, пока эти более подходящие операторы не освободятся.

Выбор оператора по принципу повторного обращения (предпочтительный оператор)

Для того чтобы включить механизм выбора оператора по принципу повторного обращения нужно включить для очереди опцию remember_choice (ссылка на конфигурирование очереди).
Если эта опция включена, очередь будет запоминать, какой оператор был выбран в прошлый раз для обслуживания вызова с номера А, и будет считать этого оператора предпочтительным для обслуживания вызова, пытаясь выполнить распределение на него. Сервис выбора оператора по принципу повторного обращения предваряет любую стратегию распределения и skill-based распределение и если сервис срабатывает успешно, то они не применяются. Очередь хранит информацию о предпочтительном операторе в течение времени, которое определяется параметром cc_queue_remember_choice_timeout в /domain/test.domain/timers/core/*. По умолчанию 1 час со времени последнего соединения с оператором.

remember_choice может принимать значения none, strict и non-strict:

  • none — опция выключена
  • strict — если предпочтительный оператор занят, то вызов будет дожидаться пока он освободится. Если оператор был свободен, но соединиться с ним не удалось, например по причине неответа или DND, то далее для текущего вызова предпочтительный оператор будет игнорироваться и будет применяться выбранная стратегия распределения
  • non-strict — если предпочтительный оператор занят, то далее для текущего вызова предпочтительный оператор будет игнорироваться и будет применяться выбранная стратегия распределения. Если вызов с номера А обслужит другой оператор, то предпочтительным для обслуживания последующих вызовов с номера А станет он.

Ручной (по требованию оператора) режим распределения вызовов из расширенной очереди — Manual

При указании стратегии распределения Manual, очередь НЕ БУДЕТ самостоятельно распределять вызовы. Этим должен будет заниматься супервизор (или оператор, если это позволяется лицензией). Данный функционал необходимо использовать с осторожностью, так как это может привести к слишком долгому ожиданию вызовов в очереди и потере клиентов. Рекомендуем использовать одну из стратегий распределения (mia, loa, random) в совокупности с функционалом принудительного распределения.

Алгоритм работы очереди в режиме Manual:

  1. Вызов поступает в очередь.
  2. Если очередь настроена в данном режиме, то вызовы помещается в очередь с учетом приоритетов и не распределяется на операторов.
  3. Супервизор (и оператор, если позволяется лицензией), выбирает вызов в ручном режиме с использованием АРМ.

Операторы (агенты) Call-центра

Все работники Call-центра, непосредственно обслуживающие входящие (и/или исходящие) вызовы, называются операторами (в англоязычной литературе используют термин agents — агенты). Операторы могут объединяться в группы, обслуживающие определенные типы вызовов. Каждой такой группе операторов присваивается собственный внутренний или внешний телефонный номер. Работники, осуществляющие общий контроль за функционированием центра обслуживания вызовов в целом или какого-либо его участка, называются администраторами, или супервизорами (supervisor).

Агент Call-центра — это пользователь, имеющий учетную запись в Call-центре. Агенты бывают двух видов — операторы и супервизоры. Несмотря на большое различие в фактической роли, настройка оператора и супервизора в Call-центре Eltex различается незначительно. Операторы обслуживают вызовы с очередей, имеют поддержку статусов, могут отвечать на вызовы используя АРМ Оператора. Супервизоры могут прослушивать вызовы, осуществлять консультирование операторов, а так же просматривать статистику.

Оператор

Оператор — это пользователь, имеющий учетную запись оператора Call-центра. Задача оператора — обрабатывать вызовы с очередей. Помимо обработки вызовов с очередей оператор может также осуществлять прямые вызовы, используя АРМ оператора или связанный с ним телефонный аппарат. Привязка оператора к телефонному аппарату происходит в момент входа в систему (например, в начале рабочего дня). Регистрация оператора на телефонном аппарате прекращается после того, как оператор выполняет выход из системы (например, в конце рабочего дня). Вход осуществляется либо через АРМ оператора, либо с помощью специального feature-кода, который нужно набрать на свободном телефонном аппарате.

Feature-код для логина с телефонного аппарата:

*160*<Целочисленный идентификатор оператора>*<Пароль>#
CODE

При входе с использованием АРМ оператора необходимо указать целочисленный идентификатор оператора, пароль, а также телефонный номер, за которым будет закреплена сессия оператора.

Вход с использованием АРМ оператора см. Автоматизированное рабочее место (АРМ) оператора.

Номер телефона, закрепляемый за оператором указывается явно во время входа в АРМ или неявно в момент входа с телефонного аппарата (тогда за оператором закрепляется телефонный аппарат, с которого осуществляется вход). Номер телефона не конфигурируется в момент создания учетной записи оператора. Оператор каждый день может занимать свободное рабочее место или номера телефонов могут изменяться произвольно без переконфигурирования Call-центра. Номер, закрепленный за оператором — это номер, на который будет осуществляться звонок при распределении очередью вызова на данного оператора. Преимущество оператора в отличие от обычного телефонного номера заключается в том, что если оператор поменяет номер телефона, очередь автоматически начнет распределять вызовы на этот телефон и переконфигурировать ничего не потребуется. Если же в очереди указан телефонный номер, то придется указывать новый (в расширенной очереди в CoCon CLI, а в случае базовой — в IVR сценарии).

Для того чтобы закрепить за оператором номер телефона, или, иными словами, чтобы выполнить вход с использованием данного телефонного номера необходимо чтобы:

  • номер существовал;
  • номер был свободен (не был закреплен за другим оператором);
  • для данного телефонного номера было активирована услуга cc_agent. Более подробно об активации услуги: Управление услугами.

Доступность оператора и состояние "отошел"

После того как оператор вошел в систему, он может начинать работу по обслуживанию вызовов с очередей. Очередь считает оператора свободным, а значит и распределяет на него вызов когда соблюдены все условия:

  • телефонная линия оператора свободна;
  • оператор вошел в систему и находится в состоянии "доступен";
  • оператор не обслуживает вызовы или не превышено максимальное количество обслуживаемых вызовов (параметр конфигурации оператора load);
  • не соблюдено ни одно из условий занятости оператора, указанных ниже.

Условия занятости оператора (если хотя бы одно из условий выполнено, оператор считается занятым):

  • телефонная линия оператора занята;
  • дополнительная телефонная линия оператора занята (extra_number) и очередь работает в режиме strict/non_strict;
  • оператор не находится в системе;
  • оператор вошел в систему, но находится в состоянии "отошел";
  • оператор "заблокирован" супервизором. Более подробно о блокировке операторов см. Супервизор. Блокировка оператора;
  • достигнуто максимальное количество обрабатываемых вызовов. Например один вызов находится в постобработке, а параметр конфигурации оператора load = 1. Если бы параметр load был равен более 1, то оператор смог бы параллельно принять ещё один вызов, пока один вызов находится в постобработке.

Состояние оператора "отошел" показывает что оператора нет а месте. Этот статус не обозначает что до оператора нельзя дозвониться. Данный параметр актуален для очередей, поскольку очереди перестают распределять не него вызовы. Похожим образом работает блокировка оператора, за тем исключением, что состояние "отошел" устанавливает сам оператор, а состояние "заблокирован" может выставить оператору только супервизор.

Подобно очередям, супервизор может прослушивать вызовы, консультировать и т.д. только тех операторов, которые принадлежат той же самой группе, что и сам супервизор. В текущей версии Call-центра каждый оператор может принадлежать одновременно только к одной группе. Таким же образом супервизор может быть супервизором только в одной группе.

Постобработка

Оператор, занимающийся постобработкой вызовов, остается недоступен для очередей. Постобработка может быть завершена с использованием АРМ оператора, либо с помощью специального feature-кода. После завершения разговора в постобработку переходят только вызовы распределенные с очередей. Для прямых вызовов понятия постобработки не существует. Кроме того, постобработка может быть отключена совсем, с помощью параметра оператора auto_complete_timeout(таймер автоматического завершения постобработки в секундах, 0 — означает, что этап постобработки отключен). Параметр может принимать значения 0..3600(сек) или infinity.

Когда оператор обслуживает вызовы, или если у него есть вызовы, находящиеся в постобработке, оператор не может выполнить выход из системы. Более подробно возможности АРМ см. Автоматизированное рабочее место (АРМ) оператора.

Супервизор

Несмотря на то, что роли супервизора и оператора в call-центре имеют существенные различия, в текущей версии при конфигурировании существует расхождение только в использовании параметра supervisor, который может принимать значения "true" либо "false" ("истина" либо "ложь"). Если агент имеет свойство "supervisor" равное "true" — он является супервизором, иначе он является оператором. Более того, любой супервизор является также оператором call-центра и может принимать вызовы. Значение данного параметра влияет только на возможность использования агентом АРМ Супервизора (да либо нет).
Выполнение супервизором роли оператора не означает, что ему необходимо принимать вызовы из очередей — этого возможно избежать, не добавляя супервизора ни в одну из них. Однако, если требуется, чтобы супервизор также обслуживал вызовы, возможно добавить его в очередь, как и обычного оператора.
АРМ Супервизора предоставляет возможность мониторинга Call-центра и не имеет средств для обслуживания вызовов. Для этих целей супервизор может использовать либо функции управления с телефонного аппарата (см. Руководство по управлению Call-центром), либо войти в систему в АРМ Оператора. Допускается одновременное использование АРМ Супервизора и АРМ Оператора.

Супервизор осуществляет мониторинг вызовов, очередей и операторов в своей группе, но не во всём call-центре. Каждой группе должен быть назначен свой супервизор.

Прослушивание, консультация, конференция

Супервизор может подключаться своим телефонным аппаратом к активным вызовам в одном из трёх режимов:

  • Прослушивание. В данном режиме супервизор слышит, о чем разговаривают оператор и дозвонившийся абонент. Данный режим нужен для ревизии с целью повышения качества обслуживания в call-центре, а также для обучения новых сотрудников.
  • Консультация. В данном режиме супервизор слышит разговор оператора с абонентом, при этом оператор также слышит супервизора.
  • Конференция. В данном режиме супервизор, оператор и дозвонившийся абонент слышат друг друга.
    Для осуществления данных функций используется телефонный аппарат, который задействуется при входе в АРМ Супервизора. При этом нельзя одновременно войти в систему АРМ Супервизора и АРМ Оператора, используя разные телефонные номера. Другими словами — один и тот же номер используется и для супервайзинга, и для обслуживания вызовов.

При осуществлении супервайзинга в одном из данных режимов на телефон супервизора поступает обратный вызов от ECSS-10, после ответа на который подключение будет установлено.

Для экспертов:

Для того чтобы супервайзинг начинался автоматически (например, при использовании гарнитуры), на телефоне супервизора должна быть активирована функция auto_answer, что не всегда допустимо. Второй вариант — использовать специальные режимы auto_answer в настройках SIP-адаптера. Это позволит автоматически принимать вызов только при установлении супервайзинга. Более подробно об этой функции можно почитать в документации SIP-адаптера ECSS-10. При этом необходимо учесть, что телефонный аппарат также должен поддерживать данную функцию. В тестировании call-центра Eltex данная функция проверялась для телефонов Yealink T2x и T4x.

Блокировка операторов

Как упоминалось выше, блокировка оператора в целом похожа на состояние "отошел". Разница заключается в том, что блокировка может быть назначена оператору только супервизором и только супервизором может быть снята. Это необходимо для того, чтобы временно вывести определенного оператора из обслуживания очереди, например, для выдачи ему дополнительных инструкций, проведения работы над ошибками в обслуживании и прочее. Также, в отличие от состояния "отошел", блокировка длится до момента снятия её супервизором и не снимается при повторном входе оператора или после перезапуска системы.

Создание супервизоров не требует приобретения дополнительной лицензии. Приобретение операторов автоматически подразумевает, что любой из них или все они могут быть сконфигурированы как супервизоры. Назначая операторам роль супервизора, необходимо исходить из целесообразности такой конфигурации call-центра. Для небольшой группы (например, 10 операторов) чаще всего достаточно всего одного супервизора.

Более подробно возможности АРМ см. Автоматизированное рабочее место (АРМ) супервизора.

Feature-коды для управления оператором с телефонного аппарата

Управление расширенными агентами с телефонного аппарата осуществляется с помощью следующих feature-кодов:

Feature-код — специальный телефонный номер, звонок на который выполняет специальную команду в системе ECSS-10.

Feature-коды используются для управления оператором без использования АРМ оператора. Несмотря на то, что АРМ оператора является основным средством управления, самые необходимые оператору функции доступны с помощью feature-кодов. Они используются, например, когда АРМ оператора временно недоступен.

При входе в систему с телефонного аппарата оператор будет зарегистрирован на телефонном аппарате, с которого вводился feature-код логина (*160*).

При выходе из системы с телефонного аппарата оператор, привязанный к телефонному аппарату, с которого вводился feature-код логаута (#160#), будет выведен из системы. Регистрация оператора будет удалена с данного телефонного аппарата, и его сможет использовать другой оператор. Выход можно осуществить только в том случае, если оператор не обслуживает ни одного вызова. Если оператор в данный момент не разговаривает, это не означает отсутствие у него вызовов, находящихся в постобработке. Если такие вызовы присутствуют, их возможно завершить с помощью специального feature-кода:

*160*<OperatorId>*<Пароль>#LoginВыполнить логин в call-центр в роли оператора
#160#LogoutВыполнить выход оператора
#161#CompleteЗавершить постобработку вызовов
#162#AuxworkПерейти в состояние "отошел"
#163#AuxworkПерейти в состояние "доступен"
*164*<OperatorId>#

Подключиться к указанному оператору в режиме супервайзинга.

Если режим супервайзинга не задан, то по умолчанию используется режим observing

*165*<OperatorId>#
Позвонить оператору по его идентификатору
*166*<OperatorId>*<SupervisingMode>#

Выполнить супервайзинг оператора в одном из режимов:

  • 1 — прослушивание
  • 2 — консультация
  • 3 — конференция
  • *167*<OperatorId>*<SupervisingMode>#

Установить режим супервайзинга по-умолчанию

где

  • <OperatorId> — целочисленный идентификатор оператора;
  • <SupervisingMode> — режим супервайзинга 

Режим супервайзинга по умолчанию, если не был выбран ни разу до этого — прослушивание. Будучи установленным, режим супервайзинга по умолчанию остаётся таким, пока пользователь не сменит его явно. Во избежание недоразумений, каждый раз при выполнении feature-кода "супервайзинг в режиме по умолчанию", перед непосредственным присоединением к разговору супервизору озвучивается текущий режим супервайзинга по умолчанию.

Специальные разрешения Call-центра

Некоторые возможности Call-центра не входят в базовую лицензию, они подключаются в качестве дополнительных опций.

  • Вторжение (ссылка на Карточка Информация оператора (Agent Info)/Вторжение (вмешательство))
  • Просмотр вызовы в очереди в АРМ оператора (ссылка на Автоматизированное рабочее место (АРМ) оператора/вызовы в очереди). Не путать с вызовами в очереди в АРМ супервизора — функционалом, который доступен в базовой лицензии.

Добавление этих параметров в лицензию даёт возможность использования соответствующих функций операторам Call-центра. Однако есть возможность управлять этими разрешениями, давая или не давая возможность использовать их конкретным операторам или доменам целиком.

Настройки уровня домена

Настройки уровня домена можно посмотреть командой /domain/<Domain>/cc/properties/info

admin@[mycelium1@ecss1]:/$ domain/test.domain/cc/properties/info              
┌────────────┬───────────┬─────────────────────────────────────────────────────────────────┐
│  Property  │  Domain   │                              Value                              │
├────────────┼───────────┼─────────────────────────────────────────────────────────────────┤
│capabilities│test.domain│all                                                              │
└────────────┴───────────┴─────────────────────────────────────────────────────────────────┘

По умолчанию позволяется всё, что указано в лицензии, однако можно явно указать что разрешено в данном домене (разумеется настройки уровня домена не могут превышать возможности, указанные в лицензии).

admin@[mycelium1@ecss1]:/$ domain/test.domain/cc/properties/set capabilities operator_queue_calls, operator_intervention

Команда выше разрешает оператору использовать вторжение и просматривать список вызовов, ожидающих очереди, в АРМ оператора.

Следующая команда разрешает оператору просматривать список вызовов в очереди, и запрещает использовать вторжение.

admin@[mycelium1@ecss1]:/$ domain/test.domain/cc/properties/set capabilities operator_queue_calls

Данные настройки не входят в сферу повседневных задач администратора, а относятся к экспертным настройкам.

Настройки уровня оператора

Аналогичным образом можно указать специальные разрешения на уровне конкретного оператора:

domain/test.domain/cc/agent/set 3 capabilities operator_queue_calls

Настройки уровня оператора, если они явно заданы, отменяют настройки уровня домена. По умолчанию настройки уровня оператора не заданы. То есть если на уровне домена установлено разрешение operator_queue_calls, а на уровне оператора operator_intervention, то результирующим значением разрешений будет operator_intervention.

Чтобы сбросить настройки разрешений конкретного оператора (то есть вернуться к использованию доменных настроек), нужно выполнить команду:

admin@[mycelium1@ecss1]:/$ domain/test.domain/cc/agent/clean <OperatorId> capabilities
ok

Внешние интеграции рабочего места оператора

Веб-клиент рабочего места оператора поддерживает интеграцию с системами Redmine и Confluence. В случае настроенной интеграции, веб-клиент будет отображать страницу Redmine или Confluence в специальной области и автоматически выполнять логин в одну из этих систем. Подробнее о настройке см. команды управления агентами в Call-центре (параметры integration\confluence, integration\redmine).

Руководство по управлению Call-центром

Конфигурирование очереди

Настройка базовой очереди

Очередь входящих вызовов Call-центра конфигурируется через IVR редактор. IVR редактор является приложением web-конфигуратора системы ECSS-10.
Блок Queue (Очередь) в IVR-редакторе задает функцию постановки входящего обращения в очередь, для которой задан набор операторов и процедура распределения вызова между операторами.
При постановке вызова в очередь вызываемому абоненту проигрывается сообщение. Во время ожидания абоненту проигрывается заданная мелодия. Периодически в заданный интервал времени абоненту проигрывается информация о прогнозном времени ожидания в очереди.

Вход блока

Входящий вызов в предответном состоянии или на фазе активного вызова.

Выходы блока

Блок предусматривает три выхода: FULL, ERROR и OK.

  • FULL — превышен один из лимитов очереди: максимальное количество вызовов или максимальное предсказываемое время ожидания.
  • ERROR — вызов не был обработан за максимальное допустимое время ожидания, либо выбранные очередью операторы по какой-либо причине не ответили на распределенный на них вызов. Очередь предпринимает 3 попытки распределения, после чего, если вызов не был принят, скрипт продолжает выполнение по ветви ERROR.
  • OK — вызов был распределён на оператора, и оператор ответил. Скрипт продолжит выполнение по данной ветви, если оператор положит трубку раньше звонящего.

Добавление агентов в очередь осуществляется через IVR-редактор:

Создание базовой очереди call-центра в IVR-редакторе

Для того, чтобы создать базовую очередь call-центра, необходимо выполнить следующие действия:

  1. Создать скрипт для обработки входящего вызова в IVR-редакторе;
  2. Добавить в скрипт блок Очередь (Queue), можно ввести описания блока и очереди (IVR редактор (IVR editor));
  3. Сконфигурировать блок Очередь (Queue). Необходимо добавить в очередь операторов (это могут быть любые телефонные номера или выбранные из справочника);
  4. Указать ограничения очереди и выбрать стратегию распределения;
  5. Через приложение MSR медиаменеджер выбрать звуковые файлы фоновой музыки, оповещения и прогноза времени ожидания.

Пример:

Настройка расширенной очереди

В очередь могут быть добавлены как обычные телефонные номера, так и расширенные операторы. Расширенные операторы имеют следующие возможности:

  • постобработка вызова (After Call Work, далее ACW),
  • состояние "отошел" (Аuxwork)
  • АРМ и супервайзинг.

Если в настройках расширенного оператора параметр auto_complete равен false, то после того как оператор положит трубку, разговор перейдёт в состояние ACW, а сам оператор останется занятым для очереди. После завершения обработки оператор, чтобы вновь стать доступным, должен набрать с телефонного аппарата feature код Complete#161 или воспользоваться АРМ оператором.
Для того чтобы перейти в состояние "отошел" (auxwork) оператор должен набрать с телефонного аппарата feature код Auxwork#162, или воспользоваться кнопкой Auxwork в АРМ оператора. Очереди перестанут распределять вызовы на оператора, но оператор по-прежнему будет доступен для прямых вызовов. Чтобы вновь стать доступным для очередей, оператор должен набрать с телефонного аппарата feature код Make Available#163 или воспользоваться кнопкой Available в АРМ оператора.

Текст ниже предназначен для пользователей, знакомых с CoCon CLI, а также с созданием сценариев в IVR-редакторе. В задачу данного документа не входит описание маршрутизации, а также создание телефонных номеров на ECSS-10. Предполагается, что маршрутизация для IVR-скрипта уже настроена, или читающий в состоянии самостоятельно создать скрипт и настроить для него маршрутизацию. Кроме того, читающий должен быть знаком с основами настройки и управления услугами в ECSS-10.

Создание IVR-сценария с использованием расширенной очереди

Для того чтобы начать использование расширенной очереди, необходимо добавить блок "Queue_СС" в IVR-скрипт.

После того как блок добавлен в скрипт, необходимо выполнить его конфигурацию, заполнив следующие поля:

Описание (Description) — краткое описание работы блока;

Действие трансфера (Transfer scenario) — действие трансфера (дать отбой, уведомить и дать отбой, переадресовать, вернуть в очередь):

  • Дать отбой — если абонент, на которого совершают несопровождаемый трансвер, не ответит или даст отбой, то на агента пойдет callback. В случае неответа на callback — абонент будет отбит.
  • Уведомить и дать отбой — если абонент, на которого совершают несопровождаемый трансвер, не ответит или даст отбой, то на агента пойдет callback. В случае неответа на callback — абоненту проиграется уведомление и будет дан отбой.
  • Переадресовать — если абонент, на которого совершают несопровождаемый трансвер, не ответит или даст отбой, то на агента пойдет callback. В случае неответа на callback — абонент будет переадресован на заданный номер.
  • Вернуть в очередь — если абонент, на которого совершают несопровождаемый трансвер, не ответит или даст отбой, то на агента пойдет callback. В случае неответа на callback — абонент будет возвращен в очередь.

Имя очереди (Queue name) А- имя очереди;

Режим уведомления о позиции (Position notification mode) — режим уведомления о позиции (абсолютная позиция, позиция относительно времени добавления, позиция относительного приоритета);

Прогноз времени ожидания (Time prediction) — режим прогнозирования времени ожидания (прямой, оптимистичный, монотонный, сглаженный):

  • Прямой (direct) — новый прогноз делается каждую минуту, при этом количество оставшихся минут сообщается честно. Если например, в прошлый раз абоненту было озвучено оставшееся время 5 минут, а в этот раз очередь посчитала, что осталось 7 минут (например в очередь встал более приоритетный вызов), то абоненту будет честно озвучено оставшееся время 7 минут.
  • Оптимистичный (optimistic) — новый прогноз делается каждую минуту, при этом количество оставшихся минут сообщается честно, только если предсказываемое время сокращается, либо остаётся неизменным. Если же предсказываемое время увеличилось, например, с 5 до 7 минут, то абоненту будет сообщен предыдущий прогноз, то есть 5 минут, как в данном примере.
  • Монотонный (monotonic) — новый прогноз делается каждую минуту, при этом первое предсказание делается честно, а далее количество оставшихся минут монотонно убывает на единицу пока не достигнет 1. Далее абоненту всегда озвучивается прогноз в одну минуту.
  • Сглаженный (smooth) — аналогично предыдущему режиму первый прогноз времени ожидания делается честно, а далее количество оставшихся минут монотонно убывает на единицу пока не достигнет 1. Однако IVR сценарий пытается компенсировать скачки предсказываемого времени, сужая, либо растягивая интервалы предсказания. Например первый раз абоненту было озвучено оставшееся время ожидания 5 минут. Через минуту предсказываемое время ожидания оказалось 6 минут (например из-за принятого на обработку вне очереди приоритетного разговора), но, согласно алгоритму время должно убывать монотонно, поэтому абоненту озвучивается 4 минуты. Чтобы компенсировать скачек времени сценарий вновь сообщит оставшееся время не через минуту, а пропорционально разнице между 6 и 4 минутами, то есть через 6/4 = 1,5 минуты. Обратные скачки также компенсируются, но уже в сторону сужения интервала прогноза, но не чаще чем раз в 30 секунд. В нашем примере через полторы минуты будет озвучено 3 минуты и интервал ожидания будет вновь скорректирован. Таким образом данный режим повторяет режим monotonic, при этом стараясь, чтобы озвучиваемое время убывало плавно, и не приходилось потом многократно озвучивать единицу, или наоборот, чтобы ответ не происходил намного раньше, чем предсказывалось абоненту.

Сценарии нотификаций (Notificaton scenario) — позволяет нам указать в каком порядке проигрывать и проигрывать ли приветствие, позицию в очереди,предсказываемое время ожидания. Доступны параметры:

  • Однократное приветствие;
  • Оповещение;
  • Позиция;
  • Время ожидания;

- Приветствие (Fone music) — звуковой файл, который будет проигрываться при ожидании абонента в очереди;

Фоновая музыка (Fone music) — звуковой файл, который будет проигрываться при ожидании абонента в очереди;

- Оповещение в очереди (Queuing) — сообщение абоненту при постановке его в очередь;

Прогноз времени ожидания (Forecast timeout) — сообщение для информирования абонента о прогнозируемом времени ожидания;

 - Уведомление об ответе (Answer notification) — сообщение после ответа оператора(нотификация идет абоненту и оператору);

Перезвонить, если абонент не дождался (Callback on failure) — режима работы сервиса очереди Callback. Если абонент не дождался ответа оператора, то вызов отмечается специальным признаком и размещается в очереди в режиме Callback.

Перезвонить при сработавшем ограничении (Callback on overload) — режима работы сервиса очереди Callback. Позволяет добавлять в очередь в режиме callback вызов, который не проходит ни по одному из граничных условий (max_predicted_time или queue_length);

- Идет соединение с клиентом (Notify callback message) — сообщение оператору при обратном вызове;

- Проигрывать КПВ оператору (Play ringback to operator) — при обратном вызове оператору проигрывается КПВ;

В данном блоке остаётся только выбрать необходимую очередь в поле "Имя очереди" и, если требуется, настроить проигрываемые звуки.

Создание и настройка расширенной очереди в CoCon (CLI)

Активация услуги cc_agent через CoCon CLI

Для того чтобы оператор мог зарегистрироваться на телефонном номере, для данного телефонного номера должна быть активирована услуга cc_agent. Рекомендуется активировать эту услугу только для тех телефонных номеров, которые специально зарезервированы для регистрации на них операторов. Здесь нужно соблюсти осторожность, так как супервизор имеет возможность прослушивать любой телефонный номер из тех, которые заняты его агентами.

Не стоит активировать услугу cc_agent для всех телефонных номеров в виртуальной АТС кроме случаев, когда вы точно осознаете что делаете.

Пример активации услуги cc_agent:

admin@[restfs1@ecss1]:/$ domain/test.domain/ss/activate 103 cc_agent 
Success: Supplementary service cc_agent activated for domain "test.domain" address "103" 

Услуга cc_agent должна быть установлена в виртуальной АТС, и разрешена для использования этим оператором. Если услуга не установлена, то вам нужно воспользоваться инструкцией по установке и использованию услуги в ECSS-10.

Создание операторов и супервизоров в CoCon CLI

Очередь может работать как с обычными телефонными номерами, так и расширенными операторами, обладающими дополнительными возможностями. Для того чтобы добавить расширенного оператора, его нужно предварительно создать.

Команды по управлению агентами в call-центре см. в разделе Команда управления агентами.

 Раскрыть описание команд

В данном разделе описаны команды управления агентами в Call-центре.

declare

Команда позволяет создать агентов виртуального call-центра.

Путь команды:

/domain/<DOMAIN>/cc/agent/declare

Синтаксис:

declare {<AgentRange> | auto} <Parameters>

Параметры:

<AgentRange> - интервал идентификаторов агентов. Идентификатор агента - целое число, которое будет использоваться для управления агентом с телефонного аппарата. Значение auto говорит о том, что будет автоматически выбран свободный идентификатор.
<Parameters> - список параметров через запятую:

Таблица 1

СвойствоЗначениеОписание
auto_complete_timeout0..3600(сек) или infinityтаймер автоматического завершения постобработки в секундах, 0 - означает, что этап постобработки отключен
auto_logout_timeout5-720 мин. По умолчанию - 120период неактивности оператора, после которого осуществляется выход из сессии
call_recordingboolean, по умолчанию falseвключена или нет запись разговора для агента
descriptionстрокакраткое описание агента
display_nameстрокаотображаемое имя агента
groupстрока, по умолчанию defaultгруппа, к которой относится агент
loadpos_integer, по умолчанию 1количество одновременных вызовов, которое могут быть распределены на агента
passwordстрокапароль для аутентификации, состоит из чисел и имеет длину не менее 4-х символов
pickuptrue/false, по умолчанию falseперехват прямого вызова в call-центре
skills[skill[/subskill]:quality, ...]список умений, который определяет способности и уровень квалификации оператора <police | psychologie>(quality 0-100)
supervisortrue/false, по умолчанию falseвключение привилегий "супервизора", способность регистрироваться в АРМ супервизора и наблюдать за операторами в своей группы
working_timeout5-1440 мин. По умолчанию - 120интервал времени в течении которого агент должен быть не подключен к системе (logout) после которого "смена" для статистики закрывается

Пример:

admin@[sip1@ecss1]:/$ domain/biysk.local/cc/agent/declare 555 auto_complete_timeout = 15, call_recording = true, skills = [police: 99]
ok

[exec at: 23.02.2019 10:34:57, exec time: 91ms, nodes: ds1@ecss1]
clean

Команда позволяет очистить свойства определенных агентов виртуального call-центра.

Путь команды:

/domain/<DOMAIN>/cc/agent/clean

Синтаксис:

clean <AgentRange> <Property>

Параметры:

<AgentRange> - идентификатор агента или шаблон. Шаблон ag{1-20} задает список из 20 агентов: ag1, ag2, ..., ag20;
<Property> - имя свойства. В системе существует набор стандартных свойств (group, load и другое) и свойства, состоящие из нескольких слов, разделенных символом "\", в общем виде выглядят: "general\specific\private"

Пример:

admin@[sip1@ecss1]:/$ domain/biysk.local/cc/agent/clean 555 skills 
ok
Configuration changes will be applied after re-login

[exec at: 23.02.2019 10:57:45, exec time: 91ms, nodes: ds1@ecss1]
info

Команда позволяет отобразить значения одного либо всех свойств определенных агентов виртуального call-центра.

Если в профиле безопасности (/system/security/profile/) параметр show_password_at_cli = off, то в выводе пароль скрывается, и вместо него показываются ********.

Путь команды:

/domain/<DOMAIN>/cc/agent/info

Синтаксис:

info <AgentRange> [<Property> | <Pattern>]

Параметры:

<AgentRange> - идентификатор агента или шаблон. Шаблон ag{1-20} задает список из 20 агентов: ag1, ag2, ..., ag20;
<Property> - имя свойства. В системе существует набор стандартных свойств (agent_id, load и другое) и свойства, состоящие из нескольких слов, разделенных символом "\", в общем виде выглядят: "general\specific\private".
<Pattern> - шаблон, с которым будет сравниваться свойство. Отличается от свойства наличием символа "*"(wildcard). Символ "*" соответствует 1 и более слову (не символу) в сложном свойстве. Например, шаблону "general\specific\*" будет соответствовать свойство "general\specific\private", а "general\spe*" не будет являться корректным шаблоном.

Пример:

admin@mycelium1@ecss1:/$ domain/biysk.local/cc/agent/info 5{00-02}
┌─────┬───────────────────────────────┐
│Agent│          Properties           │
├─────┼───────────────────────────────┤
│500  │agent_id              <<"500">>│
│     │auto_complete_timeout 5 sec.   │
│     │call_recording        false    │
│     │description                    │
│     │display_name                   │
│     │group                 ltp1     │
│     │load                  1        │
│     │password              ******** │
│     │pickup                false    │
│     │skills                         │
│     │supervisor            true     │
│     │working_timeout       120 min. │
│501  │agent_id              <<"501">>│
│     │auto_complete_timeout 5 sec.   │
│     │call_recording        false    │
│     │description                    │
│     │display_name                   │
│     │group                 ltp1     │
│     │load                  1        │
│     │password              ******** │
│     │pickup                false    │
│     │skills                         │
│     │supervisor            false    │
│     │working_timeout       120 min. │
│502  │agent_id              <<"502">>│
│     │auto_complete_timeout 5 sec.   │
│     │call_recording        false    │
│     │description                    │
│     │display_name                   │
│     │group                 ltp1     │
│     │load                  1        │
│     │password              ******** │
│     │pickup                false    │
│     │skills                         │
│     │supervisor            false    │
│     │working_timeout       120 min. │
└─────┴───────────────────────────────┘

[exec at: 18.06.2020 09:29:29, exec time: 10ms, nodes: ds1@ecss1]

list

Команда предназначена для просмотра списка агентов виртуального call-центра.

Путь команды:

/domain/<DOMAIN>/cc/agent/list

Синтаксис:

list [ --password ]

Параметры:

--password - показывать колонку password в результате команды, или нет. По умолчанию колонка не показывается.

Если в профиле безопасности (/system/security/profile/) параметр show_password_at_cli = off, то в выводе пароль скрывается, и вместо него показываются ********.

Пример:

admin@mycelium1@ecss1:/$ domain/biysk.local/cc/agent/list --password                 
┌────────┬────────────┬─────┬──────────┬───────────┬────────┬────────┬────────┬───────┬────┬──────┐
│Agent id│Display name│Group│Supervisor│Description│Password│  Auto  │Working │ Auto  │Load│Skills│
│        │            │     │          │           │        │complete│timeout │logout │    │      │
│        │            │     │          │           │        │timeout │        │timeout│    │      │
├────────┼────────────┼─────┼──────────┼───────────┼────────┼────────┼────────┼───────┼────┼──────┤
│500     │            │ltp1 │true      │           │********│5       │120 min.│inf    │1   │      │
│501     │            │ltp1 │          │           │********│5       │120 min.│inf    │1   │      │
│502     │            │ltp1 │          │           │********│5       │120 min.│inf    │1   │      │
│503     │            │ltp1 │          │           │********│5       │120 min.│inf    │1   │      │
│504     │            │ltp1 │          │           │********│5       │120 min.│inf    │1   │      │
│505     │            │ltp1 │          │           │********│5       │120 min.│inf    │1   │      │
│506     │            │ltp1 │          │           │********│5       │120 min.│inf    │1   │      │
│507     │            │ltp1 │          │           │********│5       │120 min.│inf    │1   │      │
│508     │            │ltp1 │          │           │********│5       │120 min.│inf    │1   │      │
│509     │            │ltp1 │          │           │********│5       │120 min.│inf    │1   │      │
│510     │            │ltp2 │true      │           │********│5       │120 min.│inf    │1   │      │
│511     │            │ltp2 │          │           │********│5       │120 min.│inf    │1   │      │
│512     │            │ltp2 │          │           │********│5       │120 min.│inf    │1   │      │
│513     │            │ltp2 │          │           │********│5       │120 min.│inf    │1   │      │
│514     │            │ltp2 │          │           │********│5       │120 min.│inf    │1   │      │
│515     │            │ltp2 │          │           │********│5       │120 min.│inf    │1   │      │
│516     │            │ltp2 │          │           │********│5       │120 min.│inf    │1   │      │
│517     │            │ltp2 │          │           │********│5       │120 min.│inf    │1   │      │
│518     │            │ltp2 │          │           │********│5       │120 min.│inf    │1   │      │
│519     │            │ltp2 │          │           │********│5       │120 min.│inf    │1   │      │
│520     │            │ltp3 │true      │           │********│5       │120 min.│inf    │1   │      │
│521     │            │ltp3 │          │           │********│5       │120 min.│inf    │1   │      │
│522     │            │ltp3 │          │           │********│5       │120 min.│inf    │1   │      │
│523     │            │ltp3 │          │           │********│5       │120 min.│inf    │1   │      │
│524     │            │ltp3 │          │           │********│5       │120 min.│inf    │1   │      │
│525     │            │ltp3 │          │           │********│5       │120 min.│inf    │1   │      │
│526     │            │ltp3 │          │           │********│5       │120 min.│inf    │1   │      │
│527     │            │ltp3 │          │           │********│5       │120 min.│inf    │1   │      │
│528     │            │ltp3 │          │           │********│5       │120 min.│inf    │1   │      │
│529     │            │ltp3 │          │           │********│5       │120 min.│inf    │1   │      │
└────────┴────────────┴─────┴──────────┴───────────┴────────┴────────┴────────┴───────┴────┴──────┘

[exec at: 18.06.2020 09:32:20, exec time: 16ms, nodes: ds1@ecss1]

remove

Команда предназначена для удаления агентов виртуального call-центра.

Путь команды:

/domain/<DOMAIN>/cc/agent/remove

Синтаксис:

remove <AgentRange>

Параметры:

<AgentRange> - идентификатор агента или шаблон. Шаблон ag{1-20} задает список из 20 агентов: ag1, ag2, ..., ag20;

Пример:

admin@[sip1@ecss1]:/$ domain/biysk.local/cc/agent/remove 555
ok

[exec at: 23.02.2019 11:01:39, exec time: 83ms, nodes: ds1@ecss1]
set

Команда предназначена для изменения свойств агентов виртуального call-центра или создания нового свойства с указанным значением.

Пароли проверяются на соответствие требованиям, установленным в профиле безопасности (/system/security/profile/), параметр restrictions.

Путь команды:

/domain/<DOMAIN>/cc/agent/set

Синтаксис:

set <AgentRange> <Property> <Value>

Параметры:

<AgentRange> - идентификатор агента или шаблон. Шаблон ag{1-20} задает список из 20 агентов: ag1, ag2, ..., ag20;
<Property> - имя свойства. Возможные значения приведены в таблице 1, а так же свойства из таблицы 2:

Таблица 2

СвойствоЗначениеОписание
integration\confluence
string, по умолчанию не задано
Ключ доступа (API key) пользователя Confluence
integration\redmine
<Login> <Password> - 
учетные данные пользователя Redmine
учетные данные пользователя Redmine
<Login> - имя учетной записи;
<Password> - пароль учетной записи
integration\redmine\task\projectstring, по умолчанию не заданоимя Redmine проекта по умолчанию. В рамках указанного проекта будут создаваться задачи при поступлении вызова в КЦ
integration\redmine\task\subjectstring, по умолчанию не заданошаблон темы создаваемой задачи в Redmine при поступлении вызова в КЦ. Поддерживает макро-переменные (макро-переменные указываются через процент, например %CGPN.digits%).

Возможные макро-переменные:

  • CGPN.digits - номер вызывающего (А) абонента;
  • CDPN.digits - номер вызываемого (Б) абонента;
  • CGPN.display_name - имя вызывающего абонента;
  • CDPN.display_name - имя вызываемого абонента;
  • DATE - текущая дата;
  • TIME - текущее время;
  • AGENT_ID - идентификатор агента КЦ, на которого распределился вызов;
  • QUEUE_ID - имя очереди, через которую вызов распределился на агента КЦ (если вызов пришел напрямую на агента КЦ, то данное поле будет пустым);
  • WORKITEM_ID - внутренний идентификатор заявки в КЦ
integration\redmine\task\bodystring, по умолчанию не задано

шаблон тела создаваемой задачи в Redmine при поступлении вызова в КЦ. Поддерживает макро-переменные аналогичные тем, что используются для переменной integration\redmine\task\subject


<Value> - значение, которое будет установлено свойству.

Пример:

admin@[sip1@ecss1]:/$ domain/biysk.local/cc/agent/set 5{00-09} skills [psychologie:80]
ok
Configuration changes will be applied after re-login

[exec at: 23.02.2019 10:38:56, exec time: 83ms, nodes: ds1@ecss1]
where

Команда предназначена для списка очередей к которым подключен агент.

Путь команды:

/domain/<DOMAIN>/cc/agent/where

Синтаксис:

where <AgentId>

Параметры:

<AgentId> - идентификатор агента.

Пример:

admin@[sip1@ecss1]:/$ domain/biysk.local/cc/agent/where 500 
line1.

[exec at: 23.02.2019 11:00:52, exec time: 83ms, nodes: ds1@ecss1]

В виртуальной АТС изначально нет ни одного оператора. Посмотреть список операторов, можно, используя команду list.

admin@[restfs1@ecss1]:/$ domain/test.domain2/cc/agent/list 
┌────────┬────────────┬─────┬──────────┬───────────┬────────┬────────┬────┐
│Agent id│Display name│Group│Supervisor│Description│Password│  Auto  │Load│
│        │            │     │          │           │        │complete│    │
├────────┼────────────┼─────┼──────────┼───────────┼────────┼────────┼────┤
└────────┴────────────┴─────┴──────────┴───────────┴────────┴────────┴────┘

Пример 1:

  1. Создадим нового оператора. Для создания оператора необходимо явно указать его целочисленный идентификатор. Этот идентификатор будет использоваться для входа в АРМ и управления оператором с телефонного аппарата.

    admin@[restfs1@ecss1]:/$ domain/test.domain2/cc/agent/declare 1 
    ok
    
    [exec at: 29.06.2016 22:51:13, exec time: 29ms, nodes: ds1@ecss1]
    admin@[restfs1@ecss1]:/$ domain/test.domain2/cc/agent/list      
    ┌────────┬────────────┬───────┬──────────┬───────────┬────────┬────────┬────┐
    │Agent id│Display name│ Group │Supervisor│Description│Password│  Auto  │Load│
    │        │            │       │          │           │        │complete│    │
    ├────────┼────────────┼───────┼──────────┼───────────┼────────┼────────┼────┤
    │1       │            │default│          │           │        │        │1   │
    └────────┴────────────┴───────┴──────────┴───────────┴────────┴────────┴────┘

    Если не указывать группу, то оператору автоматически будет выставлена группа по умолчанию — default. Если мы не укажем пароль данному оператору, то такой оператор не сможет выполнить вход в систему.

  2. Редакция свойств оператора.

    Свойства оператора можно редактировать после его создания:

    admin@[restfs1@ecss1]:/$ domain/test.domain2/cc/agent/set 1 display_name "Иван Васильевич"  
    ok
    
    admin@[restfs1@ecss1]:/$ domain/test.domain2/cc/agent/set 1 supervisor true               
    ok
    
    admin@[restfs1@ecss1]:/$ domain/test.domain2/cc/agent/set 1 description "Супервизор главной группы" 
    ok
    
    admin@[restfs1@ecss1]:/$ domain/test.domain2/cc/agent/set 1 password 142354  
    ok
    
    ┌────────┬───────────────┬───────┬──────────┬─────────────────────────┬────────┬────────┬────┐
    │Agent id│ Display name  │ Group │Supervisor│       Description       │Password│  Auto  │Load│
    │        │               │       │          │                         │        │complete│    │
    ├────────┼───────────────┼───────┼──────────┼─────────────────────────┼────────┼────────┼────┤
    │1       │Иван Васильевич│default│true      │Супервизор главной группы│142354  │        │1   │
    └────────┴───────────────┴───────┴──────────┴─────────────────────────┴────────┴────────┴────┘

    В именах и описании можно использовать кириллицу.

    Мы можем создавать несколько операторов одной командой, с помощью интервала:

    admin@[restfs1@ecss1]:/$ domain/test.domain2/cc/agent/declare {3-4} 
    ok
    
    [exec at: 29.06.2016 23:04:58, exec time: 48ms, nodes: ds1@ecss1]
    admin@[restfs1@ecss1]:/$ domain/test.domain2/cc/agent/list         
    ┌────────┬───────────────┬───────┬──────────┬─────────────────────────┬────────┬────────┬────┐
    │Agent id│ Display name  │ Group │Supervisor│       Description       │Password│  Auto  │Load│
    │        │               │       │          │                         │        │complete│    │
    ├────────┼───────────────┼───────┼──────────┼─────────────────────────┼────────┼────────┼────┤
    │1       │Иван Васильевич│default│true      │Супервизор главной группы│142354  │        │1   │
    │3       │               │default│          │                         │        │        │1   │
    │4       │               │default│          │                         │        │        │1   │
    └────────┴───────────────┴───────┴──────────┴─────────────────────────┴────────┴────────┴────┘

    Команда создания оператора может автоматически выбрать целочисленный идентификатор оператора с помощью опции auto:

    admin@[restfs1@ecss1]:/$ domain/test.domain2/cc/agent/declare auto display_name = Алекс, description = Оператор главной группы, password = 335123
    ok
    
    [exec at: 29.06.2016 23:11:38, exec time: 32ms, nodes: ds1@ecss1]
    admin@[restfs1@ecss1]:/$ domain/test.domain2/cc/agent/list                                                                                       
    ┌────────┬───────────────┬───────┬──────────┬─────────────────────────┬────────┬────────┬────┐
    │Agent id│ Display name  │ Group │Supervisor│       Description       │Password│  Auto  │Load│
    │        │               │       │          │                         │        │complete│    │
    ├────────┼───────────────┼───────┼──────────┼─────────────────────────┼────────┼────────┼────┤
    │1       │Иван Васильевич│default│true      │Супервизор главной группы│142354  │        │1   │
    │2       │Алекс          │default│          │Оператор главной группы  │335123  │        │1   │
    │3       │               │default│          │                         │        │        │1   │
    │4       │               │default│          │                         │        │        │1   │
    └────────┴───────────────┴───────┴──────────┴─────────────────────────┴────────┴────────┴────┘
    
    [exec at: 29.06.2016 23:11:42, exec time: 15ms, nodes: ds1@ecss1]
  3. Для завершения конфигурирования группы укажем дополнительную информацию об операторах:

    admin@[restfs1@ecss1]:/$ domain/test.domain2/cc/agent/set 3 display_name Боб
    ok
    
    [exec at: 29.06.2016 23:13:35, exec time: 61ms, nodes: ds1@ecss1]
    admin@[restfs1@ecss1]:/$ domain/test.domain2/cc/agent/set 3 password 114235 
    ok
    
    [exec at: 29.06.2016 23:13:49, exec time: 24ms, nodes: ds1@ecss1]
    admin@[restfs1@ecss1]:/$ domain/test.domain2/cc/agent/set 4 display_name Цезарь
    ok
    
    [exec at: 29.06.2016 23:14:07, exec time: 30ms, nodes: ds1@ecss1]
    admin@[restfs1@ecss1]:/$ domain/test.domain2/cc/agent/set 4 password 232456    
    ok
    
    [exec at: 29.06.2016 23:14:16, exec time: 29ms, nodes: ds1@ecss1]
    admin@[restfs1@ecss1]:/$ domain/test.domain2/cc/agent/list                 
    ┌────────┬───────────────┬───────┬──────────┬─────────────────────────┬────────┬────────┬────┐
    │Agent id│ Display name  │ Group │Supervisor│       Description       │Password│  Auto  │Load│
    │        │               │       │          │                         │        │complete│    │
    ├────────┼───────────────┼───────┼──────────┼─────────────────────────┼────────┼────────┼────┤
    │1       │Иван Васильевич│default│true      │Супервизор главной группы│142354  │        │1   │
    │2       │Алекс          │default│          │Оператор главной группы  │335123  │        │1   │
    │3       │Боб            │default│          │                         │114235  │        │1   │
    │4       │Цезарь         │default│          │                         │232456  │        │1   │
    └────────┴───────────────┴───────┴──────────┴─────────────────────────┴────────┴────────┴────┘
  4. Установим описание операторам 3 и 4:

    admin@[restfs1@ecss1]:/$ domain/test.domain2/cc/agent/set {3-4} description Оператор главной группы
    ok
    
    [exec at: 29.06.2016 23:15:44, exec time: 27ms, nodes: ds1@ecss1]
    admin@[restfs1@ecss1]:/$ domain/test.domain2/cc/agent/list                                         
    ┌────────┬───────────────┬───────┬──────────┬─────────────────────────┬────────┬────────┬────┐
    │Agent id│ Display name  │ Group │Supervisor│       Description       │Password│  Auto  │Load│
    │        │               │       │          │                         │        │complete│    │
    ├────────┼───────────────┼───────┼──────────┼─────────────────────────┼────────┼────────┼────┤
    │1       │Иван Васильевич│default│true      │Супервизор главной группы│142354  │        │1   │
    │2       │Алекс          │default│          │Оператор главной группы  │335123  │        │1   │
    │3       │Боб            │default│          │Оператор главной группы  │114235  │        │1   │
    │4       │Цезарь         │default│          │Оператор главной группы  │232456  │        │1   │
    └────────┴───────────────┴───────┴──────────┴─────────────────────────┴────────┴────────┴────┘

    Мы получили простейшую конфигурацию операторов Call-центра с группой по-умолчанию, тремя операторами и одним супервизором. Для создания группы не требуется предпринимать какие-либо дополнительные действия. Если при создании оператора указать имя группы, которое ранее не использовалось, будет создана новая группа.

    В дальнейшем для изменения свойств созданных операторов мы можем использовать команду set. Стоит однако отметить, что свойства оператора применяются и будут видны в АРМ. 
    Для завершения конфигурирования, вновь созданных операторов осталось добавить в одну из очередей. Далее мы создадим расширенную очередь и добавим в неё наших операторов.

Создание расширенной очереди в CoCon CLI

Создать расширенную очередь и добавить в нее операторов и/или телефонные номера можно используя CoCon CLI (см. Создание операторов и супервизоров в CoCon CLI).

Команды управления очередью расположены по пути:

/domain/<Domain>/cc/queue/

Новая очередь создается командой declare. Приведем здесь полный синтаксис команды declare:

admin@mycelium1@ecss1:/$ domain/biysk.local/cc/queue/declare -h
	Declare new queue.
	Usage: declare <QueueName> [<Parameters>]
	<QueueName> - name of queue to declare.
	<Parameters> (key1=value1,  ...,  keyN=valueN):
	agents            :: list of operators and/or aliases. Example: [agent:1,agent:2,alias:101, ...]
	distribution_mode :: random | mia | loa | multicall
	                     random  - Random agent. The random available agent;
	                     mia     - Most Idle Agent. The available agent who has been idle the longest since their last call;
	                     loa     - Least Occupied Agent. The available agent with the lowest percentage of work time since login;
	                     multicall - Call on all available agents simultaneously;
	skill_based_distribution :: true | false - enables skill based distribution
	max_wait_time     :: Time in seconds
	max_distribution_attempts :: Max distribution attemps performed before conversation leaves queue
	max_distribution_duration :: Max time in seconds between operators selected and connection established
	ringback_mode :: once | none. Once (default) - play ringback if distribution starts immediately after call enqueued. None - don't play ringback
	max_active_waiting_callbacks :: Max active waiting callbacks count
	window_duration :: Max time in seconds before window moved to the next available operators in serial-based distributions
	groups            :: Supervisor can observe queue only if it is in the same group
	description       :: string()
	remember_choice   :: none | strict | non-strict. Distribute conversation on previously selected operator
		none - disabled;
		strict - if operator busy wait until he become available;
		non-strict - if operator busy use ordinary distribution strategy;
	email             :: Email address to send important notifications (call missing)
	Rules below applied to call before accept it into queue:
	rules\max_predicted_time :: Time in seconds. Max predicted wait time. If it exeeded call will be declined
	rules\queue_length       :: non_neg_integer(). Max enqueued calls number
	rules\decline_if_no_operators :: boolean(). If true and if no queue operators is logged in call will be declined
	time_prediction\statistics\lower_threshold :: Lower threshold of conversation duration in seconds. Values less then lower threshold ignored during prediction. Default is 10 seconds.
	time_prediction\statistics\upper_threshold :: Upper threshold of conversation duration in seconds. Values greater then upper threshold ignored during prediction. Default is 30 minutes.
	time_prediction\statistics\max_count :: Max values stored in the statistics count. Default is 100.
	time_prediction\based_on :: average | most_freq | defined_value. What value to consider during prediction. Default is average.
		average - processed conversation duration average.
		most_freq - most frequently appeared interval of conversation processing duration.
		defined_value - manually specified value of conversation processing duration.
	time_prediction\defined_value :: Manually defined single conversation processing time in seconds. It used in prediction if it explicitly specified by time_prediction\based_on or if statistic values count less then time_prediction\min_values_in_statistics. Default is 60 seconds.
	time_prediction\min_values_in_statistics :: Min values count in the statistics to make prediction. If values count less then time_prediction\min_values_in_statistics then queue will use time_prediction\defined_value as estimate value of the single conversation handling duration. Default is 10

/domain/<DOMAIN>/cc/queue/ - команды управления очередями
Таблица 1. Параметры очереди.
ПараметрЗначениеОписание
Агенты (agents)список вариантов:список операторов, обслуживающих данную очередь
Агент (agent):<AgentId>созданный заранее оператор (см. Создание агентов)
Номер (alias):<PhoneNumber>телефонный номер абонента софтсвича или внешний номер
Описание (description)строкакраткое описание очереди
Распределение (distribution_mode)варианты:одна из следующих стратегий распределения:
ручное(manual)распределение звонков из очереди осуществляется супервизором вручную
зацикленное(cycle)циклическое распределение
распределение с последовательным включением новых агентов (progressive)распределение с последовательным включением агентов в окно вызова
Серийное распределение (serial)устанавливает соединение с операторами в порядке, в котором они добавлены в очередь
случайное (random)случайный оператор
наиболее свободный агент (mia)наиболее свободный агент (Most Idle Agent) - оператор, который свободен от обслуживания нагрузки дольше других
наименее занятый агент (loa)наименее занятый агент (Least Occupied Agent) - оператор, который обслужил меньшую нагрузку за определенный промежуток времени
массовый обзвон (multicall)вызов на всех доступных операторов одновременно
Почта (email)адрес почтыадрес почты, на который необходимо отправлять оповещения о пропущенных звонках
Группы (groups)списокгруппы, супервизоры которых смогут обозревать данную очередь
Максимальное количество попыток распределения (max_distribution_attempts)числоМаксимальное количество попыток распределения вызова на операторов.
Если вызов не был распределён за данное количество попыток, то вызов будет отправлен в ветку ERROR блока queue_cc.
Максимальное время попыток распределения (max_distribution_duration)число, секундыМаксимальное время для одной попытки распределения.
Данный параметр используется для того, чтобы ограничить время попытки распределения вызова (актуально для cycled режима)
Максимальное время ожидания (max_wait_time)число, секундымаксимальное время, которое вызов находится в очереди.
По истечении этого времени вызов покидает очередь и IVR сценарий продолжает выполнение по ветви ERROR
Максимальное количество обратных вызовов (max_active_waiting_callbacks)число, секундыМаксимальное количество активных ожидающих обратных вызовов
Обработка повторных обращений (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;
Перевод оператора в состояние "Технический перерыв" по не ответу на распределенный на него вызов
(auxwork_if_no_answer) 
boolпри значении true оператор будет переведен в состояние "Технический перерыв", если не ответит на распределенный на него вызов 
Распределение согласно умений (skill_based_distribution)boolраспределение вызовов согласно умениям операторов (тут нужно сослаться на статью, где описывается установка skill для операторов);
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)число, секунды

тайм-аут сдвига окна вызовов. Данный параметр указывается для режимов: cycled, serial, progressive и показывает через какое время занимать нового оператора.

Назначение и параметры очереди подробно описаны в разделе Руководство по управлению Call-центром.

Пример 2:

  1. Создадим расширенную очередь и добавим в неё операторов, созданных в примере 1:

    admin@[restfs1@ecss1]:/$ domain/test.domain2/cc/queue/declare queue1 agents = [agent:2,agent:3,agent:4], description = "Тестовая очередь", groups = default, max_wait_time = 300, distribution_mode = random         
    ok
    admin@[restfs1@ecss1]:/$ domain/test.domain2/cc/queue/list 
    ┌────────┬───────┬───────┬────────────┬────────┬─────┬────────────────┐
    │Queue id│Groups │Agents │Distribution│Max wait│Rules│  Description   │
    │        │       │       │    mode    │  time  │     │                │
    ├────────┼───────┼───────┼────────────┼────────┼─────┼────────────────┤
    │queue1  │default│agent:2│random      │300     │     │Тестовая очередь│
    │        │       │agent:3│            │        │     │                │
    │        │       │agent:4│            │        │     │                │
    └────────┴───────┴───────┴────────────┴────────┴─────┴────────────────┘

    Командой выше мы создали очередь, в которую добавили агентов с идентификаторами 2,3 и 4. Максимальное время ожидания в ней 300 сек (5 минут), ограничений на максимальную длину или предсказываемое время ожидания нет. Очередь имеет стратегию распределения random. Это значит, что каждый раз во время распределения оператор будет выбираться из списка свободных случайным образом. 

  2. Также мы можем добавить в эту очередь обычные телефонные номера:

    admin@[restfs1@ecss1]:/$ domain/test.domain2/cc/queue/queue1/add-agent alias 100{1-3}
    ok

    Новые параметры очереди применяются сразу же после их изменения.

Создание и настройка расширенной очереди через web-конфигуратор

Приложение web-конфигуратора "Call-центр" ("Call-center") используется для создания агентов и очередей через расширенный web-конфигуратор.

Создание агента

Для добавления нового агента кликните мышкой на раздел агенты и нажмите кнопку , введите идентификатор агента и определите группу, к которой агент будет принадлежать.

Идентификатор агента — целое число, которое будет использоваться для управления агентом с телефонного аппарата.

Таблица 1 — параметры агента

СвойствоЗначениеОписание
Автоматическое завершение (auto_complete_timeout)0..3600(сек) или infinityтаймер автоматического завершения постобработки в секундах, 0 — означает, что этап постобработки отключен
Запись вызова (call_recording)boolean, по умолчанию falseвключена или нет запись разговора для агента
Описание (description)строкакраткое описание агента
Имя агента (display_name)строкаотображаемое имя агента
Группа(group)строка, по умолчанию defaultгруппа, к которой относится агент
Пароль (password)строкапароль для аутентификации, состоит из чисел и имеет длину не менее 4-х символов
Перехват (pickup)true/false, по умолчанию falseперехват прямого вызова в call-центре
Умение (skills)[skill[/subskill]:quality, ...]список умений, который определяет способности и уровень квалификации оператора <police | psychologie>(quality 0-100)
Супервизор (supervisor)true/false, по умолчанию falseвключение привилегий "супервизора", способность регистрироваться в АРМ супервизора и наблюдать за операторами в своей группы
Таймаут смены (мин) (working_timeout)5-1440 мин. По умолчанию — 120интервал времени в течении которого агент должен быть не подключен к системе (logout) после которого "смена" для статистики закрывается
Таймаут автоматического завершения (auto_logout_timeout)5-720 мин. По умолчанию — 120период неактивности оператора, после которого осуществляется выход из сессии

Умения операторов могут быть определены самостоятельно или выбраны из списка заранее определённых (fire,gas и т.д). Также необходимо определить уровень умений для оператора, заполнив поле "Значение". При поступлении вызова в очередь, который требует наличия определённого уровня умений у оператора, очередь попытается распределить такой вызов на свободного оператора с максимально подходящим набором умений соответствующего уровня. Для того, чтобы назначить требуемые умения для вызова воспользуйтесь блоком SET в IVR (см. раздел IVR редактор).

Создание очереди

Для добавления очереди кликните мышкой на раздел очереди и нажмите кнопку , введите "Идентификатор очереди" ("Queue ID").

После ввода идентификатора, откроется

Каждый агент имеет уникальное имя в рамках данного call-центра и набор следующих параметров, полный список всех возможных параметров смотрите ниже:

  • Автоматическое завершение (Autocomplete) — при включенном флаге вызовы будут завершаться минуя фазу постобработки.
  • Тайм-аут автоматического завершения (Autocomplete timeout) — период времени, по истечении которого происходит автоматическое завершение пост-обработки вызова.
  • Тайм-аут смены (Working timeout, m) — период времени, по истечении которого, в случае выхода агента из АРМ, смена будет считаться завершенной (статистика за текущую смену закроется).
  • Запись вызова (Call recording) — при включенном флаге будет происходить запись разговоров агента.
  • Перехват (Pickup) — при включенном флаге агент сможет перехватывать прямые вызовы, поступившие на агентов его группы.
  • Описание (Description) — краткое описание агента.
  • Имя агента (Agent name) — отображаемое имя агента.
  • Группа (Group) — группа, к которой относится агент.
  • Пароль (Password) — пароль для аутентификации. Пароль должен состоять из чисел и иметь длину не менее 4-х символов.
  • Супервизор (Supervisor) — при включенном флаге агент может подключаться к АРМ супервизора и обозревать агентов и очереди, принадлежащие его группе.
  • Умения агента (Agent skills) — список умений, который определяет функционал и квалификацию оператора.
  • Режим КПВ (Ringback mode) — режим проигрывания КПВ абоненту, позвонившему в очередь.
  • Почта (Email) — почта на которую будут приходить уведомления о непринятых вызовах call-центра.
  • Свойства — указаны ниже:

Таблица 1. Параметры очереди.

ПараметрЗначениеОписание
Агенты (agents)список вариантов:список операторов, обслуживающих данную очередь
Агент (agent):<AgentId>созданный заранее оператор (см. Создание агентов)
Номер (alias):<PhoneNumber>телефонный номер абонента софтсвича или внешний номер
Описание (description)строкакраткое описание очереди
Распределение (distribution_mode)варианты:одна из следующих стратегий распределения:
ручное(manual)распределение звонков из очереди осуществляется супервизором вручную
зацикленное(cycle)циклическое распределение
распределение с последовательным включением новых агентов (progressive)распределение с последовательным включением агентов в окно вызова
Серийное распределение (serial)устанавливает соединение с операторами в порядке, в котором они добавлены в очередь
случайное (random)случайный оператор
наиболее свободный агент (mia)наиболее свободный агент (Most Idle Agent) - оператор, который свободен от обслуживания нагрузки дольше других
наименее занятый агент (loa)наименее занятый агент (Least Occupied Agent) - оператор, который обслужил меньшую нагрузку за определенный промежуток времени
массовый обзвон (multicall)вызов на всех доступных операторов одновременно
Почта (email)адрес почтыадрес почты, на который необходимо отправлять оповещения о пропущенных звонках
Группы (groups)списокгруппы, супервизоры которых смогут обозревать данную очередь
Максимальное количество попыток распределения (max_distribution_attempts)числоМаксимальное количество попыток распределения вызова на операторов.
Если вызов не был распределён за данное количество попыток, то вызов будет отправлен в ветку ERROR блока queue_cc.
Максимальное время попыток распределения (max_distribution_duration)число, секундыМаксимальное время для одной попытки распределения.
Данный параметр используется для того, чтобы ограничить время попытки распределения вызова (актуально для cycled режима)
Максимальное время ожидания (max_wait_time)число, секундымаксимальное время, которое вызов находится в очереди.
По истечении этого времени вызов покидает очередь и IVR сценарий продолжает выполнение по ветви ERROR
Максимальное количество обратных вызовов (max_active_waiting_callbacks)число, секундыМаксимальное количество активных ожидающих обратных вызовов
Обработка повторных обращений (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;
Перевод оператора в состояние "Технический перерыв" по не ответу на распределенный на него вызов
(auxwork_if_no_answer) 
boolпри значении true оператор будет переведен в состояние "Технический перерыв", если не ответит на распределенный на него вызов 
Распределение согласно умений (skill_based_distribution)boolраспределение вызовов согласно умениям операторов (тут нужно сослаться на статью, где описывается установка skill для операторов);
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)число, секунды

тайм-аут сдвига окна вызовов. Данный параметр указывается для режимов: cycled, serial, progressive и показывает через какое время занимать нового оператора.

Для добавления агентов в очередь нажмите кнопку  напротив группы или напротив определенного агента. В таблице 2 представлены элементы управления выбором агентов для очереди.

Таблица 2 — Элементы управления выбором агентов для очереди

Отображение всех агентов

Отобразить выбранных агентов

Отобразить свободных агентов

Выбрать всех агентов

Освободить всех агентов

Настройка авторизации агентов Call-центра через LDAP/AD

Для авторизации агентов КЦ через LDAP/AD необходимо сперва создать конфигурацию LDAP/AD в рамках домена, после чего на уровне настроек КЦ необходимо указать, через какое соединение будет происходить авторизация агентов КЦ. Для этого необходимо выполнить команду:

domain/<DOMAIN>/cc/properties/set ldap_server_id <LDAP_ID>

где

  • <DOMAIN> — имя виртуальной АТС;
  • <LDAP_ID> — идентификатор LDAP сервера.
domain/p.city/cc/properties/set ldap_server_id ad-1 
Property "ldap_server_id" successfully changed from: 
undefined
   to
<<"ad-1">>.

А так же активировать авторизацию через LDAP

domain/<DOMAIN>/сс/properties/set ldap_authentication_enabled true

где

  • <DOMAIN> — имя виртуальной АТС;
domain/p.city/cc/properties/set ldap_authentication_enabled true
Property "ldap_authentication_enabled" successfully changed from: 
false
   to
true.

Затем, чтобы агент КЦ мог авторизоваться в LDAP/AD, необходимо этому агенту прописать свойство ldap_username — имя учетной записи LDAP/AD:

domain/<DOMAIN>/cc/agent/set <AGENT_ID> ldap_username <login>

где

  • <DOMAIN> — имя виртуальной АТС;
  • <AGENT_ID> — идентификатор абонента Call-центра;
  • <login> — Логин от call-центра, используемый в LDAP
domain/p.city/cc/agent/set 1 ldap_username test.user 
ok
Configuration changes will be applied after re-login

После этого необходимо перелогинить абонента, и авторизация будет происходить по LDAP/AD.

Настройка интеграции КЦ и redmine

В случае, если агенты для авторизации в call-центре и redmine используют единые данные с ldap-сервера, возможно настроить интеграцию redmine и АРМ Агента/Супервизора. Для этого необходимо в свойствах агента выставить параметр:

domain/<DOMAIN>/cc/agent/set <AGENT_ID> integration\redmine <native>

admin@[mycelium1@ecss1]:/$ domain/test.domain/cc/agent/set 3 integration\redmine <native>
ok

Автоматизированное рабочее место (APM CC UI)

В данном разделе представлены описание и настройка автоматизированных рабочих мест оператора и супервизора Call-центра.

Автоматизированное рабочее место (АРМ CC UI) оператора

Установка и начало работы

Установка данного сервиса осуществляется командой:

sudo aptitude update 
sudo aptitude install ecss-cc-ui

Для того чтобы войти в АРМ оператора необходимо перейти в браузере по ссылке: http://<SSW_ADDR>:8090

где

  • <SSW_ADDR> — IP-адрес или доменное имя системы ECSS-10.

Для входа необходимо заполнить следующие данные:

  • Логин (Agent ID) — идентификатор оператора (задаётся при создании оператора (см. Создание операторов));
  • Пароль (Password) — пароль оператора (задаётся при декларации (см. документацию по декларации операторов)).
  • Номер телефона (Phone Number) — номер телефона (локальный), к которому будет привязан оператор. Таким образом, все вызовы, которые очередь направит на оператора, будут поступать на указанный номер.- разговаривает, оператор разговаривает
  • Домен (Domain) — имя виртуальной АТС, в которой задекларирован данный оператор.
  • Роль (Role) — роль пользователя, используемая в системе.
Если выбрать "Определить автоматически" при выборе роли, сперва произойдет попытка логина в роли Супервизора. В случае отсутствия у пользователя требуемых прав, либо при превышении лицензионных ограничений на количество одновременно работающих Супервизоров будет проведена попытка логина в роли Оператора.

Описание рабочего стола, оператор разговаривает

Автоматизированное рабочее место оператора call-центра представляет собой веб-страницу с несколькими вкладками и областями:

  • Обзорная панель (Dashboard) — рабочая область;
  • Вызовы (Calls) — история вызовов;
  • Статистика — статистика оператора;
  • Блок для совершения вызова/создания конференции — область для создания вызова, конференции;
  • Список группы — область, в которой отображаются операторы и супервизоры, находящиеся в одной группе;
  • Карточка вызова — карточка в которой отображаются входящие, исходящие или текущие вызовы для данного оператора.


Обзорная панель (Dashboard)

Рабочее место оператора представляет собой набор областей, которые информируют оператора о его статусе, статусе других операторов, статистике, а также о состоянии обрабатываемого вызова.

Поле Информация оператора

Поле "Информация оператора" имеет следующий вид:

В данном блоке представлена следующая информация:

  • ID оператора;
  • Номер, использованный для входа;
  • Текущий статус;
  • Время нахождения в текущем статусе;
  • Селектор переключения статуса.

Оператор может иметь два состояния (статуса):

  • доступен (avaliable) — оператор зарегистрирован и готов к работе;
  • занят (auxwork) — оператор отсутствует на рабочем месте. При этом очередь не направляет вызовы этому оператору.

Для того, чтобы сменить статус, нажмите на селектор возле текущего статуса.

Блок со статистикой оператора

Блок отображает статистику текущей сессии, статистику за смену, неделю, месяц.
Для выбора статистики за определенный промежуток времени, требуется нажать на соответствующую область.

Сессия создается при регистрации оператора (login оператора) в АРМ и завершается при выходе из системы (logout оператора).

В статистику входят следующие пункты:

  • Доступен (Available) — время, в течение которого оператор был доступен;
  • Все время (Total time) — суммарное время нахождения оператора в системе;
  • Заблокирован (Blocked) — время, в течение которого оператор был заблокирован супервизором;
  • Принято звонков (Accepted calls) — количество принятых вызовов.

Блок для совершения вызовов/создания конференции

Блок для совершения вызовов/создания конференции имеет следующий вид:

Для того чтобы совершить вызов, оператор должен набрать номер телефона в текстовом поле и нажать на кнопку "Позвонить" .

При этом происходит ряд действий:

  1. На ТА оператора поступает вызов. В качестве номера вызывающего абонента будет указан номер, который оператор ввёл в текстовое поле.
  2. Далее оператор должен ответить на данный вызов, и после этого система совершает вызов в сторону вызываемого абонента. При этом оператор должен слышать КПВ.
  3. Далее вызываемый абонент снимает трубку, и начинается разговор.

Для того чтобы организовать конференцию, необходимо в блоке "Блок для совершения вызовов/создания конференции" нажать кнопку "Конференция (Conference)" .

АРМ оператора поддерживает два вида конференций:

  • Закрытая;
  • Общедоступная.

Закрытая конференция (Private conference)

Для того, чтобы создать закрытую конференцию, оператор должен нажать на кнопку создания конференции.
В открывшемся меню будет предложено выбрать участников конференции:

  • Авторизованные участники группы, в которую входит оператор;
  • Номера телефонов абонентов, с которыми в данный момент разговаривает оператор.

Помимо этого ввести номер участника можно и вручную в поле "Номер или имя для поиска и добавления (Number or name to search and add)". Конференции можно назначить описание, которое будет видно всем участникам.

Супервизор может просматривать сохраненные отчеты, нажав на имя отчета, а также изменять название отчета, нажав кнопку .

После добавления участников выберите пункт "Закрытая (Private conference)" .

После создания конференции появится карточка конференции, на которой будут видны её участники.

  •  — Участники, с которыми в данный момент ведётся разговор;
  •  — Участники, до которых осуществляется дозвон;
  •  — Участники, которые уже покинули разговор;
  •  — Участники, до которых не удалось дозвониться.

Участникам, до которых не удалось дозвониться, или которые покинули конференцию, можно перезвонить, нажав на кнопку . Также можно самостоятельно отключить участника, находящегося в конференции кнопкой .
Если участник конференции является оператором, он также сможет видеть членов конференции в своём АРМ. Добавлять и удалять участников из конференции может только тот, кто её создал.

Как только оператор покидает конференцию, у него пропадает карточка конференции. Однако создатель конференции продолжает видеть её, даже если будет от неё отсоединен. Таким образом, создатель конференции может покидать и возвращаться в конференцию, или управлять добавлением/удалением участников, не находясь в ней. Если создатель конференции хочет выйти из конференции и больше не следить за ней, он может нажать кнопку "Покинуть конференцию" . Также мастер конференции может завершить конференцию, нажав на кнопку "Завершить конференцию" , при этом соединение с остальными участниками конференции будет прервано.

Созданная конференция существует пока в ней находится как минимум 2 участника. Если в конференции останется только один участник, соединение автоматически будет прервано. Однако допускается создавать конференцию, в которой будет только один участник — создатель. В этом случае конференция не считается "окончательно созданной" до тех пор, пока в неё не будет добавлен хотя бы один участник.

Добавление участников в имеющуюся конференцию осуществляется с помощью кнопки "Добавить"  на карточке конференции.

В данном меню можно добавить нового участника, выбрав его из списка или воспользовавшись поиском по имени или номеру телефона. Участники, которые уже есть в данной конференции не предлагаются.

Если активировать опцию "Ведущий" при добавлении участника или при создании конференции, то управление вызовом перейдет к этому агенту.

Создание конференции из имеющегося вызова

Новую конференцию можно создать, нажав на кнопку "Создать конференцию"  на карточке вызова.

В появившемся меню можно указать других участников создаваемой конференции.

Общедоступная конференция (Public conference)

Создание общедоступной конференции мало отличается от создания закрытой конференции. В меню создания конференции нужно выбрать пункт "Общедоступная (Public conference)" .

Появившееся меню полностью соответствует меню для создания приватной конференции, за исключением того, что переключатель установлен в значение "Публичная конференция". В этом меню можно изменить режим создания конференции с публичной на приватную и обратно.

Отличия публичной конференции от приватной:


ПриватнаяПубличная
Кто видитТолько операторы-члены данной конференции и её создательВсе операторы-члены одной группы с создателем конференции
Кто управляетТолько создатель конференцииВсе операторы-члены одной группы с создателем конференции

Чтобы перестать следить за конференцией член группы может нажать кнопку "Выйти" . Однако, если он будет в неё добавлен (впервые или повторно), он получит доступ к управлению конференцией.

Открыть Селектор (Open "Selector")

Настройка селекторной связи описана в Руководстве по настройке селекторной связи.

Область Список группы

Область показывает статусы линий операторов и супервизоров, которые находятся в одной группе. Данная карточка имеет следующий вид:

Статусы линии операторов отображаются в виде пиктограмм:

  • — оператор находится в состоянии Avaliable;
  • — оператор находится в состоянии Talking;

Для более удобного поиска по операторам можно воспользоваться фильтром. Для это необходимо в поле Search ввести имя или ID оператора.

Карточка вызова

При поступлении вызова у оператора появляется карточка вызова. В зависимости от фазы вызова, карточка отображает различную информацию о вызове.

В развёрнутом виде карточка может содержать:

  • Время нахождения в определённой фазе обработки вызова;
  • Номер вызывающего абонента (Phone Number);
  • Имя вызывающего абонента (Display Name);
  • Направление вызова (in/out);
  • Состояние (Status) Status — статус обработки вызова:
    • alerting — вызов ожидает ответа от оператора;
    • fax_receiving — идёт приём факса;
    • working — фаза разговора;
    • acw — постобработка вызова. Этот статус доступен только в случае, если вызов распределится на оператора через очередь, и у оператора свойство auto_complete = false);
  • ID очереди (QueueID) — имя очереди, с которой распределился вызов;
  • Описание очереди (Queue Description) — описание очереди;
  • Время распределения (Start time) — время поступления вызова в систему;
  • Время ответа (Answer time) — время ответа на вызов;
  • Fax receiving time — время начала приёма факса;
  • Release time — время завершения вызова;
  • Список ссылок на факсы, принятых в рамках данного разговора.

Таблица 1 — Основные элементы карточки вызова

Добавление вызова в конференцию

Постановка вызова на удержание

Принятие факса

Вызов завершен

Перевод вызова на другого оператора

Консультация

Отклонение вызова

Добавление участника к конференции

Выход из конференции

Рассмотрим основные этапы обработки вызова оператором. Вызов поступает оператору, при этом у него появляется следующая карточка вызова:

На данном этапе оператор может принять вызов, нажав на кнопку "Принять" или сняв трубку ТА, или отклонить вызов, нажав на кнопку "Отклонить". Если оператор отклоняет вызов, карточка исчезает. Если же оператор отвечает на вызов, карточка принимает следующий вид:

На данном этапе оператор имеет возможность принять факс от клиента или завершить вызов. Для того чтобы принять факс, необходимо нажать на кнопку "Принять" , при этом клиенту подключится факсовый порт, а карточка примет следующий вид:

Для того, чтобы оператор мог использовать процедуру приёма факса, у него должна быть активирована услуга fax_receiver (см. Активация услуги). Оператор имеет возможность отменить приём факса, нажав на красную кнопку отмены.

После того как факс будет успешно принят, в карточку добавится поле со ссылкой на принятый документ.

Для того чтобы просмотреть файл, необходимо нажать на его имя. После того как оператор завершил обслуживание клиента, он может положить трубку на ТА или нажать на кнопку , чтобы перейти в фазу постобработки вызова (при условии, что у данного оператора свойство auto-complite=false), при этом карточка примет следующий вид:

Для того чтобы закончить фазу постобработки вызова, необходимо нажать на кнопку "Завершить". С этого момента линия оператора освобождается, и он готов к обработке следующего вызова.

Отправка файла на e-mail

Для отправки принятых файлов на электронную почту нажмите на кнопку Отправить на e-mail .

В открывшейся форме необходимо указать:

  • электронный адрес получателя;
  • тему письма (опционально);
  • сообщение (опционально), а также указать какие именно файлы вы хотите передать.

После этого нажмите кнопку "Отправить" для отправки письма или кнопку "Отменить" для отмены.

Вызовы (Calls)

Приложение "Вызовы" (Calls)" даёт возможность запрашивать историю вызовов оператора.

Во вкладке представлена следующая информация о вызове:

  • Номер (Digits) — номер вызывающего абонента (номер А);
  • Причина отбоя (Release reason) — причина, по которой вызов был не обработан;
  • Запись (Record) — ссылка на файл с записью разговора;
  • Файлы (Files) — ссылка на файл, принятый посредством факсимильной связи;
  • Длительность (Duration) — продолжительность вызова (продолжительность считается с момента ответа оператора на вызовов и до его завершения);
  • Время начала (Start Time) — время распределения вызова очередью на данного агента.

Для поиска по истории вызовов реализованы фильтры по номеру, дате, очереди и оценке.

Для того чтобы воспользоваться простым фильтром, введите номер телефона в поле "Номер".
Стоит отметить, что поиск значений не строгий. Например, при вводе номера 123, фильтр может показать вам следующие номера: 8913 123 3445, 434 123 34, 123 и т.д.

Для того чтобы воспользоваться фильтром по дате, нажмите соответствующую кнопку .
После нажатия появится всплывающее окно, в котором можно указать дату или конкретный временной промежуток.
Для удаления фильтра по дате нажмите на дату 2 раза и сотрите выделенные цифры кнопкой Backspace.

Также существует возможность фильтрации истории вызовов по очереди, из которой пришел вызов. Для этого требуется нажать на поле "Очередь", после чего выбрать требуемую очередь.

Фильтрация по оценкам позволяет отобразить вызовы, входящие в определенный диапазон оценок или же вызовы с конкретными оценками.
Таблица с фильтрами приведена ниже.

Пример фильтраОценки которые будут искаться
1-51,2,3,4,5
1-5,71,2,3,4,5,7
-50,1,2,3,4,5
4-4,5,6,7,8,9
2, 4-6, 8-0,1,2,4,5,6,8,9
3,4,53,4,5

Напротив вызова, который был записан появляются иконки "Воспроизвести"  и "Загрузить запись" .
После нажатия на кнопку "Воспроизвести" станет доступна регулировка громкости  и воспроизведения.

Для выгрузки истории вызовов в файл нажмите кнопку .

Автоматизированное рабочее место (АРМ CC UI) супервизора

Начало работы

Начало работы с АРМ супервизора ничем не отличается от АРМ оператора. См. пункт Руководство по управлению Call-центром.

Описание рабочего стола

Автоматизированное рабочее место супервизора call-центра представляет собой веб-страницу с несколькими вкладками и областями:

  • Обзорная панель (Dashboard) — рабочая область;
  • Вызовы (Calls) — история вызовов;
  • Очереди (Queues) — статистика оператора;
  • Операторы (Operators) — область для создания вызова, конференции;
  • Справочник (Contacts) — область, в которой отображаются операторы и супервизоры, находящиеся в одной группе;
  • Статистика (Statistics) — карточка в которой отображаются входящие, исходящие или текущие вызова данного оператора.

Обзорная панель (Dashboard)

Обзорная панель полностью копирует тот функционал, который присутствует у оператора, за исключением дополнительной карточки "Очередь".

Очередь

В данной карточке отображаются все абоненты, находящиеся в данной очереди.

Супервизор имеет возможность выбрать очередь, которая будет отображаться на экране, или выбрать отображение всех очередей. Для этого требуется нажать на поле Очередь и выбрать требуемое значение.

В случае занятости всех операторов или долгого времени ожидания абонентом, супервизор может принять данный вызов, нажав кнопку "Принять вызов" .
Также супервизор имеет право перенаправлять абонента из одной очереди в другую, для этого требуется нажать кнопку "Сменить очередь"  .
Появится дополнительное окно, в котором требуется выбрать требуемую очередь.

Вызовы (Calls)

Приложение "Вызовы" (Calls)" даёт возможность запрашивать историю вызовов оператора и супервизора.

Вкладка "Вызовы" (Calls)" состоит из 3 подпунктов: Активные, Завершенные, Мои завершенные.

Активные

В данном разделе отображаются текущие активные вызовы операторов и супервизоров, находящихся в одной группе, а также вызовы находящиеся в очереди.

Супервизор может взаимодействовать с активными вызовами, а также вызовами, находящимися в очереди.
Для того чтобы прослушать разговор, нажмите кнопку "Прослушать вызов" . После чего произойдет вторжение в звонок, супервизор будет слышать участников вызова, участники вызова его слышать не будут.
Чтобы проконсультировать оператора, нажмите кнопку "Консультация агента" . После чего произойдет вторжение в звонок, супервизор сможет прослушивать участников вызова, а его сможет слышать только агент, которого он консультирует.
Также супервизор имеет возможность собрать конференцию, для этого требуется нажать кнопку "Конференция" . Супервизор будет слышать всех участников конференции, и его будут слышать все участники.
Кроме того, супервизор имеет возможность завершить вызов, для этого требуется нажать кнопку "Завершить разговор" .
Вызов, находящийся в очереди, можно перевести в другую очередь, нажав "Сменить очередь" .
Супервизор может принудительно направить вызов абонента в очереди на оператора, нажав кнопку "Распределить на операторов" .
Супервизор также имеет возможность завершить вызов абонента, находящегося в очереди, нажав кнопку "Завершить разговор" .

Завершенные

Данный раздел отображает все завершенные вызовы в данной группе. Супервизор имеет возможность просмотреть причину отбоя, раскрыв вызов нажатием кнопки .

Все остальные доступные действия аналогичны действиям оператора. См. пункт Руководство по управлению Call-центром.

Мои завершенные

Данная вкладка аналогична такой же вкладке у оператора. Вкладка отображает все завершенные звонки данным супервизором. См. пункт Руководство по управлению Call-центром.

Очереди (Queues)

В данной вкладке отображаются все очереди, относящиеся к данной группе операторов/супервизоров.

Также здесь присутствует сводная статистика и ее параметры по каждой из очередей:

  • Очередь (Queue) — название очереди;
  • Операторов онлайн (Operators online) — количество операторов, находящихся в статусе Доступен;
  • Максимальное время ожидания (Max wait time) — максимальное время ожидания абонента, ожидающего ответа оператора;
  • Распределено (Distributed) — количество распределенных абонентов из очереди;
  • Ожидает (Waiting) — количество абонентов, которые ожидают распределения из очереди;
  • Максимальная длина очереди (Queue length) — максимальное количество вызовов в очереди. При превышении вызов не будет помещен в очередь и IVR сценарий продолжит выполнение по ветви FULL;

При нажатии на одну из очередей, супервизор попадет на вкладку Вызовы с включенным фильтром по данной очереди.

Операторы (Operators)

Данная вкладка содержит сводную таблицу операторов, отражающую их статусы, деятельность и другие параметры.

Таблица операторов содержит следующие параметры и значения:

  • Логин (Login) — логин оператора, под которым он зашел в АРМ;
  • Имя (Name) — имя оператора;
  • Статус (Status) — статус оператора, отображающий его текущее состояние:
    • — доступен, находится в АРМ оператора и готов принимать звонки;
    • — вспомогательная работа, находится в АРМ оператора, но не может принимать звонки из очереди;
    •  — оффлайн, не находится в АРМ оператора, не может принимать звонки;
    • — заблокирован, оператор заблокирован супервизором;
  • Деятельность (Activity) — состояние линии оператора:
    • — ожидание, оператор ожидает вызова;- разговаривает, оператор разговаривает
    • — оповещение, на оператора поступает посылка вызова;
    • — разговаривает, оператор разговаривает;
  • Номер (Number) — номер абонента, использованный для входа в АРМ оператора;
  • Изменение статуса (Status changed) — последнее изменение статуса оператора;
  • Заблокирован (Blocked) — действия, направленные на изменение статуса оператора:
    • — заблокировать оператора;
    • — разблокировать оператора;
    • — принудительно разлогинить оператора из АРМ.

Выше таблицы содержится поле, отображающее фильтры, по которым можно фильтровать операторов. Когда иконка подсвечивается белым, она неактивна, когда серым – активна.

Справочник (Contacts)

В справочнике отображаются все пользователи данного домена, а также другие добавленные вручную записи. Настройка справочника описана в разделе Настройка справочника для Автоматизированного рабочего места (APM CC UI).

В верхней части Справочника отображается строка с поиском по соответствующим атрибутам (Имя, номер и т.д)

Для того, чтобы отобразить на одной странице большее количество записей требуется нажать на кнопку , после чего выбрать требуемое значение.

Для переключения между страницами исполняются кнопки .

Статистика (Statistics)

Данная вкладка содержит в себе 2 подменю: Редактор и Мои отчеты.

Редактор

Данное подменю позволяет отображать статистику по всем операторам и супервизорам, находящимся в одной группе при помощи графиков, таблиц, а также круговых диаграмм.

Статистику можно просматривать за определенный промежуток времени, для этого требуется выбрать один из фильтров вверху страницы 

Если же требуется просмотреть статистику за конкретный временной промежуток, то можно воспользоваться виджетом календаря и выбрать конкретную дату(ы) .

Для более детального просмотра статистика можно выбрать метрику по часам, дням, неделям, месяцам или же оставить ее в автоматическом режиме.

Всю собранную статистику можно сохранить в формат XLSX .
Для того чтобы быстро убрать все таблицы, существует отдельная кнопка .
Если супервизоры требуется сохранить статистику в виде отчета для дальнейшей работы с ним, требуется нажать на кнопку "Сохранить отчет" .
Для того, чтобы добавить график со статистикой, требуется нажать на кнопку .
После этого появится окно в котором можно задать название графику, выбрать операторов или очереди, а также метрики на основе которых будет выстроена статистика.

Список метрик
Метрики операторов
Входящие вызовы
Исходящие вызовы
Пропущенные входящие
Пропущенные исходящие
Время разговора (вх), мин
Время разговора (исх), мин
Обработано вызовов из очередей
Пропущенные вызовы из очередей
Общее время разговоров в вызовах из очередей
Пост-обработка вызовов, мин
Длительность вспомогательных работ, мин
Среднее время оповещения, мин
Среднее время разговора в очередях, мин
Среднее время обработки вызовов, мин
Общее число входящих вызовов
Принятые входящие вызовы из города
Принятые входящие междугородние вызовы
Принятые входящие экстренные вызовы
Принятые исходящие вызовы из города
Принятые исходящие междугородние вызовы
Принятые исходящие экстренные вызовы
Непринятые входящие вызовы из города
Непринятые входящие междугородние вызовы
Непринятые входящие экстренные вызовы
Непринятые исходящие вызовы из города
Непринятые исходящие междугородние вызовы
Непринятые исходящие экстренные вызовы
Входящие вызовы из города
Входящие междугородние вызовы
Входящие экстренные вызовы
Исходящие вызовы из города
Исходящие междугородние вызовы
Исходящие экстренные вызовы
Оператор был доступен, но не обслуживал вызовы из очереди, мин
Оператор был доступен, но не обслуживал вызовы, мин
Оператор был на месте, но не обслуживал вызовы из очереди, мин
Оператор был на месте, но не обслуживал вызовы, мин
Оценка первого оператора
Оценка последнего оператора
Общая оценка операторов

Оценки операторов можно выбрать в пределах 0-9.

Метрики очереди
Обработано вызовов
Пропущено вызовов
Перемещено вызовов
Отклонено вызовов
Переведено вызовов
Вызовы отклоненные клиентом
Принято и обработано вызовов
Общее число потерянных вызовов
Среднее время ожидания, мин
Всего ждали, мин
Превышено время ожидания
Превышено число распределений
Удалено вызовов
Вызовы из города
Междугородние вызовы
Экстренные вызовы
Обработанные вызовы из города
Обработанные междугородние вызовы
Обработанные экстренные вызовы
Оценка очереди
Эффективность

Оценки эффективности можно выбрать в пределах 0-9.

После нажатия на кнопку Сохранить появится соответствующий график.

Статистику можно отображать в виде:

  • — график;
  • — диаграммы;
  • — круговой диаграммы.

Если требуется сохранить отдельные таблицы/графики, то это можно сделать, нажав на кнопку .
Для того, чтобы изменить настройки текущего графика, требуется нажать на кнопку . После чего появится такое же окно как и при создании графика.
Для того, чтобы удалить график требуется нажать на кнопку  .
С левой стороны отображаются все созданные графики, их можно перемещать относительно друг друга зажимаю кнопку . Для того, чтобы скрыть ненужные графики требуется снять с соответствующего графика "Галочку" .

Для того, чтобы изменить настройки сразу нескольких графиков нужно нажать на кнопку "Изменить несколько графиков"  .

После этого откроется окно в котором поэтапно требуется ответить на 4 вопроса.

Мои отчеты

Вкладка содержит в себе все сохраненные отчеты.

Супервизор может просматривать сохраненные отчеты, нажав на имя отчета, а также изменять название отчета, нажав кнопку, удалить отчет –.