Intégration
Intégrer Epic et Oracle Health pour l'état de l'urgence en temps réel
L'état de l'urgence en temps réel exige des événements, pas des requêtes. Voici comment les obtenir d'Epic et d'Oracle Health Millennium par le moteur d'intégration que l'hôpital exploite déjà, ce qu'il faut minimiser avant que quoi que ce soit ne quitte le réseau, et comment prouver que le flux est exact avant que les patients s'y fient.
- Par
- Équipe EDFlow
- Publié
- Temps de lecture
- Lecture de 5 min
Le temps réel, ce sont des événements
La visite d'un patient change d'état quelques dizaines de fois : arrivée, triage, changement d'emplacement, évaluation par un médecin, demandes d'examen, prélèvements, résultats finaux, consultation, décision, départ. Un suivi n'est bon que si le délai entre chacun de ces moments dans le DME et l'écran du patient est court.
Chaque grand DME émet déjà ces moments sous forme de messages HL7 v2 : admissions, congés et transferts (ADT), demandes d'examen (ORM et OML) et résultats (ORU). Ils sont en temps réel, les hôpitaux possèdent et exploitent les interfaces, et ils passent par un moteur d'intégration comme Rhapsody, InterSystems Health Connect, Cloverleaf ou Mirth Connect. Le HL7 v2 par le moteur est donc la colonne vertébrale pratique d'un flux en direct pour tout le service.[1][2]
Epic
Epic conserve les étapes de l'urgence comme des événements horodatés sur la rencontre. Elles sortent d'Epic par les interfaces sortantes Bridges : administration des patients, résultats et demandes, imagerie, diètes et renseignements sur les fournisseurs figurent sur open.epic.[1] Un ADT^A08 se produit habituellement quand l'équipe traitante, le triage ou la décision change, mais chaque site configure ses propres déclencheurs.
FHIR R4 garde sa place : Practitioner et PractitionerRole pour les noms de l'équipe soignante, Location pour la correspondance, et un lancement SMART qui ouvre le tableau du personnel depuis Epic, avec des services d'arrière-plan et des assertions JWT signées.[3][4] Les sites Epic de l'Ontario exploitent aussi des interfaces propres au Canada pour le système provincial des temps d'attente, qui transportent déjà les horodatages d'arrivée, de triage et d'évaluation dont une chronologie de l'urgence a besoin.[5]
Oracle Health Millennium
FirstNet, la solution d'urgence de Millennium, comprend un tableau de suivi, l'attribution des fournisseurs et des avis pour le triage et les étapes du flux. Millennium envoie du HL7 v2 sortant par les outils d'interface d'Oracle, et le moteur fait le reste.
Les API FHIR R4 d'Oracle ajoutent deux éléments utiles. CareTeam prend en charge les équipes soignantes au niveau de la rencontre, avec les rôles et les périodes, ce qui convient mieux à l'équipe de l'urgence qu'une équipe longitudinale.[6] Et Communication.Create peut envoyer des avis ou des rappels professionnels sécurisés aux praticiens, une voie réaliste pour écrire les demandes des patients dans le centre de messages lors d'une phase ultérieure.[7]
Minimiser à l'intérieur de l'hôpital
C'est dans le moteur que la confidentialité se gagne. Il filtre les visites à l'urgence, transforme les messages en un petit vocabulaire d'événements, retire tout champ que le contrat ne nomme pas et signe le lot avant qu'il ne quitte l'hôpital.
- Jamais envoyés : valeurs de résultats et indicateurs anormaux, notes, diagnostics, numéros de carte santé, adresses et numéros de téléphone.
- Hachés à l'arrivée : numéros de dossier, de visite et de demande, conservés seulement sous forme de hachages à clé.
- Réduits : le nom du patient à un prénom et une initiale; la date de naissance seulement dans un hachage d'appariement à clé.
- Refusés : toute donnée contenant un champ interdit est rejetée à la réception, deuxième ligne de défense derrière le moteur.
Pour les messages de résultats, la règle est simple : les segments OBX sont ignorés et jamais analysés pour leurs valeurs. Seuls l'état (OBR-25) et son heure sont conservés.
Le prouver avant que les patients s'y fient
Avant que les patients ne voient quoi que ce soit, le flux fonctionne en parallèle pendant au moins deux semaines, avec la vue patient masquée. Il doit concorder avec le DME pour au moins 98 % des étapes dans les échantillons vérifiés, livrer les mises à jour en 60 secondes ou moins au 95e centile, rejeter moins de 0,5 % des événements et ne laisser aucun code sans correspondance.
Les flux tombent en panne. Les interfaces sont suspendues pour des mises à niveau, les moteurs redémarrent et des systèmes entiers s'arrêtent pour des pannes planifiées. EDFlow surveille un signal de vie chaque minute et une liste des patients présents toutes les 15 minutes; quand le flux se tait, le personnel voit qu'il est retardé et les patients voient que les mises à jour peuvent être retardées, jamais un ancien état présenté comme actuel. La console du personnel peut faire avancer chaque étape à la main, par le même pipeline, jusqu'au retour du flux.
Questions fréquentes
Pourquoi ne pas utiliser FHIR pour suivre l'urgence?
Le catalogue FHIR public d'Epic limite la recherche d'Encounter à un patient et n'offre pas d'API d'abonnement de façon générale, et la documentation R4 publique d'Oracle ne mentionne pas d'abonnements non plus. Suivre tout un service voudrait dire interroger chaque patient actif chaque minute sur plusieurs ressources. Les flux HL7 v2 sont déjà en temps réel.[3][8]
L'intégration écrit-elle dans le DME?
Seulement si le site le souhaite. La première phase est en lecture seule. Plus tard, Communication.Create d'Oracle Health peut transmettre les demandes des patients au centre de messages des fournisseurs, et une écriture de document peut consigner les demandes de la visite sans contenu clinique.[7]
Sources
- [1]HL7 v2 interfaces (s'ouvre dans un nouvel onglet) · open.epic
- [2]HL7 Version 2 to FHIR Implementation Guide (s'ouvre dans un nouvel onglet) · HL7 International
- [3]FHIR interfaces (s'ouvre dans un nouvel onglet) · open.epic
- [4]SMART App Launch: Backend Services (s'ouvre dans un nouvel onglet) · HL7 International
- [5]Canada-specific interfaces (s'ouvre dans un nouvel onglet) · open.epic
- [6]FHIR R4 APIs for Millennium: CareTeam (s'ouvre dans un nouvel onglet) · Oracle
- [7]FHIR R4 APIs for Millennium: Create a communication (s'ouvre dans un nouvel onglet) · Oracle
- [8]Millennium Platform API documentation (s'ouvre dans un nouvel onglet) · Oracle