Raccordement au Hub Santé
Le raccordement technique est le prérequis à l'implémentation d'échanges fonctionnels
(15-15,
15-SMUR, etc.) tels
que décrits dans les
Dossiers de
Spécifications
Fonctionnelles (DSF).
Tous les détails techniques sont disponibles dans le Dossier des
Spécifications Techniques (DST).
Dossier des Spécifications Techniques (DST)
1 - Messages asynchrones, AMQP et RabbitMQ.
Les échanges entre un Client et le Hub Santé se font via des opérations d'envoi et de
réception de messages en mode asynchrone.
La solution technique proposée est basée sur le protocole
AMQP 0-9-1 et son implémentation open-source
RabbitMQ.
2 - Autorisations : acteurs et messages
La liste des Clients autorisés à échanger des messages sur le Hub Santé est maintenue par
l'ANS.
Les Clients auront le droit d'échanger uniquement avec les acteurs également enregistrés.
Les échanges autorisés sont définis par les
Dossiers de Spécifications
Fonctionnelles (DSF) ;
qui précise notamment les modèles de données attendus et contrôlés lors des échanges de
messages
par le Hub Santé.
3 - Communications : point à point, files fixées et nommage
Le mode de communication est basé sur un mode d'échange
point à point .
Un Client émetteur publie un message pour un unique destinataire sur
l'échangeur d'envoi.
Un Client destinataire reçoit ses messages sur des files d'écoute
dédiées.
Chaque Client dispose de 3 files d'écoute selon la typologie des messages reçus :
- message pour les échanges fonctionnels,
- ack pour les acquittements de réception finale,
- info pour les messages généraux d'information, alerte et
erreur.
Grace à un mécanisme de routage interne au Hub Santé, chaque message publié sur
l'échangeur
d'envoi est transféré sur une file de messages accessible au destinataire (déterminé
avec
l'enveloppe du message).
Le message est ensuite récupéré par le Client destinataire pour traiter ce message au
sein
de son système d'information.
Le schéma ci-dessous illustre les différentes étapes du transit d'un message par le Hub
Santé ainsi que la configuration des différentes clés et attributs.