Visão geral do Job Router

O Azure Communication Services Job Router é uma ferramenta robusta projetada para otimizar o gerenciamento de interações do cliente em vários aplicativos de comunicação. Acessível por meio de um conjunto de SDKs e APIs, o Job Router direciona cada interação com o cliente, ou "trabalho", para o agente ou serviço automatizado mais adequado, ou "trabalhador", com base em uma combinação de regras e políticas pré-definidas e de tempo de execução. Isso garante uma resposta oportuna e eficaz às necessidades de cada cliente, levando a uma maior satisfação do cliente, aumento da produtividade e uso mais eficiente dos recursos.

Em sua essência, o Job Router opera em um conjunto de conceitos-chave que, juntos, criam um sistema de gerenciamento de comunicação contínuo e eficiente. Estes incluem Trabalho, Trabalhador, Fila, Canal, Oferta e Política de Distribuição. Seja gerenciando grandes volumes de interações com clientes em um contact center, roteando consultas de clientes para o departamento certo em uma grande organização ou lidando com eficiência com solicitações de atendimento ao cliente em um negócio de varejo, o Job Router pode fazer tudo. Ele garante que cada interação com o cliente seja tratada pelo agente mais adequado ou serviço automatizado, levando à eficiência do negócio.

Diagram that shows the Job Router Architecture.

O Job Router é agnóstico a qualquer primitivo de canal dos Serviços de Comunicação do Azure, ajudando os desenvolvedores a criar uma solução de comunicação omnichannel abrangente. Com o Job Router, as empresas podem garantir que cada interação com o cliente seja tratada de forma eficiente, no momento certo e no canal certo.

Conceitos-chave

Tarefa

Um Emprego é uma unidade de trabalho (procura), que deve ser encaminhada para um Trabalhador disponível (oferta). Uma instância real seria uma chamada recebida ou um bate-papo no contexto de um call center, envolvimento do cliente ou suporte ao cliente.

Ciclo de vida do trabalho

  1. A sua candidatura submete um trabalho através do SDK do Job Router.
  2. (Opcional) Se você especificou uma Política de Classificação, o Trabalho será classificado e um Evento JobClassified será enviado por meio da Grade de Eventos.
  3. O Job é adicionado à fila que você especificou ou que foi determinada pela Política de Classificação, e um JobQueued Event é enviado via Event Grid.
  4. O Job Router procura trabalhadores correspondentes com base em qualquer seletor de Etiqueta e na Política de Distribuição se a fila.
  5. Quando um Trabalhador correspondente é encontrado, uma Oferta é emitida e um Evento OfferIssued é enviado.
  6. Seu aplicativo pode aceitar a Oferta por meio do SDK e o Trabalho será removido da fila e um Evento OfferAccepted será enviado contendo um assignmentIdarquivo .
  7. Depois que o trabalhador tiver concluído o trabalho, o SDK poderá ser usado para concluí-lo e fechá-lo, usando o assignmentId. Isso liberará o Trabalhador para assumir o próximo Trabalho.

Diagram that shows the Job lifecycle.

Trabalhador

Um Trabalhador é a fonte disponível para lidar com um Trabalho. Ao usar o SDK para registrar um trabalhador para receber trabalhos, você pode especificar:

  • Uma ou mais filas para ouvir.
  • O número de trabalhos simultâneos por canal que o trabalhador pode manipular.
  • Um conjunto de Etiquetas que pode ser utilizado para agrupar e selecionar trabalhadores.

Um exemplo concreto de um trabalhador seria um agente humano em um cenário de interação com o cliente ou contact center.

Fila

Uma fila é uma lista ordenada de trabalhos que estão esperando para serem atendidos a um trabalhador. Os trabalhadores se registram em uma fila para receber trabalho.

Para ilustrar o conceito de fila, vamos usar um cenário de contact center, imagine uma situação em que vários chamadores são colocados em espera até que um representante, com as habilidades certas, fique disponível para lidar com suas chamadas.

Canal

Um canal é um agrupamento de trabalhos por algum tipo. Quando um trabalhador se registra para receber trabalho, ele também deve especificar para quais canais eles podem lidar com o trabalho e quanto de cada um eles podem lidar simultaneamente. Os canais são apenas um discriminador de cadeia de caracteres e não são criados explicitamente. Um canal pode ser voice calls ou chats.

Ao atribuir trabalhos a diferentes canais, torna-se possível simplificar fluxos de trabalho e alocar recursos de forma eficiente com base nas necessidades ou requisitos específicos associados a cada canal.

Oferecer

