Skip to main content
Skip table of contents

Use cases Notificatie Broker

Overzicht Notificatie Broker

Onderstaande figuur toont een overzicht van de interfaces, services en functies van de Notificatie Broker component. De Notificatie Broker ontvangt toestemming notificaties van Mitz, en stuurt deze (indien gewenst) door naar GBZ-applicaties.

image-20240626-075412.png

De services zijn toegankelijk via een geboden interface en worden beschreven in de vorm van use cases. Een service wordt altijd vervult middels één of meerdere applicatiefuncties, bijvoorbeeld Mitz Notificatie Broker. De Notificatie Broker component maakt zelf ook gebruik van een aantal interfaces, bijvoorbeeld van de Toestemming Notificatie Interface.

Doorgeven Mitz Notificatie

Primaire actor

Mitz

Systeem

Mitz Notificatie Broker

Secundaire actor

Resource Client (GBx-applicatie)

Code

AOF.UC.NBR.100.v6

Realiseert Feature

relayMitzNotification

Pre-condities

De primaire actor is aangesloten op het systeem.

Het systeem is slechts benaderbaar voor

  • Mitz componenten die zijn aangesloten op het AORTA netwerk

Main flow

AOF.UCe.VAL.100.v1 - Toetsing type content

Uitkomst

Stap

Omschrijving

i

Het systeem ontvangt een verzoek en start de verwerking.

Het systeem toetst of het gevraagde type content (Accept header) en het gehanteerde type content (Content-Type header) worden ondersteund.

NB. wanneer het verzoek wordt ontvangen van een component van VZVZ, dan hoeft geen toets op type content te worden uitgevoerd.

Gevraagd type content niet ondersteund

statuscode 406 Not Acceptable

Gehanteerd type content niet ondersteund

statuscode 415 Unsupported Media Type

Het systeem genereert de vereiste response en gaat verder met de exit stap van de main flow.

AOF.UCe.VAL.160.v1 - Inhoudelijke toetsing request

Uitkomst

Stap

Omschrijving

i

Het systeem toetst of het request geen malafide inhoud bevat  (zie FHIR security, input validation).

Ongeldig verzoek

statuscode 400 Bad Request

Het systeem genereert de vereiste response en gaat verder met de exit stap van de main flow.

ii

Het systeem toetst of het verzoek voldoet aan de interface specificatie.

Hierbij moet ook worden voldaan aan de toelichting "Controle van batch en transaction requests".

FHIR-requests dienen te worden getoetst tegen de core FHIR specificaties (RESTful API).

Indien een If-None-Exists HTTP header van toepassing is op de interactie, dan dient deze te worden behandeld als een reguliere zoekparameter.

Indien een specifieke FHIR-profiel van toepassing is voor het gevonden interactie-id, dan dient het FHIR-request hier ook tegen te worden getoetst. NB. toetsing tegen een volledig FHIR-profiel wordt nog niet gedaan - consequenties van deze toets worden eerst in kaart gebracht.

Ongeldig verzoek

statuscode 400 Bad Request

Het systeem genereert de vereiste response en gaat verder met de exit stap van de main flow.

Stap

Omschrijving

Uitkomst

1

Het systeem verkrijgt, m.b.v. Feature getApplication(s), informatie over de GBx-applicatie van de bronhouder, die hoort bij het endpoint waarop de notificatie werd ontvangen.

Bronhouder onbekend

statuscode 400 Bad Request

Het systeem genereert de vereiste response en gaat verder met de exit stap van de main flow.

2

<exit>

Het systeem retourneert een response naar de primaire actor.

Let op. Deze stap is gemarkeerd als <exit> stap, maar is vanwege het asynchrone karakter van deze use case niet de laatste stap.

Verwerking succesvol

statuscode 200 OK

3

Indien de bronhouder Mitz Toestemming Notificaties wil en kan ontvangen:

Het systeem bepaalt m.b.v. de geregistreerde conformances in het APR (verkregen in een vorige stap) of een FHIR- of een v3-notificatie moet worden uitgestuurd.

De FQDN waarop een notificatie moet worden afgeleverd wordt eveneens verkregen uit het APR.

4

Het systeem verstuurt de notificatie via het bestaande mechanisme voor guaranteed delivery, op de wijze zoals gespecificeerd in

Post-condities

Het systeem heeft ontvangen request en de geretourneerde response gelogd, zoals beschreven in de Toelichting Logging.

Het systeem heeft van het ontvangen request, de volgende attributen gelogd:

  • datum en tijd van ontvangst

  • request-id

  • initial-request-id (indien van toepassing)

  • sender-id (common name van de TLS-client die de notificatie verzendt)

  • receiver-id (role-id van de VZVZ component die de notificatie ontvangt)

==

Het systeem heeft voor ieder uitgaand request, dat bij het doorlopen van de use case werd verzonden, de volgende attributen gelogd:

  • datum en tijd van verzending

  • request-id

  • initial-request-id

  • receiver-id

    • role-id wanneer de receiver van het request een VZVZ component is, en de aanroep niet via HTTP geschiedt

    • FQDN wanneer de aanroep via HTTP geschiedt

Het systeem heeft van de geretourneerde response, de volgende attributen gelogd:

  • datum en tijd van response

  • request-id van het bijbehorende request

  • initial-request-id van het bijbehorende request (indien van toepassing)

  • sender-id (role-id van de VZVZ component die de response verzendt)

  • receiver-id (common name van de TLS-client die de response ontvangt)

  • HTTP statuscode en eventueel geretourneerde foutinformatie

==

Het systeem heeft voor iedere response, die bij het doorlopen van de use case werd ontvangen, de volgende attributen gelogd:

  • datum en tijd van response

  • request-id van het bijbehorende request

  • initial-request-id van het bijbehorende request

  • sender-id

    • role-id wanneer de sender van de response een VZVZ component is, en de aanroep niet via TLS geschiedt

    • common name wanneer de aanroep via TLS geschiedt

  • HTTP statuscode en eventueel geretourneerde foutinformatie

Toelichtingen

Eisen aan verwerking notificatie vanuit Mitz

Eisen aan verwerking notificatie vanuit Mitz

Voor notificaties die door Mitz verzonden worden geldt het principe van guaranteed delivery door de Mitz-connector. Dat betekent dat de aflevering van de notificaties naar bronsystemen asynchroon gebeurt.

De Mitz-connector geeft dus direct een HTTP response aan Mitz en gaat, indien de resource met succes is ontvangen en gebufferd, daarna proberen om deze af te leveren bij het bronsysteem. De methode waarmee dit gebeurt is afhankelijk van de Mitz-connector en valt buiten de scope van de implementatie van Mitz.

De response is een ontvangstbevestiging, geen bevestiging van succesvolle verwerking.

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.