Обзор маршрутизатора заданий

Службы коммуникации Azure Маршрутизатор заданий — это надежное средство, предназначенное для оптимизации управления взаимодействием с клиентами в различных приложениях связи. Доступный через набор пакетов SDK и API, маршрутизатор заданий направляет каждое взаимодействие клиента или "задание", в наиболее подходящий агент или автоматизированную службу, или "рабочую роль", основанный на сочетании предварительно определенных правил и политик среды выполнения. Это обеспечивает своевременное и эффективное реагирование на потребности каждого клиента, что приводит к повышению удовлетворенности клиентов, повышению производительности и более эффективному использованию ресурсов.

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

Diagram that shows the Job Router Architecture.

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

Основные понятия

Работа

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

Жизненный цикл задания

  1. Приложение отправляет задание с помощью пакета SDK маршрутизатора заданий.
  2. (Необязательно) Если вы указали политику классификации, задание классифицируется, а событие JobClassified отправляется через сетку событий.
  3. Задание добавляется в очередь, указанную или определяемую политикой классификации, и событие JobQueued отправляется через сетку событий.
  4. Маршрутизатор заданий ищет соответствующих работников на основе любых селекторов меток и политики распространения, если очередь.
  5. При обнаружении соответствующего рабочего элемента выдается предложение и отправляется событие OfferIssued.
  6. Ваше приложение может принять предложение с помощью пакета SDK, и задание будет удалено из очереди, а событие OfferAccepted будет отправлено, содержащее объект assignmentId.
  7. После завершения задания пакет SDK можно использовать для завершения и закрытия задания с помощью пакета assignmentIdSDK. Это позволит рабочей роли взять на себя следующее задание.

Diagram that shows the Job lifecycle.

Рабочий

Рабочая роль — это предложение, доступное для обработки задания. При использовании пакета SDK для регистрации рабочей роли для получения заданий можно указать:

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

Конкретный пример работника — это человеческий агент в сценарии взаимодействия с клиентом или контактного центра.

Очередь

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

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

Канал

Канал — это группирование заданий по некоторым типам. Когда рабочие регистры для получения работы, они также должны указать, для каких каналов они могут обрабатывать работу, и сколько из них может обрабатываться одновременно. Каналы являются только строковыми дискриминационными и не создаются явным образом. Канал может быть voice calls или chats.

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

ПРЕДЛОЖЕНИЕ

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

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

Поток принятия предложения

  1. Когда маршрутизатор заданий находит соответствующую рабочую роль для задания, он создает предложение и отправляет событие OfferIssued через сетку событий.
  2. Предложение принимается через API маршрутизатора заданий.
  3. Задание удаляется из очереди и назначается рабочей роли.
  4. Маршрутизатор заданий отправляет событие OfferAccepted.
  5. Все существующие предложения другим работникам для этого же задания будут отменены, и будет отправлено событие OfferRevoked.

Поток отклонения предложения

  1. Когда маршрутизатор заданий находит соответствующую рабочую роль для задания, он создает предложение и отправляет событие OfferIssued через сетку событий.
  2. Предложение отказывается через API маршрутизатора заданий.
  3. Предложение удаляется из рабочей роли, открывая емкость для другого предложения для другого задания.
  4. Маршрутизатор заданий отправляет событие OfferDeclined.
  5. Маршрутизатор заданий не будет повторно отправлять отклоненное предложение рабочей роли, если они не отменяют регистрацию и повторно регистрируются.

Поток срока действия предложения

  1. Когда маршрутизатор заданий находит соответствующую рабочую роль для задания, он создает предложение и отправляет событие OfferIssued через сетку событий.
  2. Предложение не принимается или отклоняется в течение периода истечения срока действия, определенного политикой распространения.
  3. Маршрутизатор заданий истекает срок действия предложения, а событие OfferExpired будет отправлено.
  4. Рабочий элемент считается недоступным и будет автоматически дерегистрирован.
  5. Будет отправлено событие WorkerDeregistered.

Политика распространения

Политика распространения — это набор конфигурации, который управляет распределением заданий в очереди для рабочих ролей, зарегистрированных в этой очереди. Эта конфигурация содержит:

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

Режимы распределения

Три типа режимов:

  • Раунд Робин: Рабочие заказаны Id и следующий работник после предыдущего, который получил предложение выбирается.
  • Самый длинный бездействия: работник, который не работал над работой на протяжении длительного времени.
  • Лучший работник: работники, которые лучше всего могут справиться с заданием, сначала выбираются. Логику для ранжирования рабочих ролей можно настроить с помощью выражения или функции Azure для сравнения двух рабочих ролей. Ознакомьтесь с примером ниже

Наклейки

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

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

Селекторы меток

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

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

Политика классификации

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

Политика исключений

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

Следующие шаги

Дополнительные сведения об этих основных понятиях маршрутизатора заданий

Ознакомьтесь с нашими практическими руководствами