Saltar para o conteúdo principal

Documentação oficial para extração de dados brutos do banco de dados

Este documento tem como objetivo fornecer acesso e descrição das principais estruturas de dados disponíveis para a empresa, facilitando a integração adequada, o gerenciamento e a análise de informações relacionadas às interações e agentes participantes. Além de descrever a estrutura de cada tabela, inclui recomendações e alertas sobre o manuseio responsável de dados pessoais que podem ser encontrados nos registros, destacando a importância do cumprimento das regulamentações atuais de privacidade e segurança da informação. Recomendamos a revisão cuidadosa de cada definição de campo e das notas sobre o manuseio de dados pessoais antes de iniciar qualquer processo de integração ou análise, para garantir o uso seguro e adequado do banco de dados fornecido.
Os dados apresentados são brutos e não processados.

Acessando os Dados no ClickHouse via HTTP e Ferramentas BI

Esta seção explica como se conectar ao banco de dados ClickHouse da Botslovers, seja por meio de acesso HTTP direto (por exemplo, usando curl) ou por meio de ferramentas gráficas e de Business Intelligence como DBeaver, Power BI ou Tableau.

Acesso via HTTP (exemplo usando curl)

Você pode acessar os dados executando consultas SQL diretamente no banco de dados ClickHouse por meio de sua interface HTTP. Exemplo Básico: Para recuperar os primeiros 10 registros da tabela messages_<empresa>:
curl -u user:'password' 'https://public-clickhouse.botslovers.com/?query=SELECT%20*%20FROM%20messages_company%20LIMIT%2010'
Substitua user e password pelas suas credenciais pessoais.
O parâmetro query deve ser codificado em URL.
Formatos de Resposta: Por padrão, a resposta está no formato TabSeparated. Você pode solicitar outros formatos adicionando FORMAT ao final da consulta: Exemplo JSON:
curl -u user:'password' "https://public-clickhouse.botslovers.com/?query=SELECT%20*%20FROM%20messages_company%20LIMIT%2010%20FORMAT%20JSON"
Exemplo CSV:
curl -u user:'password' "https://public-clickhouse.botslovers.com/?query=SELECT%20*%20FROM%20messages_company%20LIMIT%2010%20FORMAT%20CSV"

Acesso por Ferramentas BI ou Clientes de Banco de Dados (DBeaver, Power BI, Tableau, etc.)

O ClickHouse suporta conectores JDBC e ODBC, permitindo o uso de ferramentas gráficas para explorar e analisar os dados.

Acesso via DBeaver

  • Abra o DBeaver e crie uma nova conexão.
  • Selecione ClickHouse como tipo de banco de dados.
  • Escolha HTTP como tipo de conexão.
  • Preencha os seguintes campos:
    • Host: public-clickhouse.botslovers.com
    • Porta: 443
    • Usuário: seu nome de usuário
    • Senha: sua senha
    • SSL: habilitado (certifique-se de que a caixa esteja marcada)
  • Teste a conexão e salve.

Acesso por Ferramentas BI (Power BI, Tableau, etc.)

Power BI
  • Baixe e instale o driver ODBC oficial do ClickHouse.
  • Configure um DSN ODBC apontando para:
    • Host: public-clickhouse.botslovers.com
    • Porta: 443 (ou 8443 dependendo da configuração, verifique com o administrador)
    • Modo SSL: habilitado
    • Nome de usuário/Senha: suas credenciais
  • No Power BI, crie uma nova fonte de dados ODBC e selecione o DSN configurado.
Tableau
  • Você pode usar o driver ODBC do ClickHouse como no Power BI.
  • Alternativamente, use o conector nativo do ClickHouse.

Segurança e Boas Práticas

  • Suas credenciais são pessoais e não devem ser compartilhadas.
  • Consulte o administrador se tiver dúvidas sobre limites de uso ou estrutura de dados.
  • Recomendamos evitar consultas que extraiam grandes volumes de dados para evitar problemas de desempenho no serviço.

Tabelas

messages

