Ce document est un aperçu d'un point de vue technique de l'application Registre de Preuve de Covoiturage. Le focus est mis sur le backend.
La documentation technique complĂšte est accessible sur le lien suivant đ.
Lâapplication est dĂ©coupĂ©e en services de maniĂšre fonctionnelle. Chaque service forme un paquet NodeJS indĂ©pendant. L'architecture de ces services est prĂ©sentĂ©e ci-aprĂšs.
â
Le proxy joue un rĂŽle dâAPI manager (routes, auth). Il a vocation Ă moyen terme Ă disparaĂźtre pour ĂȘtre remplacĂ© par un reverse-proxy ou un API manager.
Service certificate : ce service gĂ©nĂšre et imprime en PDF ou PNG des attestations de covoiturage des usagers. Par lâintermĂ©diaire de son opĂ©rateur, lâusager peut demander un Ă©tat des lieux de ses trajets de covoiturage sur une pĂ©riode Ă un instant T. Ce document est produit pour une identitĂ© et un opĂ©rateur seulement.
Service acquisition : ce service réalise des actions de contrÎle de conformité du payload. La conformité du payload est jugée vis-à -vis du format du schéma de données (cf : schéma V2 ) mais également vis-à -vis de rÚgles de bon sens (exemple : date de fin supérieure à date de début). Si le payload est conforme il est envoyé et enregistré en tant que journey
dans le service normalization. Un retour est effectuĂ© par le service auprĂšs de lâopĂ©rateur.
đ Nous conseillons aux opĂ©rateurs de sauvegarder les informations renvoyĂ©es par notre API dans un log.
Service normalization : ce service enrichie le journey
avec diverses informations comme des codes postaux, des distances théoriques (serveur OSRM), la(les) commune(s) de départ et/ou arrivée, la(les) AOM concernée(s), la densité de population du territoire, etc.
Service acquisition_error : ce service stocke les payloads non conformes aux schémas de données et rejetés par les services acquisition et normalization.
Service carpool : ce service redecoupe le journey
(couple passager/conducteur) en un passager et un conducteur et affecte une clef de reconstitution.
Service fraud : ce service rĂ©alise des tests dâanomalies sur les donnĂ©es remontĂ©es (exemple : nombre de siĂšges rĂ©servĂ©s Ă©gal Ă 6, distance 2 km pour une durĂ©e de 2H00, etc.) et affecte une note.
Service policy : ce service affecte une incitation aux passagers, conducteurs des trajets Ă©ligibles Ă une campagne dâincitation dĂ©finie dans le registre.
Service trip : ce service reconstitue le couple passager/conducteur en un journey
.