Passer au contenu principal

Documentation Index

Fetch the complete documentation index at: https://docs.lovi.ai/llms.txt

Use this file to discover all available pages before exploring further.

Documentation officielle pour l’extraction de données brutes de la base de données

Ce document vise à fournir l’accès et une description des principales structures de données disponibles pour l’entreprise afin de faciliter l’intégration, la gestion et l’analyse appropriées des informations liées aux interactions et aux agents participants. En plus de décrire la structure de chaque table, il inclut des recommandations et des avertissements concernant le traitement responsable des données personnelles pouvant être trouvées dans les enregistrements, soulignant l’importance de se conformer aux réglementations en vigueur en matière de confidentialité et de sécurité de l’information. Nous suggérons de revoir attentivement la définition de chaque champ et les notes sur le traitement des données personnelles avant de commencer tout processus d’intégration ou d’analyse afin de garantir une utilisation sûre et appropriée de la base de données fournie.
Les données présentées sont brutes et non traitées.

Accès aux Données dans ClickHouse via HTTP et Outils de BI

Cette section explique comment se connecter à la base de données ClickHouse de Botslovers, soit par un accès HTTP direct (par exemple avec curl), soit via des outils graphiques et des outils de Business Intelligence comme DBeaver, Power BI ou Tableau.

Accès via HTTP (exemple avec curl)

Vous pouvez accéder aux données en exécutant des requêtes SQL directement sur la base de données ClickHouse via son interface HTTP. Exemple Basique : Pour récupérer les 10 premiers enregistrements de la table messages_<company> :
curl -u user:'password' 'https://public-clickhouse.botslovers.com/?query=SELECT%20*%20FROM%20messages_company%20LIMIT%2010'
Remplacez user et password par vos identifiants personnels.
Le paramètre query doit être encodé en URL.
Formats de Réponse : Par défaut, la réponse est au format TabSeparated. Vous pouvez demander d’autres formats en ajoutant FORMAT à la fin de la requête : Exemple JSON :
curl -u user:'password' "https://public-clickhouse.botslovers.com/?query=SELECT%20*%20FROM%20messages_company%20LIMIT%2010%20FORMAT%20JSON"
Exemple CSV :
curl -u user:'password' "https://public-clickhouse.botslovers.com/?query=SELECT%20*%20FROM%20messages_company%20LIMIT%2010%20FORMAT%20CSV"

Accès depuis les Outils de BI ou les Clients de Base de Données (DBeaver, Power BI, Tableau, etc.)

ClickHouse prend en charge les connecteurs JDBC et ODBC, vous permettant d’utiliser des outils graphiques pour explorer et analyser les données.

Accès via DBeaver

  • Ouvrez DBeaver et créez une nouvelle connexion.
  • Sélectionnez ClickHouse comme type de base de données.
  • Choisissez HTTP comme type de connexion.
  • Remplissez les champs suivants :
    • Host : public-clickhouse.botslovers.com
    • Port : 443
    • Utilisateur : votre nom d’utilisateur
    • Mot de passe : votre mot de passe
    • SSL : activé (assurez-vous que la case est cochée)
  • Testez la connexion et enregistrez.

Accès depuis les Outils de BI (Power BI, Tableau, etc.)

Power BI
  • Téléchargez et installez le pilote ODBC officiel de ClickHouse.
  • Configurez un DSN ODBC pointant vers :
    • Host : public-clickhouse.botslovers.com
    • Port : 443 (ou 8443 selon la configuration, vérifiez avec votre administrateur)
    • Mode SSL : activé
    • Utilisateur/Mot de passe : vos identifiants
  • Dans Power BI, créez une nouvelle source de données ODBC et sélectionnez le DSN configuré.
Tableau
  • Vous pouvez utiliser le pilote ODBC de ClickHouse comme pour Power BI.
  • Alternativement, utilisez le connecteur natif ClickHouse.

Sécurité et Bonnes Pratiques

  • Vos identifiants sont personnels et ne doivent pas être partagés.
  • Consultez votre administrateur si vous avez des questions sur les limites d’utilisation ou la structure des données.
  • Nous recommandons d’éviter les requêtes qui extraient de grands volumes de données pour prévenir d’éventuels problèmes de performance du service.