Atua como o repositório central onde cada mensagem individual gerada em uma conversa é armazenada. Este documento detalha seus campos, propósito e recomendações específicas para o gerenciamento seguro de dados sensíveis.

agent_activity

Tabelas que concentram informações relevantes sobre agentes — humanos ou automatizados — participantes nas conversas. Facilitam a associação de eventos e métricas a cada agente para análise de atividade individual, cálculo de indicadores-chave (por exemplo, tempos de resposta, encerramento de sessões, disponibilidade do agente) e rastreabilidade de ações em conversas, mesmo quando ocorrem transferências.

Descrições das Tabelas

messages (Tabela: messages_<empresa>)

Armazena todas as mensagens trocadas durante as conversas.
CampoTipoDescrição
sender_idStringIdentificador único do remetente vinculando cada mensagem a uma entidade específica.
sender_typeStringOrigem da mensagem: "user", "bot", "system" ou "human".
idStringChave única de cada mensagem, garantindo detecção de duplicatas.
created_atDateTimeCarimbo de data/hora em UTC para quando a mensagem foi gerada.
channelStringCanal pelo qual a mensagem foi enviada: "whatsapp" ou "web" (widget).
sessionStringIdentificador da conversa agrupando múltiplas mensagens.
directionStringDireção da mensagem: "inbound" ou "outbound".
typeStringTipo comunicativo: "inbound" (recebida) ou "outbound" (enviada).
textStringConteúdo completo de texto livre da mensagem. Pode incluir texto, emojis, e-mails, IDs, etc.
Nota: Pode ser null para imagens ou documentos.
languageStringCódigo do idioma (ex.: "es", "en").
Nota: Pode ser null se não detectado.

agent_activity (Tabela: chat_agent_log_<empresa>)

Registra eventos que ocorrem durante a interação dos agentes com os chats.
CampoTipoDescrição
idStringIdentificador único do evento.
chat_idStringIdentificador do chat associado.
agent_idStringIdentificador único do agente envolvido no evento.
joined_atDateTimeCarimbo de data/hora UTC quando o agente entrou no chat.
left_atNullable(DateTime)Carimbo de data/hora UTC quando o agente saiu do chat, ou null se ainda estiver ativo.
eventStringTipo de evento. Valores possíveis: bot_assigned, agent_timeout, user_timeout, agent_joined, chat_escalated, manual_close, resolved, assigned_to_human, transferred.
response_ratingNullable(Int16)Avaliação dada pela interação, se houver.
created_atDateTimeCarimbo de data/hora de criação do registro.
updated_atDateTimeCarimbo de data/hora da última atualização do registro.
deleted_atNullable(DateTime)Carimbo de data/hora de exclusão lógica, se aplicável.

agent_status_logs (Tabela: agent_status_logs_<empresa>)

Rastreia o histórico de alterações de status dos agentes ao longo do tempo, como a transição de “online” para “pausa”.
CampoTipoDescrição
idStringIdentificador único da alteração de status.
agent_idStringIdentificador único do agente.
old_statusStringStatus anterior do agente: training, offline, break, ending_shift, inactive, online.
new_statusStringNovo status do agente: training, offline, break, ending_shift, inactive, online.
status_changed_atDateTimeCarimbo de data/hora UTC quando o status foi alterado.
duration_secondsNullable(Int64)Duração em segundos do status anterior, ou null se não aplicável.
created_atDateTimeCarimbo de data/hora de criação do registro.

Tratamento de Dados Pessoais

A tabela messages_, especialmente a coluna text, retém o conteúdo completo das interações dos clientes, podendo conter dados pessoais como nomes, endereços de e-mail, números de documentos ou outros detalhes sobre os produtos ou serviços oferecidos pela sua empresa.
Esses registros não foram anonimizados ou pseudonimizados para preservar o contexto completo de cada conversa e garantir a precisão da análise.
É essencial processar esses dados de acordo com as regulamentações aplicáveis, mantendo sempre a confidencialidade, a segurança e os direitos dos titulares dos dados.