Dokos intègre un système de télémétrie anonyme et optionnel pour collecter des données d'utilisation. Ces informations aident l'équipe Dokos à comprendre comment les utilisateurs interagissent avec le système et à améliorer les fonctionnalités en conséquence.
La télémétrie est désactivée par défaut. Pour l'activer :
⚠️ Important : Aucune donnée n'est collectée sans votre consentement explicite.
Les événements de télémétrie peuvent être étendus ou modifiés via des hooks Python. Voici comment ajouter un nouvel événement :
# Dans votre fichier hooks.py
from frappe.utils.telemetry import capture
def after_install():
capture(
event_name="custom_event_triggered",
properties={
"custom_property": "valeur_exemple",
"site_age_days": frappe.utils.date_diff(frappe.utils.nowdate(), frappe.db.get_value("System Settings", None, "creation"))
}
)
Vous pouvez désactiver la télémétrie pour certains environnements ou utilisateurs en utilisant un hook :
# Dans votre fichier hooks.py
def validate_telemetry():
if frappe.local.site == "site_de_test":
frappe.db.set_value("System Settings", None, "enable_telemetry", 0)
Dokos utilise frappe.utils.telemetry qui peut être configuré pour envoyer les données vers PostHog ou Pulse. Pour configurer l'endpoint :
# Dans site_config.json
{
"telemetry": {
"posthog": {
"api_key": "votre_clé_api_posthog",
"host": "https://app.posthog.com"
}
}
}
Le module HRMS de Dokos inclut une télémétrie spécialisée pour analyser l'utilisation des fonctionnalités RH. Voici les événements spécifiques capturés :
leave_application_submitted : Soumission d'une demande de congéexpense_claim_submitted : Soumission d'une note de fraisattendance_marked : Enregistrement d'une présenceshift_assignment : Assignation d'un planningshift_swap_requested : Demande d'échange de quart (via l'application mobile)Ces événements sont capturés une seule fois pendant les 30 premiers jours suivant l'installation :
first_employee_created : Création du premier employéfirst_shift_type_created : Configuration du premier type de planningfirst_salary_structure_created : Création de la première structure salarialefirst_salary_slip_generated : Génération du premier bulletin de paiefirst_payroll_entry_created : Lancement du premier cycle de paiefirst_job_opening_created : Création de la première offre d'emploifirst_performance_review_created : Création de la première évaluation de performancehr_workspace_viewed : Consultation d'un espace de travail RHhr_list_viewed : Ouverture d'une liste RH (ex: Liste des employés)hr_form_opened : Ouverture d'un formulaire RH (ex: Fiche employé)hr_report_viewed : Consultation d'un rapport RH (limité aux rapports des modules RH et Paie)Un événement attendance_daily_summary est généré quotidiennement avec les propriétés suivantes :
total_checkins : Nombre total de pointagesparticipation_rate : Taux de participation (0-1)weekday_distribution : Répartition des pointages par jour de la semainefrappe.utils.telemetrySi vous observez des événements dupliqués, vérifiez que vos hooks ne déclenchent pas plusieurs fois la capture d'événements. Utilisez des décorateurs comme @frappe.whitelist() pour éviter les déclenchements multiples.