Uma Oferta é estendida pelo Job Router a um trabalhador para lidar com um trabalho específico quando ele determina uma correspondência. Você pode aceitar ou recusar a oferta com o SDK do JobRouter. Se você ignorar a oferta, ela expirará de acordo com o tempo de vida configurado na Política de Distribuição.

O toque serve como um exemplo tangível de uma oferta estendida a um trabalhador, e é um indicador de que uma interação está prestes a ocorrer, sinalizando ao agente para atender a chamada prontamente e se envolver em uma conversa com o cliente.

Fluxo de aceitação da oferta

  1. Quando o Job Router encontra um Trabalhador correspondente para um Trabalho, ele cria uma Oferta e envia um Evento OfferIssued via Event Grid.
  2. A Oferta é aceite através da API do Job Router.
  3. O trabalho é removido da fila e atribuído ao trabalhador.
  4. O Job Router envia um evento OfferAccepted.
  5. Quaisquer ofertas existentes para outros trabalhadores para este mesmo trabalho serão revogadas e um Evento OfertaRevogado será enviado.

Fluxo de declínio de oferta

  1. Quando o Job Router encontra um Trabalhador correspondente para um Trabalho, ele cria uma Oferta e envia um Evento OfferIssued via Event Grid.
  2. A Oferta é recusada através da API do Job Router.
  3. A Oferta é retirada do trabalhador, abrindo capacidade para outra Oferta para um emprego diferente.
  4. O Job Router envia um evento OfferDecline.
  5. O Job Router não voltará a oferecer a Oferta recusada ao trabalhador, a menos que este cancele o registo e volte a registar-se.

Fluxo de expiração da oferta

  1. Quando o Job Router encontra um Trabalhador correspondente para um Trabalho, ele cria uma Oferta e envia um Evento OfferIssued via Event Grid.
  2. A Oferta não é aceite ou recusada dentro do período de Expiração definido pela Política de Distribuição.
  3. O Job Router expirará a Oferta e um Evento OfferExpired será enviado.
  4. O trabalhador é considerado indisponível e será automaticamente cancelado.
  5. Um evento WorkerDeregistered será enviado.

Política de Distribuição

Uma Política de Distribuição é um conjunto de configurações que controla como os trabalhos em uma fila são distribuídos aos trabalhadores registrados nessa fila. Esta configuração inclui:

  • Por quanto tempo uma Oferta é válida antes de expirar.
  • O modo de distribuição, que define a ordem na qual os trabalhadores são escolhidos quando há vários disponíveis.
  • Quantas ofertas simultâneas podem existir para um determinado emprego.

Modos de distribuição

Os três tipos de modos são:

  • Round Robin: Os trabalhadores são encomendados e Id o próximo trabalhador após o anterior que recebeu uma oferta é escolhido.
  • Ocioso mais longo: O trabalhador que não trabalha em um emprego há mais tempo.
  • Melhor trabalhador: Os trabalhadores mais capazes de lidar com o trabalho são escolhidos primeiro. A lógica para classificar Trabalhadores pode ser personalizada, com uma expressão ou função do Azure para comparar dois trabalhadores. Ver exemplo

Etiquetas

Você pode anexar rótulos a trabalhadores, trabalhos e filas. Os rótulos são pares de valores-chave que podem ser de , numberou boolean tipos de stringdados.

Um exemplo do mundo real é o nível de habilidade de um determinado trabalhador ou da equipe ou localização geográfica.

Seletores de rótulos

Os seletores de rótulos podem ser anexados a um trabalho para direcionar um subconjunto de trabalhadores na fila.

Como exemplo, no contexto de um canal de chat, considere um cenário do mundo real em que uma mensagem de chat recebida está sujeita a uma condição. Esta condição especifica que o agente atribuído deve ter um nível mínimo de especialização ou conhecimentos relativos a um determinado produto. Este exemplo destaca como seletores de rótulos, semelhantes a filtros, podem ser empregados para direcionar um subconjunto de agentes dentro do canal de chat que possuem a proficiência necessária no produto designado.

Política de classificação

Uma política de classificação pode ser usada para selecionar programaticamente uma fila, determinar a prioridade do trabalho ou anexar seletores de rótulo de trabalhador a um trabalho.

Política de exceção

Uma política de exceção controla o comportamento de um Trabalho com base em um gatilho e executa uma ação desejada. A política de exceção é anexada a uma Fila para que possa controlar o comportamento de Trabalhos na Fila.

Próximos passos

Saiba mais sobre estes conceitos-chave do Job Router

Consulte os nossos Manuais de Procedimentos