Маршрутизация

Правила маршрутизации для тредов создаются в разделе Маршруты.

Маршрутизация — это правила назначения тредов на операторов и/или ботов; настраиваются для сегментов. Каждый из маршрутов представляет собой последовательность нескольких точек маршрута (или одну точку), которую может пройти тред соответствующего сегмента при поиске свободной сессии.

Точкой маршрута может быть чат-бот, агент, или группа агентов, объединенных одним признаком (навык, группа супервайзера, подразделение), или любой другой набор агентов, в том числе все агенты (точка Любой агент; она может быть только последней в маршруте). Точкой маршрута может быть персональный менеджер: в этом случает тред будет маршрутизирован агенту с определенным логином, который был получен в параметре сегментации Персональный менеджер.

В точке маршрута вы можете указать несколько навыков или подразделений, в этом случае система обрабатывает такой набор с условием «ИЛИ».

Пример:
В системе заданы два маршрута.
Маршрут 1 «Персональный менеджер».
Точка 1 — Персональный менеджер;
Точка 2 — Любой агент.

Маршрут 2 «Новые клиенты».
Точка 1 — чат-бот;
Точка 2 — Любой агент.

Кейс:
пишет клиент, у которого нет данных о персональном менеджере.
Результат:
• клиент распределяется по маршруту «Новые клиенты» на чат-бота.

Продолжение кейса:
• чат-бот получил по клиенту параметр «Персональный менеджер»;
• чат-бот переводит обращение с себя.
Результат:
• клиент распределяется по маршруту «Персональный менеджер»;
• если персональный менеджер не может принять обращение, происходит переход на следующую точку маршрута Любой агент.

Точки маршрута

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

  • Система выполняет поиск свободной сессии агентов в статусе Активен, соответствующих точке маршрута.
  • При нахождении свободной сессии в точке маршрута тред занимает ее.
  • Тред может распределиться в персональную очередь агента на любой из точек маршрута: с первой до последней.
  • Если в точке маршрута нет свободной сессии, тред перемещается в следующую точку маршрута. Если достигнута последняя точка маршрута, но свободной сессии не найдено, тред начинает прохождение маршрута повторно начиная с первой точки. Таким образом, поиск выполняется, пока тред не будет распределен на агента или чат-бота.
Если администратор не настраивает маршрут для сегмента, поиск сессии выполняется среди всех агентов.

Алгоритм поиска свободной сессии

Для поиска свободной сессии в каждой точке маршрута система использует следующий алгоритм:

  1. если не найдено ни одной свободной сессии, осуществляется переход в следующую точку маршрута;
  2. если найдена одна свободная сессия, тред занимает ее;
  3. если найдено несколько свободных сессий, выполняется поиск свободной сессии агента, который консультировал клиента последним;
    • если свободной сессии такого агента не найдено (или клиент обращается в первый раз), выполняется поиск свободной сессии агента, с максимальным числом свободных сессий. При наличии агентов с равной занятостью выполняется поиск сессии, свободной максимальное время.
Если в точке маршрута на 1 сессию могут быть распределены несколько тредов, учитываются правила:
• треды распределяются согласно приоритету сегмента — более приоритетный займет сессию раньше;
• если треды имеют равный приоритет, первым распределится тред, созданный раньше.

Чат-бот в точке маршрута

Если в точке маршрута выбран чат-бот:

  • если чат-бот не ответит клиенту в течение заданного таймаута или «откажется» от дальнейшей обработки треда (например, чат-бот завершил свой сценарий консультации или не может ответить на сообщение клиента), тред вернется в маршрут и продолжит движение по нему;
  • тред после выхода из работы чат-бота возвращается на маршрут для поиска агента. Действует такое правило: тред не может второй раз подряд быть назначен на этого же чат-бота, точка маршрута с ним игнорируется. При этом тред может быть назначен на другого бота, если он указан в маршруте.

Пример:
Настроен маршрут:
Точка 1 — чат-бот 1;
Точка 2 — чат-бот 2;
Точка 3 — навыки Оформление кредита; Справка;
Точка 4 — Любой агент.

• Тред был назначен на чат-бота 1;
• чат-бот 1 перевел обращение с себя;
• тред вернулся в маршрут;
• тред перешел в точку 2 и был назначен на чат-бота 2;
• чат-бот 2 перевел обращение с себя;
• тред перешел в точку 3, но не нашел агентов со свободными сессиями;
• тред перешел к точке 4, но не нашел агентов со свободными сессиями;
• тред возвращается к точке 3 для поиска агентов со свободными сессиями, точки 1 и 2 игнорируются, тред не назначается на чат-ботов 1 и 2.

Добавление сегментов
Cледующая статья Создание маршрутов