Demo
Op de DECOZO gitea pagina is een demo beschikbaar. Deze demo bevat een POC implementatie van de OKAPI specificatie met een informatiesysteem en twee dienstverleners.
Installatie
De makkelijkste manier om de demo te draaien is om de repository te clonen en de demo op te starten met behulp van docker compose.
Om de demo op deze manier uit te voeren moeten git, docker en docker compose op het systeem geïnstalleerd zijn.
1. Clone de repository
$ git clone https://src.whiteboxsystems.nl/decozo/okapidemo.git
2. Ga naar de gekloonde repository
$ cd okapidemo
3. Maak een directory aan voor data en ga naar deze directory
$ mkdir demo; cd demo
4. Start het docker compose project
Afhankelijk van de installatie van docker compose, plugin of standalone.
Met de plugin:
$ docker compose --project-directory . -f ../docker-compose.yaml up -d
Met een standalone docker compose installatie
$ docker-compose --project-directory . -f ../docker-compose.yaml up -d
Als de vorige commando's zijn uitgevoerd draaien de verschillende services op de volgende URL's:
- Informatiesysteem (MYHIS): https://localhost:8084
- Dienstverlener 1 (Whitebox): http://localhost:8085
- Dienstverlener 2 (DVZA): http://localhost:9095
Het informatiesysteem heeft een self signed certificaat. Dit certificaat zal niet door de browser (h)erkent worden. Je kunt in de meeste browsers deze waarschuwing negeren.
De verschillende dienstverleners worden op verschillende manieren geconfigureerd. De Whitebox dienstverlener zal patiënten ophalen d.m.v authenticatie met een client certificaat (mTLS), de DVZA dienst zal gebruik maken van een Bearer token om de patiëntgegevens op te halen. De geconfigureerde protocollen zijn voorbeelden, officiële protocollen moeten nog worden uitgewerkt en gespecificeerd. De diensten zelf bevatten ook geen verdere functionaliteit dan het geauthenticeerd ophalen van de aangemelde patiënt gegevens.
Demo walktrough
1. Koppelen dienstverlener
In de demo wordt tentoongesteld hoe een informatiesysteem kan koppelen met dienstverleners, een dienst kan activeren, patiënten kan aanmelden bij de dienst en hoe de dienstverlener vervolgens de patiëntgegevens kan ophalen.
1.1. Registratieverzoek
In het informatiesysteem is het mogelijk om de dienstverleners te koppelen. Dit kan gedaan worden door in het informatiesysteem in het menu op Dienstverleners
te klikken, op Nieuwe dienstverlener
te klikken, de URL van een van de dienstverleners (te vinden op de startpagina van de dienstverlener) in te vullen en op Verbind
te klikken.
Let op! het gaat hier om het adres van de OKAPI interface (grpc) en niet de web interface (URL's hierboven). Om het adres van de OKAPI interface te achterhalen kan naar de web interface van de desbetreffende dienstverlener gegaan worden (bijv. de DVZA). Het adres dat op het scherm verschijnt (Dit systeem is beschikbaar op:
) is het adres van de OKAPI interface.
Als het verzoek succesvol is aangemaakt verschijnt de dienstverlener in de Dienstverleners
tabel. De koppeling is momenteel nog niet geactiveerd. Om deze te activeren kan op de Afronden verbinding
link geklikt worden en vervolgens de autorisatiecode (tijdelijk wachtwoord) in te vullen.
De autorisatiecode is te vinden in de dienstverlener in de tabel op de Registratieverzoeken
pagina in de kolom Tijdelijk wachtwoord
.
Als het tijdelijk wachtwoord is ingevuld en op Activeer
is gedrukt zal de koppeling voltooid zijn.
1.2. Diensten activeren
Om diensten te activeren kan in het informatiesysteem op de Dienstverleners
pagina in de Acties
kolom op de Activeer
link geklikt worden. Vervolgens kan op de Dienstverleners
pagina in de tabel onder de Acties
kolom op de Activeer
link geklikt worden om de dienst te activeren. Vanaf dat moment kunnen via de Patiënten
pagina patiënten voor een dienst worden aangemeld.
1.3. Patiënten aanmelden
Om patiënten aan te melden gaat men naar de Patiënten
pagina, drukt op de Aanmelden
knop in de Acties
kolom en vervolgens kan men deze patiënt aanmelden / afmelden voor de gewenste dienst door in het dropdown menu de juiste dienst aan te vinken / uit te vinken. Het eerste 'level' van de dropdown geeft de dienstverlener aan en het tweede level geeft de verschillende diensten aan die zijn geactiveerd voor deze dienstverlener. Eenmaal aangemeld kunnen de gegevens van de patiënt in de dienstverlener worden opgehaald.
1.4. Patiënten ophalen
In de dienstverlener kan nu op de Informatiesystemen
pagina per informatiesysteem zien welke diensten zijn geactiveerd en hoeveel patiënten hiervoor zijn aangemeld. Door op een actieve dienst te klikken ga je naar de Patiënten
pagina voor de dienst. Op deze pagina kan op een van de patiënten worden geklikt om gegevens voor deze patiënt in te zien.