MTES-MCT / dialog

Intégration de la réglementation de circulation dans les solutions numériques
https://dialog.beta.gouv.fr
GNU Affero General Public License v3.0
9 stars 0 forks source link

Echanges de données BAC IDF <-> DiaLog #743

Open MathieuFV opened 6 months ago

MathieuFV commented 6 months ago

User story

BAC IDF a mis à disposition une API Rest sur laquelle il est possible de puiser les dernières données disponibles dans leur base. De leur côté, les équipes de BAC IDF doivent récupérer les données DiaLog qui ne sont pas dans leur base (en particulier données Eudonet). Ce ticket permet les échanges entre les équipes des deux projets.

RAPPELS :

Nos données sont accessibles à l'url suivante : https://dialog.beta.gouv.fr/api/regulations.xml

La codebase pour tout ce qui concerne l'intégration des données BAC IDF dans DiaLog : https://github.com/MTES-MCT/dialog/tree/main/src/Infrastructure/BacIdf

Le transformer BAC IDF -> DiaLog qui peut être utilisé comme base de votre côté : https://github.com/MTES-MCT/dialog/blob/main/src/Infrastructure/BacIdf/BacIdfTransformer.php

Critères d'acceptation

Design

Implémentation

Contexte supplémentaire

aburbanol commented 6 months ago

Dans la classe "src/Domain/Regulation/Enum/RegulationOrderRecordSourceEnum.php", on trouve les valeurs possibles du champ "source" : { case DIALOG = 'dialog'; case EUDONET_PARIS = 'eudonet_paris'; case BAC_IDF = 'bacidf'; }

Dans la classe "src/Application/EudonetParis/Command/ImportEudonetParisRegulationCommand.php", le champ "$generalInfoCommand->source" est attribué la valeur "EUDONET_PARIS".

Dans la class "src/Domain/Regulation/RegulationOrderRecord.php", on observe le champ Source. On a vérifié dans les données dans https://dialog.beta.gouv.fr/api/regulations.xml et aucune régulation a le champ "source" avec la valeur 'eudonet_paris'.

Pouvons-nous confirmer s'il n'y a pas des régulations EUDONET ?

Il y a un schéma XML, nous sommes en train de chercher la source dans cette XPath:  "trafficRegulationsFromCompetentAuthorities/trafficRegulationOrder/source"

florimondmanca commented 5 months ago

Bonjour @aburbanol

Pour rappel du contexte, je crois savoir que vous essayez de récupérer les données non-BAC IDF présentes dans DiaLog pour les réintégrer à BAC IDF, exact ?

Dans ce cadre quel est le problème que vous cherchez à résoudre à partir de ce champ source ? Récupérer les données au format DATEX pour les sources autres que bacidf ?

Actuellement https://dialog.beta.gouv.fr/api/regulations.xml renvoie les arrêtés de circulation de toutes les "sources"

Il y a donc bien des arrêtés "Eudonet Paris" (par exemple 018f06af-7e16-733e-bcb5-d6c2d93c5a21) et potentiellement d'autres arrêtés qui ne sont pas issus de Bac-IDF (source dialog = saisis via l'interface web de DiaLog).

Il y a un schéma XML, nous sommes en train de chercher la source dans cette XPath: "trafficRegulationsFromCompetentAuthorities/trafficRegulationOrder/source"

Ce champ n'existe pas dans la spécification DATEX de base

Néanmoins nous pouvons envisager d'étendre le DATEX pour exposer la source de tel ou tel arrêté (comme nous le faisons avec <locdx:geogjsonGeometry>).

MathieuFV commented 5 months ago

Hello ! Suite à discussion avec Andres aujourd'hui je pense qu'il serait effectivement souhaitable d'ajouter ce champ source à nos données pour qu'ils puissent intégrer seulement celles qui les intéressent. A voir ensemble quand on pourra traiter ça.

florimondmanca commented 5 months ago

Je propose de requalifier ce ticket en "Export du champ source dans le DATEX"

Edit : #792