Métricas de SLA
Os Relatórios históricos do Flex Insight permitem gerar relatórios sobre SLA de várias maneiras que podem ser combinadas, dependendo das necessidades da organização.
Alto nível
O Insights fornece uma definição muito básica de SLA por padrão. A definição do SLA é a mesma para todos os clientes e é aplicada em todas as filas, canais etc. O motivo disso é que a métrica de SLA está sujeita a atualizações e qualquer alteração personalizada seria substituída por futuras atualizações no conteúdo integrado.
A linguagem analítica oferece uma flexibilidade incrível na maneira como o SLA é definido em uma organização ou unidades organizacionais individuais. Graças ao suporte de linguagem analítica para métricas aninhadas, é fácil criar o cálculo de SLA a partir de módulos básicos simples e torná-lo tão unificado ou específico quanto necessário.
Alterar as preferências de SLA
Adequado para contact centers menores com foco em canal único e com um padrão SLA.
A métrica de SLA integrada tem duas preferências que podem ser ajustadas por meio da solicitação de suporte enviada para support@twilio.com. Essas alterações se aplicam a todas as conversas e não são específicas para filas individuais, canais ou outros atributos.
Prós:
- Muito fácil de configurar
- Não requer a criação de métricas personalizadas
Contras:
- Aplica o mesmo cálculo de SLA em todas as conversas
Preferências |
Valor padrão (em segundos) |
Descrição |
Limite de SLA |
60 |
Todas as conversas processadas dentro desse limite são consideradas dentro do SLA. Este é o valor padrão apenas em Relatórios Históricos. O valor padrão pode ser diferente para o monitoramento da fila em tempo real. |
Limite de abandono curto |
5 |
As chamadas abandonadas abaixo desse limite não afetam negativamente o SLA. Este é o valor padrão apenas em Relatórios Históricos. O valor padrão pode ser diferente para o monitoramento da fila em tempo real. |
Métricas de SLA personalizadas para uma unidade organizacional
Adequado para grandes organizações onde departamentos individuais, equipes ou outras unidades organizacionais desejam observar o SLA de maneira diferente e independente em outras unidades. Cada unidade pode definir sua própria maneira de calcular o SLA.
Você pode definir SLAs personalizados para filas individuais, canais ou casos de uso específicos. Existem métricas personalizadas que você pode criar em uma linguagem analítica amigável aos negócios.
Prós:
- Requer apenas habilidades básicas na linguagem analítica
- Muito flexível
- Qualquer métrica ou atributo interno pode ser usado no cálculo do SLA
- Os clientes podem fornecer métricas e atributos adicionais por meio dos atributos de tarefa do TaskRouter que podem ser usados no cálculo do SLA
Contras:
- Podem existir várias definições de SLA
Exemplo: métrica personalizada para discador de saída
Exemplo de SLA personalizado usado para gerar relatórios sobre uma implementação personalizada do discador de saída para garantir que nossos agentes os tratem dentro de restrições legais.
Exemplo de métrica na qual dizemos que todas as chamadas outbound iniciadas por um discador estão incluídas no cálculo do SLA:
Segmentos sujeitos a SLA de saída = SELECT Segments WHERE Direction = (Outbound) AND Initiated By = Dialer
Métrica para segmentos que estão dentro do SLA:
Segmentos dentro do SLA = SELECT Segments WHERE Waiting Time < 5 AND Direction = (Outbound) AND Initiated By = Dialer
Métrica que fornece o SLA real com base nas métricas anteriores:
SLA de saída = SELECT Segments within SLA / Segments Subject to SLA
Métrica de SLA personalizada para toda a organização
Adequada para grandes organizações nas quais você deseja monitorar todos os departamentos, equipes ou outras unidades organizacionais usando uma única métrica.
Por conveniência na geração de relatórios, muitos clientes optam por ter uma única métrica SLA que se adapta com base nas conversas que são usadas. Um dos exemplos é
Prós:
- Uma métrica que pode ser usada em toda a organização
- Muito flexível
- Qualquer métrica ou atributo interno pode ser usado no cálculo do SLA
- Os clientes podem fornecer métricas e atributos adicionais por meio dos atributos de tarefa do TaskRouter que podem ser usados no cálculo do SLA
Contras:
- A definição de SLA é mais complexa e requer colaboração entre as unidades organizacionais
Exemplo: SLA baseado em fila e canal
Neste exemplo, usamos diferentes limites para a fila VIP, onde nossos clientes mais importantes chegam, usamos 60 segundos de espera como meta para todas as chamadas e deixamos 3 minutos (180 segundos) como meta para qualquer outro cenário, normalmente outros canais.
Métricas para ajustar o tempo de espera de destino com base na fila e no canal:
Limite de SLA = SELECT CASE
WHEN Queue = VIP THEN 30,
WHEN Channel = Call THEN 60,
ELSE 180 END
Métricas para ajustar abandonos curtos com base na fila e no canal:
Limite de abandono curto = SELECT CASE
WHEN Queue = VIP THEN 5,
WHEN Channel = Call THEN 20,
ELSE 30 END
Podemos estruturar o cálculo do SLA para facilitar a leitura e a manutenção. A primeira métrica contando os segmentos que estão sujeitos ao SLA:
Segmentos sujeitos a SLA = SELECT Segments WHERE Waiting Time > Short Abandoned Threshold OR Abandoned = No
Métrica para segmentos que estão dentro do SLA:
Segmentos dentro do SLA = SELECT Segments WHERE Waiting Time < SLA Threshold
Métrica que fornece o SLA real com base nas métricas anteriores:
SLA = SELECT Segments within SLA / Segments Subject to SLA
Gerenciamento programável do nível de serviço
O gerenciamento programável do nível de serviço é a opção mais flexível. A opção é adequada para ambientes onde as condições para decidir se uma conversa foi processada dentro do SLA ou não dependem de fatores muito dinâmicos.
Prós:
- Extremamente flexível
- O cálculo do SLA pode ser influenciado por fatores dinâmicos e evoluir ao longo do tempo
- As definições de métricas no Flex Insights exigem habilidade limitada e nenhum ajuste depois de definido pela primeira vez
Contras:
- Requer a definição programática dos atributos do Twilio TaskRouter e, portanto, das habilidades de desenvolvimento
- As alterações podem exigir desenvolvimento
Transmitir informações nos atributos do TaskRouter
O Flex Insights consome atributos de tarefas de conversa que podem conter um amplo conjunto de informações fornecidas pelo cliente de forma programática. O nível de serviço de atributo está disponível para que os clientes forneçam informações relacionadas ao SLA.
Os clientes programaticamente definem o atributo para o valor desejado em sua implementação. A implementação pode usar qualquer informação disponível para decidir qual valor será definido.
"task_attributes": {
"conversations": {
"service_level": "Compliant"
}
}
O valor do atributo não é restrito e pode conter qualquer texto. Os valores de exemplo usados pelos clientes são os seguintes:
Valor |
Descrição |
Em conformidade |
A conversa foi processada no nível de serviço ou abandonada em um período que conta como no nível de serviço. |
Com falha |
A conversa não foi processada em um nível de serviço. |
Abandonos curtos |
A conversa é considerada abandonada e não deve ter um impacto negativo no SLA. |
Não aplicável |
A conversa não deve influenciar o SLA de forma alguma. |
Os valores possíveis acima são apenas exemplos. Você pode nomear os valores de forma diferente ou usar mais valores para obter mais granularidade, como ter vários níveis para metas de SLA.
Métricas personalizadas
Você pode criar métricas personalizadas com base no atributo Nível de serviço. Essas métricas podem ser baseadas apenas no atributo Nível de serviço ou combiná‐las com qualquer outra condição.
Métrica que fornece o número de segmentos usado como base para o cálculo do SLA. Você pode decidir quais categorias deseja excluir:
Segmentos sujeitos a SLA = SELECT Segments WHERE Service Level NOT IN (Not Applicable, Short Abandoned)
Métrica que fornece o número de segmentos que estão dentro do SLA:
Segmentos dentro do SLA = SELECT Segments WHERE Service Level IN (Compliant)
Métrica que fornece o SLA real com base nas métricas anteriores:
SLA = SELECT Segments within SLA / Segments Subject to SLA
Uso das métricas personalizadas
As métricas personalizadas podem ser usadas como métricas integradas para criar relatórios e dashboards usando o criador de relatórios e dashboards do tipo arrastar e soltar.
Métricas de SLA na exibição de filas
Este recurso está disponível na versão pública beta e em @twilio/flex-ui@1.27.0 ou posterior.
Colunas QueuesDataTable
O recurso de métricas SLA adiciona colunas extras a Flex.QueuesStats.QueuesDataTable
com as seguintes chaves:
-
sla-30min
sla-today
-
handled-tasks-30min
handled-tasks-today
-
abandoned-tasks-30min
abandoned-tasks-today
As métricas de SLA são calculadas para dois períodos: a última janela flutuante de 30 minutos e o dia útil atual.
Há mais métricas disponíveis do que as exibidas por padrão. Veja abaixo a lista completa de métricas e instruções sobre como adicioná‐las à tabela.
Acessar métricas de SLA de maneira programática
O objeto de dados WorkerQueue
é estendido com as chaves sla_30_min
e sla_today
que contêm todas as métricas de SLA para a fila. WorkerQueueSLA
inclui as seguintes métricas:
total_tasks_count
handled_tasks_count
handled_tasks_within_sl_threshold_count
handled_tasks_within_sl_threshold_percentage
short_abandoned_tasks_count
short_abandoned_tasks_percentage
abandoned_tasks_count
abandoned_tasks_percentage
flow_out_tasks_count
flow_out_tasks_percentage
sla_percentage
Se uma fila lida com vários channels, os dados do SLA também estarão disponíveis por canal. A chave channels
em WorkerQueue
contém uma matriz de WorkerQueueChannel
, que tem as seguintes chaves:
sid
unique_name
friendly_name
sla_30_min
(WorkerQueueSLA
)sla_today
(WorkerQueueSLA
)
workerQueue.channels[0].sla_30_min.total_tasks_count
Exemplo: adicionar colunas SLA a dados de filas
O trecho a seguir adiciona duas colunas à tabela QueuesDataTable
que mostra o número de tarefas abandonadas curtas nos últimos 30 minutos e no dia. Ele usa QueuesDataTableCell
na função de renderização de conteúdo para adicionar linhas expansíveis extras de dados específicos do canal.
const RenderShortAbandoned30Min = (workerQueue: Flex.QueuesStats.WorkerQueue) =>
// QueuesDataTableCell component helps us render additional expandable rows with channel specific data
<Flex.QueuesStats.QueuesDataTableCell
// Pass the queue data down
queue={workerQueue}
// Render the queue level value
renderQueueData={(queue) => queue.sla_30_min.short_abandoned_tasks_count}
// Render a value for each active channel in the queue
renderChannelData={(channel, queue) => channel.sla_30_min.short_abandoned_tasks_count}
/>
const RenderShortAbandonedToday = (workerQueue: Flex.QueuesStats.WorkerQueue) =>
<Flex.QueuesStats.QueuesDataTableCell
queue={workerQueue}
renderQueueData={(queue) => queue.sla_today.short_abandoned_tasks_count}
renderChannelData={(channel, queue) => channel.sla_today.short_abandoned_tasks_count}
/>
Flex.QueuesStats.QueuesDataTable.Content.add(
<Flex.ColumnDefinition
key="short-abandoned-30min"
header="Short Abandoned"
// Since our columns have the same header, we can set
// the same headerColSpanKey on both to merge their headers.
headerColSpanKey="short-abandoned"
subHeader="30 min"
content={RenderShortAbandoned30Min}
/>
);
Flex.QueuesStats.QueuesDataTable.Content.add(
<Flex.ColumnDefinition
key="short-abandoned-today"
header="Short Abandoned"
headerColSpanKey="short-abandoned"
subHeader="Today"
content={RenderShortAbandonedToday}
/>
);
Consulte a página Programação de exibição de filas para obter mais informações.
Precisa de ajuda?
Às vezes, todos nós precisamos; a programação é difícil. Receba ajuda agora da nossa equipe de suporte, ou confie na sabedoria da multidão navegando pelo Stack Overflow Collective da Twilio ou buscando a tag Twilio no Stack Overflow.