Omówienie routera zadań

Router zadań usług Azure Communication Services to niezawodne narzędzie przeznaczone do optymalizacji zarządzania interakcjami klientów w różnych aplikacjach komunikacyjnych. Dostępne za pośrednictwem zestawu zestawów SDK i interfejsów API, Router zadań kieruje każdą interakcję klienta lub "zadanie" do najbardziej odpowiedniego agenta lub zautomatyzowanej usługi lub "procesu roboczego" na podstawie kombinacji wstępnie zdefiniowanych reguł i zasad środowiska uruchomieniowego. Zapewnia to terminową i skuteczną reakcję na potrzeby każdego klienta, co prowadzi do poprawy zadowolenia klientów, zwiększenia wydajności i bardziej wydajnego wykorzystania zasobów.

Router zadań działa w oparciu o zestaw kluczowych pojęć, które razem tworzą bezproblemowy i wydajny system zarządzania komunikacją. Są to między innymi zadania, proces roboczy, kolejka, kanał, oferta i zasady dystrybucji. Niezależnie od tego, czy zarządza dużymi ilościami interakcji z klientami w centrum kontaktów, kierowania zapytań klientów do odpowiedniego działu w dużej organizacji, czy wydajnej obsługi żądań obsługi klienta w firmie detalicznej, router zadań może to zrobić wszystko. Gwarantuje to, że każda interakcja z klientem jest obsługiwana przez najbardziej odpowiedniego agenta lub zautomatyzowaną usługę, co prowadzi do wydajności biznesowej.

Diagram that shows the Job Router Architecture.

Router zadań jest niezależny od dowolnego kanału usług Azure Communication Services pierwotnych, pomagając deweloperom w tworzeniu kompleksowego rozwiązania komunikacji wielokanałowej. Dzięki routerowi zadań firmy mogą mieć pewność, że każda interakcja z klientem jest wydajnie obsługiwana w odpowiednim czasie i we właściwym kanale.

Kluczowe pojęcia

Zadanie

Zadanie to jednostka pracy (zapotrzebowanie), która musi być kierowana do dostępnego procesu roboczego (dostaw). Rzeczywiste wystąpienie to połączenie przychodzące lub czat w kontekście centrum telefonicznego, zaangażowania klientów lub obsługi klienta.

Cykl życia zadania

  1. Aplikacja przesyła zadanie za pośrednictwem zestawu SDK routera zadań.
  2. (Opcjonalnie) Jeśli określono zasady klasyfikacji, zadanie jest klasyfikowane, a zdarzenie JobClassified jest wysyłane za pośrednictwem usługi Event Grid.
  3. Zadanie jest dodawane do kolejki określonej lub określonej przez zasady klasyfikacji, a zdarzenie JobQueued jest wysyłane za pośrednictwem usługi Event Grid.
  4. Router zadań wyszukuje pasujące procesy robocze na podstawie selektorów etykiet i zasad dystrybucji, jeśli kolejka.
  5. Po znalezieniu zgodnego procesu roboczego zostanie wystawiona oferta , a zdarzenie o nazwie OfferIssued zostanie wysłane.
  6. Aplikacja może zaakceptować ofertę za pośrednictwem zestawu SDK, a zadanie zostanie usunięte z kolejki, a zdarzenie OfferAccepted zostanie wysłane, które zawiera assignmentIdelement .
  7. Gdy proces roboczy ukończy zadanie, zestaw SDK może służyć do jego ukończenia i zamknięcia przy użyciu polecenia assignmentId. Spowoduje to zwolnienie procesu roboczego do podjęcia następnego zadania.

Diagram that shows the Job lifecycle.

Pracownik

Proces roboczy jest dostawcą dostępnym do obsługi zadania. Jeśli używasz zestawu SDK do rejestrowania procesu roboczego w celu odbierania zadań, możesz określić:

  • Co najmniej jedna kolejka do nasłuchiwania.
  • Liczba współbieżnych zadań na kanał , który może obsłużyć proces roboczy.
  • Zestaw etykiet , których można użyć do grupowania i wybierania procesów roboczych.

Konkretnym przykładem procesu roboczego jest pracownik w scenariuszu interakcji z klientem lub centrum kontaktów.

Kolejka

Kolejka to uporządkowana lista zadań, które oczekują na obsłużenie procesu roboczego. Pracownicy rejestrują się w kolejce, aby otrzymywać z niej pracę.

Aby zilustrować koncepcję kolejki, użyjmy scenariusza centrum kontaktów, wyobraź sobie sytuację, w której wielu rozmówców jest zawieszonych do momentu, gdy przedstawiciel z odpowiednimi umiejętnościami stanie się dostępny do obsługi połączeń.

Kanał

Kanał to grupowanie zadań według określonego typu. Gdy proces roboczy rejestruje się w celu odbierania pracy, musi również określić, dla których kanałów mogą obsługiwać pracę, oraz ile z nich może obsługiwać współbieżnie. Kanały są po prostu dyskryminujące ciągi i nie są jawnie tworzone. Kanał może mieć wartość voice calls lub chats.

Dzięki przypisaniu zadań do różnych kanałów można usprawnić przepływy pracy i efektywnie przydzielać zasoby na podstawie konkretnych potrzeb lub wymagań skojarzonych z każdym kanałem.

Oferta

