🔬 Synopsis Technique
Le script apitraccar.py (Script ID : 1) est le connecteur universel API pour les environnements Traccar. Développé en Python, il utilise l’asynchronisme (concurrent.futures avec 10 workers) pour maximiser le débit de collecte. La V5.0 introduit le déclenchement en cascade automatique du moteur d’intelligence spatiale (Valhalla).
📚 Dictionnaire de Lignage (Entrées / Sorties)
Conformément à nos règles d’architecture, les exécutions Python ne pouvant exploiter le moteur en mémoire (MEMORY) de la même manière que SQL, les données sont écrites de manière persistante dans des tables de staging physiques.
-
📥 Sources (Read) :
-
API Traccar : Endpoints
/deviceset/positions. -
MySQL : Lecture de la table
assoamhd.jsmc_machinespour cibler les machines actives (devid > 0).
-
-
📤 Cibles (Write) :
-
MySQL :
assoamhd.jsmc_machines(INSERT IGNORE des nouvelles machines avecidsociete = 0pour qualification manuelle). -
MySQL : Table physique
assoamhd.agg_trajets_recap(Staging massif viaexecutemany). Insertion stricte de 10 colonnes dontdate_debut(UTC),latitude_debut,longitude_debut, et le flag crucialvalhalla_processed = '0'.
-
⚙️ Cœur Algorithmique et Sécurités
-
Paradigme « Less is More » : Exclusion volontaire de la vitesse instantanée native (transmise en nœuds marins par l’API) pour éviter le stockage d’artefacts GPS.
-
Trigger Automatique : À l’issue de l’insertion physique réussie, le script invoque un sous-processus (
subprocess.run) pour lancervalhalla.py, transmettant le lot pour enrichissement topographique immédiat. -
Hygiène Temporelle : Conversion stricte des paramètres
--startet--enden ISO 8601 UTC.
📐 Équations & Normes
Le rejet de la vitesse native par ce script prépare le terrain pour le redressement métrologique ultérieur basé sur la distance topographique réelle (et non la distance à vol d’oiseau), selon la formule qui sera appliquée par le moteur SQL :
Ce calcul, différé à l’étape suivante, garantit une conformité totale avec les exigences de précision odométrique de l’IPMVP.
