Passar para o conteúdo principal

csr_time_events

Escrito por Caroline Silva

Introdução

A tabela csr_time_events armazena as janelas de tempo de cada atendimento, do modelo antigo (legado) do Headless BI: os períodos em que o atendimento ficou com um atendente, com o bot ou na fila de um time, com o tempo de espera e de atendimento de cada período. Ela não aparece com o nome csr_time_events: o nome real leva o código da loja, como csr_time_events_abc123xyz, dentro da pasta client_legacy_abc123xyz. Cada linha é uma janela de um atendimento. Com dados atualizados a cada 30 minutos, entre 6h e 22h (horário de Brasília); de madrugada não há atualização.


​Exemplo

Um atendimento que começa com um atendente e é transferido para outro time gera uma linha por janela, todas com o mesmo csr_id:


• Janela 1: start_at às 10:00, replied_at às 10:02 e end_at às 10:30, com user_id preenchido. waitingTime = 120000 (2 minutos) e attendenceTime = 1680000 (28 minutos, da resposta até o fim).


• Janela 2: o atendimento entra na fila do time às 10:30, com team_id preenchido e user_id vazio.


• Janela 3: um atendente do novo time assume às 10:30 e responde às 10:41, então waitingTime = 660000 (11 minutos). Enquanto o atendimento continua aberto, end_at e attendenceTime ficam vazios.


Os tempos estão em milissegundos e chegam como texto: converta antes de somar (ex.: cast(tb.waitingTime as bigint) / 60000 para ver em minutos). Quando a janela termina sem resposta, waitingTime vai do início ao fim da janela e attendenceTime fica 0.


A tabela não tem uma coluna de ordem dos eventos: ordene as janelas de um atendimento por start_at. As colunas status, closingReason, contacted_at e finished_at são do atendimento e se repetem em todas as janelas dele. As janelas incluem o bot e a fila do time (user_id vazio); para ver só o atendimento humano, cruze user_id com a tabela dim_user e filtre is_bot = false.


Use sempre o filtro de partição year_month, no formato AAAAMM (ex.: year_month = 202610). A mesma loja também tem, no modelo atual, a tabela fact_time_events_csr, com as janelas dos mesmos atendimentos.

Evento extraído da tabela csr (CustomerSupportRequest).

Atenção: Os registros desta tabela utilizam o fuso horário UTC, ou seja, para que as datas sejam referentes ao fuso horário brasileiro, é preciso inserir nas queries o fuso horário brasileiro.

Ex:

SET TIME ZONE '-03:00'

Dicionário de dados

Variável

Tipo

Descrição

csr_id

string

id do atendimento (csr)

created_at

timestamp

Data de criação do Atendimento

chat_id

string

identificador do chat

start_at

timestamp

Início da janela do evento do atendimento

end_at

timestamp

Fim da janela do evento do atendimento

replied_at

timestamp

Data da 1° resposta da janela de eventos do atendimento

team_id

string

Id do time do usuário

teamFetched

string

Json (Dados completos do time)

user_id

string

identificador do usuário que fez o atendimento

userFetched

string

Json (Dados completos do usuário)

replied_by_id

string

Id do usuário que respondeu o atendimento

repliedByFetched

String

Json (Dados do usuário que respondeu o atendimento)

waitingTime

bigint

Tempo de espera total da janela de eventos do atendimento (milisegundos)

attendenceTime

bigint

Tempo de atendimento total da janela de eventos do atendimento (milisegundos)

waitingTimeAttendenceHours

bigint

Tempo de espera total da janela de eventos do atendimento, considerando o horário de atendimento (milisegundos)

attendenceTimeAttendenceHours

bigint

Tempo de espera total da janela de eventos do atendimento, considerando o horário de atendimento (milisegundos)

tradingHours

string

Horário de atendimento configurado

status

string

status do atendimento

closingReason

string

motivo de finalização do atendimento

contacted_at

timestamp

Data que o vendedor atendeu.

contacted_by_id

string

Identificador do usuário que fez o atendimento

contactedByFetched

string

Json (Dados completo do usuário / time que fez o atendimento)

finished_at

timestamp

Data de finalização do atendimento

finished_by_id

string

Identificador do usuário que finalizou o atendimento

finishedByFetched

string

Json (Dados completo do finalizador do atendimento)

assigned_to_team_id

string

identificador do time que o atendimento está relacionado

assignedToTeamFetched

string

Json (Dados completos do time)

origin

string

Origem da mensagem

created_date

string

Data truncada yyyy-mm-dd retirada do campo created_at

Part0

year_month int

Ao fazer uma consulta nessa base, deve-se sempre utilizar a partition — campo year_month no formato YYYYMM, ex: 202207.

Respondeu à sua pergunta?