Oferta jest rozszerzona przez router zadań do procesu roboczego w celu obsługi określonego zadania podczas określania dopasowania. Możesz zaakceptować lub odrzucić ofertę za pomocą zestawu SDK JobRouter. Jeśli zignorujesz ofertę, wygaśnie zgodnie z czasem wygaśnięcia skonfigurowanym w zasadach dystrybucji.

Dzwonienie służy jako namacalny przykład oferty rozszerzonej do procesu roboczego i jest to wskaźnik, że interakcja ma się odbyć, sygnalizując agenta, aby szybko odpowiedzieć na połączenie i zaangażować się w rozmowę z klientem.

Przepływ akceptacji oferty

  1. Gdy router zadania znajdzie pasujący proces roboczy dla zadania, tworzy ofertę i wysyła zdarzenie o nazwie OfferIssued Event za pośrednictwem usługi Event Grid.
  2. Oferta jest akceptowana za pośrednictwem interfejsu API routera zadań.
  3. Zadanie zostanie usunięte z kolejki i przypisane do procesu roboczego.
  4. Router zadania wysyła zdarzenie OfferAccepted.
  5. Wszystkie istniejące oferty dla innych procesów roboczych dla tego samego zadania zostaną odwołane, a zdarzenie OfferRevoked zostanie wysłane.

Przepływ odrzucenia oferty

  1. Gdy router zadania znajdzie pasujący proces roboczy dla zadania, tworzy ofertę i wysyła zdarzenie o nazwie OfferIssued Event za pośrednictwem usługi Event Grid.
  2. Oferta jest odrzucana za pośrednictwem interfejsu API routera zadań.
  3. Oferta jest usuwana z procesu roboczego, otwierając pojemność dla innej oferty dla innego zadania.
  4. Router zadania wysyła zdarzenie z informacją o ofercieDeclined.
  5. Router zadań nie odroczy odrzuconej oferty dla pracownika, chyba że wyrejestruje i ponownie zarejestruje się.

Przepływ wygaśnięcia oferty

  1. Gdy router zadania znajdzie pasujący proces roboczy dla zadania, tworzy ofertę i wysyła zdarzenie o nazwie OfferIssued Event za pośrednictwem usługi Event Grid.
  2. Oferta nie jest akceptowana ani odrzucana w okresie wygasania po upływie określonego przez zasady dystrybucji.
  3. Router zadania wygaśnie ofertę, a zdarzenie OfferExpired zostanie wysłane.
  4. Proces roboczy jest uważany za niedostępny i zostanie automatycznie wyrejestrowany.
  5. Zostanie wysłane zdarzenie WorkerDeregistered.

Zasady dystrybucji

Zasady dystrybucji to zestaw konfiguracji, który kontroluje sposób dystrybucji zadań w kolejce do procesów roboczych zarejestrowanych w tej kolejce. Ta konfiguracja obejmuje:

  • Jak długo oferta jest prawidłowa, zanim wygaśnie.
  • Tryb dystrybucji, który definiuje kolejność wybierania procesów roboczych, gdy istnieje wiele dostępnych.
  • Ile ofert współbieżnych może istnieć dla danego zadania.

Tryby dystrybucji

Trzy typy trybów to

  • Działanie okrężne: Pracownicy są uporządkowane według Id i następnego pracownika po poprzednim, który otrzymał ofertę, jest wybierany.
  • Najdłuższa bezczynność: proces roboczy, który nie pracował nad zadaniem najdłużej.
  • Najlepszy proces roboczy: pracownicy, którzy najlepiej obsługują zadanie, są wybierane jako pierwsze. Logika klasyfikacji procesów roboczych można dostosować przy użyciu wyrażenia lub funkcji platformy Azure w celu porównania dwóch procesów roboczych. Zobacz przykład

Etykiety

Etykiety można dołączać do procesów roboczych, zadań i kolejek. Etykiety to pary klucz-wartość, które mogą być typami stringdanych , numberlub boolean .

Rzeczywistym przykładem jest poziom umiejętności określonego pracownika lub zespołu lub lokalizacji geograficznej.

Selektory etykiet

Selektory etykiet można dołączyć do zadania w celu kierowania podzbioru procesów roboczych w kolejce.

Na przykład w kontekście kanału czatu rozważ rzeczywisty scenariusz, w którym przychodzący komunikat czatu podlega warunekowi. Ten warunek określa, że przypisany agent musi mieć minimalny poziom wiedzy lub wiedzy dotyczącej określonego produktu. W tym przykładzie pokazano, jak selektory etykiet, podobne do filtrów, mogą być stosowane do określania podzbioru agentów w kanale czatu, którzy posiadają wymaganą biegłość w wyznaczonym produkcie.

Zasady klasyfikacji

Zasady klasyfikacji mogą służyć do programowego wybierania kolejki, określania priorytetu zadania lub dołączania selektorów etykiet procesu roboczego do zadania.

Zasady wyjątków

Zasady wyjątku kontrolują zachowanie zadania na podstawie wyzwalacza i wykonują żądaną akcję. Zasady wyjątków są dołączane do kolejki, dzięki czemu mogą kontrolować zachowanie zadań w kolejce.

Następne kroki

Dowiedz się więcej o tych kluczowych pojęciach dotyczących routera zadań

Zapoznaj się z naszymi przewodnikami