Tables

messages

Sert de répertoire central où chaque message individuel généré dans une conversation est stocké. Ce document détaille ses champs, son objectif et les recommandations spécifiques pour la gestion sécurisée des données sensibles.

agent_activity

Tables qui concentrent les informations pertinentes sur les agents — humains ou automatisés — participant aux conversations. Elles facilitent l’association d’événements et de métriques à chaque agent pour l’analyse d’activité individuelle, les calculs d’indicateurs clés (ex. : temps de réponse, fermetures de sessions, disponibilité des agents) et la traçabilité des actions à travers les conversations, même lors de transferts.

Description des Tables

messages (Table : messages_<company>)

Stocke chaque message échangé pendant les conversations.
ChampTypeDescription
sender_idStringIdentifiant unique de l’expéditeur liant chaque message à une entité spécifique.
sender_typeStringOrigine du message : "user", "bot", "system" ou "human".
idStringClé unique de chaque message, assurant la détection des doublons.
created_atDateTimeHorodatage en UTC de la génération du message.
channelStringCanal par lequel le message a été envoyé : "whatsapp" ou "web" (widget).
sessionStringIdentifiant de conversation regroupant plusieurs messages.
directionStringDirection du message : "inbound" ou "outbound".
typeStringType communicatif : "inbound" (reçu) ou "outbound" (envoyé).
textStringContenu texte intégral du message. Peut inclure du texte, des emojis, des e-mails, des ID, etc.
Note : Peut être null pour les images ou documents.
languageStringCode de langue (ex. : "es", "en").
Note : Peut être null si non détecté.

agent_activity (Table : chat_agent_log_<company>)

Enregistre les événements survenant lors de l’interaction des agents avec les chats.
ChampTypeDescription
idStringIdentifiant unique de l’événement.
chat_idStringIdentifiant du chat associé.
agent_idStringIdentifiant unique de l’agent impliqué dans l’événement.
joined_atDateTimeHorodatage UTC de l’arrivée de l’agent dans le chat.
left_atNullable(DateTime)Horodatage UTC du départ de l’agent du chat, ou null si toujours actif.
eventStringType d’événement. Valeurs possibles : bot_assigned, agent_timeout, user_timeout, agent_joined, chat_escalated, manual_close, resolved, assigned_to_human, transferred.
response_ratingNullable(Int16)Note attribuée à l’interaction, le cas échéant.
created_atDateTimeHorodatage de création de l’enregistrement.
updated_atDateTimeHorodatage de la dernière mise à jour de l’enregistrement.
deleted_atNullable(DateTime)Horodatage de suppression logique, le cas échéant.

agent_status_logs (Table : agent_status_logs_<company>)

Suit l’historique des changements de statut des agents au fil du temps, comme la transition de “online” à “break”.
ChampTypeDescription
idStringIdentifiant unique du changement de statut.
agent_idStringIdentifiant unique de l’agent.
old_statusStringStatut précédent de l’agent : training, offline, break, ending_shift, inactive, online.
new_statusStringNouveau statut de l’agent : training, offline, break, ending_shift, inactive, online.
status_changed_atDateTimeHorodatage UTC du changement de statut.
duration_secondsNullable(Int64)Durée en secondes du statut précédent, ou null si non applicable.
created_atDateTimeHorodatage de création de l’enregistrement.

Traitement des Données Personnelles

La table messages_, en particulier la colonne text, conserve le contenu intégral des interactions avec les clients, pouvant contenir des données personnelles telles que des noms, adresses e-mail, numéros d’identification ou d’autres détails sur les produits ou services proposés par votre entreprise.
Ces enregistrements n’ont pas été anonymisés ni pseudonymisés afin de préserver le contexte complet de chaque conversation et garantir la précision de l’analyse.
Il est essentiel de traiter ces données conformément aux réglementations applicables, en maintenant toujours la confidentialité, la sécurité et les droits des personnes concernées.