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.
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
- A sua candidatura submete um trabalho através do SDK do Job Router.
- (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.
- 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.
- O Job Router procura trabalhadores correspondentes com base em qualquer seletor de Etiqueta e na Política de Distribuição se a fila.
- Quando um Trabalhador correspondente é encontrado, uma Oferta é emitida e um Evento OfferIssued é enviado.
- 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
assignmentId
arquivo . - 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.
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
- Quando o Job Router encontra um Trabalhador correspondente para um Trabalho, ele cria uma Oferta e envia um Evento OfferIssued via Event Grid.
- A Oferta é aceite através da API do Job Router.
- O trabalho é removido da fila e atribuído ao trabalhador.
- O Job Router envia um evento OfferAccepted.
- 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
- Quando o Job Router encontra um Trabalhador correspondente para um Trabalho, ele cria uma Oferta e envia um Evento OfferIssued via Event Grid.
- A Oferta é recusada através da API do Job Router.
- A Oferta é retirada do trabalhador, abrindo capacidade para outra Oferta para um emprego diferente.
- O Job Router envia um evento OfferDecline.
- 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
- Quando o Job Router encontra um Trabalhador correspondente para um Trabalho, ele cria uma Oferta e envia um Evento OfferIssued via Event Grid.
- A Oferta não é aceite ou recusada dentro do período de Expiração definido pela Política de Distribuição.
- O Job Router expirará a Oferta e um Evento OfferExpired será enviado.
- O trabalhador é considerado indisponível e será automaticamente cancelado.
- 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 , number
ou boolean
tipos de string
dados.
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
- Como é realizada a correspondência entre tarefas e trabalhos
- Como a capacidade de trabalho é configurada
- Conceitos de Regra de Router
- Conceitos de classificação
- Modos de distribuição
- Políticas de exceção
Consulte os nossos Manuais de Procedimentos
- Gerir filas
- Como classificar um Trabalho
- Definir o destino de um trabalho preferencial
- Escalar um Trabalho
- Aceitar ou recusar um Trabalho
- Subscrever eventos
- Agendar um trabalho
- Como obter o tempo de espera estimado e a posição do trabalho
- Personalizar a classificação dos trabalhos
- Utilizar o motor de regras do Azure Function