In ontwikkeling
.Notificeren v1.5.1-Correcties202203
Inleiding
In de platen hieronder staat het stroomdiagram van de functie Notificeren:
- De happy flow van de usecase Notificeren;
- De implementatie van de usecase Notificeren;
- De implementatie van het front- en backchannelverkeer.
De stroomdiagrammen tonen alleen de situatie waarin alle acties slagen tot en met het uiteindelijke verzamelen van de gezondheidsinformatie (de zogenaamde happy flow). De oranje banen horen, conform de MedMij-huisstijl tot het Persoonsdomein, de blauwe tot het Aanbiedersdomein.
Usecase Notificeren
Omdat het stroomdiagram alleen de happy flow bevat, worden daarna de uitzonderingen beschreven.
Stroomdiagram
In elke voltrekking van de in het diagram beschreven flow is steeds sprake van één van elk van de bovenaan genoemde rollen.
De totale procesgang van de usecase Notificeren kent de volgende stappen:
- Hetzij de Dienstverlener aanbieder detecteert een wijziging in (gezondheids)informatie waarop Persoon een Abonnement heeft genomen (een inhoudelijke wijziging) of de Dienstverlener aanbieder beëindigt, op eigen initiatief, een specifiek Abonnement (een abonnementswijziging).
- Indien het een inhoudelijke wijziging betreft, wordt vastgesteld dat de Persoon instaat voor de beschikbaarheid van de betreffende gezondheidsinformatie. De notie van beschikbaarheid is dezelfde als die in de functie Verzamelen.
- De Dienstverlener aanbieder plaatst een Notificatie bij de Dienstverlener persoon en slaat de meta-informatie op die wordt bedoeld in verantwoordelijkheid core.logging.100.
- Bij ontvangst van een Notificatie slaat de Dienstverlener persoon de meta-informatie op die wordt bedoeld in verantwoordelijkheid ext.abo.logging.100.
- Mogelijk stelt de Dienstverlener persoon de Persoon op de hoogte van de Notificatie. Indien dat door middel van een tekstbericht gebeurt, worden hiervoor de teksten gebruikt die zijn opgenomen op de pagina Notificatie van Persoon.
Uitzonderingen op de Happy flow van de usecase
Notificeren 1 | Dienstverlener persoon vindt de ontvangen Notificatie ongeldig. | Dienstverlener persoon informeert Dienstverlener aanbieder over deze uitzondering. | Allen stoppen de flow onmiddellijk na geïnformeerd te zijn over de uitzondering. |
Notificeren 2 | Dienstverlener persoon kan de Notificatie niet, niet geheel of niet tijdig verwerken. | Dienstverlener persoon informeert Dienstverlener aanbieder over deze uitzondering. | Allen stoppen de flow onmiddellijk na geïnformeerd te zijn over de uitzondering. |
In elke voltrekking van de in het diagram beschreven flow is steeds sprake van één van elk van de bovenaan genoemde rollen.
De flow kent de volgende stappen:
- De Notification Client detecteert een inhoudelijke wijziging in de gezondheidsinformatie waarop Persoon een geldig Abonnement is aangegaan, respectievelijk de Notification Client detecteert dat de Aanbieder een zeker abonnement beëindigt.
- In beide gevallen bepaalt de Notification Client, o.b.v. de
client_id
die werd gebruikt bij het aangaan van het Abonnement, in de OAuth Client List het juiste Resource Notification Endpoint , respectievelijk Subscription Notification Endpoint. - De Notification Client stuurt subscription notification, respectievelijk resource notification naar de Notification Server.
- De Notification Server controleert de Notificatie , laat deze eventueel aan de Persoon tonen, en verstuurt een antwoord naar de Notification Client.
Front- en backchannel
Beide soorten Notificaties betreffen backchannel-verkeer.