Skip to content

Pushers (notifications) (`pushers_aggregate`)

Olivier D edited this page Apr 15, 2024 · 2 revisions

Agrégation des Pushers (pushers_aggregate)

Accessible ici dans metabase ici

Exemple de dashboard : https://stats.tchap.incubateur.net/dashboard/22-dashboard-notifications?instance=agent_dinum

Description: Cette table stocke des informations agrégées sur les configurations des pushers (mécanismes de notifications push) utilisés par les applications. Elle inclut des données sur les dispositifs des utilisateurs, les applications concernées, et l'état (activé/désactivé) des pushers, permettant une analyse détaillée de l'utilisation des notifications push à travers différentes instances et domaines.

Clé Primaire: La documentation ne spécifie pas directement une clé primaire.

Colonnes Principales:

  • user_name (VARCHAR) : identifiant anonymisé de l'utilisateur associé au pusher.
  • device_id (VARCHAR) : Identifiant anonymisé de l'appareil sur lequel le pusher est enregistré.
  • app_id (VARCHAR) : Identifiant de l'application utilisant le pusher (android, ios, email)
  • kind (VARCHAR) : Type du pusher (email ou http).
  • is_enabled (BOOLEAN) : Indique si le pusher est activé ou non.
  • instance (VARCHAR) : Instance de l'application concernée par le pusher.
  • domain (VARCHAR) : Domaine associé à l'instance de l'application.

Processus d'Insertion de Données: Défini ici

Les données sont importées dans pushers_aggregate à partir d'un fichier CSV. Ce processus est conçu pour ignorer les entrées déjà présentes dans la base de données, assurant que seules les nouvelles configurations de pushers soient ajoutées.

  • Un tableau temporaire pushers_aggregate_temp est utilisé pour importer initialement les données depuis le fichier CSV.
  • L'ordre des champs dans le fichier CSV doit correspondre à : user_name, device_id, app_id, kind, is_enabled, instance, domain. Des changements dans cet ordre nécessiteraient une adaptation de la commande d'importation.
  • La commande INSERT INTO est configurée pour exclure l'insertion d'entrées qui résulteraient en des doublons dans la table pushers_aggregate, garantissant ainsi l'intégrité des données sans introduire de redondances.