INGESTION · NORMALISATION · PROVENANCE
Un connecteur commun pour plusieurs fournisseurs
Il n’est pas nécessaire de négocier un accès avec chaque aéroport. Un fournisseur agrégé peut couvrir de nombreux aéroports et compagnies dans un seul flux. Des connecteurs directs peuvent compléter sa couverture là où les droits et les données le permettent.
Chaque donnée garde son origine
Les faits sont conservés séparément par vol, champ et source. Un désaccord entre fournisseurs reste visible. Aucun statut n’est déduit d’une position ADS-B ni de l’absence d’un enregistrement.
- Confirmé par l’aéroport — émis par une source déclarée comme autorité aéroportuaire.
- Fourni par la compagnie — émis par une source déclarée comme compagnie.
- Fourni par un fournisseur — communiqué par un agrégateur sous sa propre autorité.
- Estimation — explicitement marqué estimé par la source.
- Observé — observation capteur, par exemple une position ADS-B; ce n’est pas un horaire confirmé.
Chaque fait conserve aussi l’URL, la licence, l’attribution, l’identifiant fournisseur, l’heure de mise à jour source, l’heure de collecte, l’expiration et l’empreinte SHA-256 de l’enregistrement. La réponse précise les champs non fournis et signale les données périmées.
Brancher un flux
- Choisir un flux agrégé couvrant les pays prioritaires et vérifier contractuellement les champs, marchés, usages et droits d’affichage ou de redistribution.
- Enregistrer le fournisseur et sa licence dans le registre versionné des sources. Son autorité déclarée limite les niveaux de confirmation que le connecteur peut publier.
- Mapper les chemins JSON du fournisseur au format
json_facts_v1dansoperational-connectors.json. Définir un délai de validité pour chaque champ. - Mettre la clé bearer dans un fichier du répertoire de secrets monté en lecture seule. Seul son nom est référencé par la configuration; la clé reste hors de Git, PostgreSQL, des URLs et des réponses API.
- Déployer l’image testée par digest. Le poller lit les connecteurs toutes les 60 secondes. Les verrous en base empêchent deux workers d’appeler simultanément le même flux.
Disponibilité actuelle
Les sources opérationnelles autorisées restent prioritaires. Si elles ne couvrent pas la requête, SearXNG interroge dix moteurs sur deux pages et jusqu’à trois stratégies de recherche; il peut retourner douze liens et extraits HTTPS comme pistes non vérifiées. Il ne récupère pas les pages, n’invente pas d’heures et n’enregistre pas ces résultats comme faits confirmés.
Le résolveur utilise une instance SearXNG dédiée au CT Aviation, reliée uniquement à l’API par un réseau Docker privé sans port publié. Elle est épinglée par digest et activée par AVIATION_WEB_SEARCH_URL. L’instance SearXNG du CT1400 et la pile n8n restent séparées et inchangées.
Les résultats Web restent des indices avec leurs liens et extraits; ils ne confirment ni horaires, ni retards, ni annulations, ni portes. Les sources OpenStreetMap, OurAirports et ADS-B ne remplacent pas les flux opérationnels.