Medisinkabinett

Medisinkabinettintegrasjoner trenger å vite hvilke pasienter som er relevante for et fysisk medisinkabinett. I Open Aidn løses dette ved å konfigurere hvert kabinett med avdelings-ID-en som representerer plasseringen, og deretter søke i EpisodeOfCare etter omsorgsepisoder som håndteres av den avdelingen.

Scenario

Leverandøren drifter ett eller flere medisinkabinett for en kommune. Hvert kabinett er installert på en fysisk plassering, for eksempel en avdeling eller post. Leverandørsystemet henter jevnlig pasientene som er relevante for plasseringen, slik at legemiddelarbeidsflyter kan avgrenses til riktig omsorgskontekst.

Påkrevd oppsett

Konfigurasjon Eier Beskrivelse
OAuth-klient Kommune eller Aidn-administrator Klient konfigurert for leverandør og miljø. Se Kommuneoppsett.
Klientens privatnøkkel Leverandør Privatnøkkel som hører til den registrerte offentlige nøkkelen. Leverandøren kan generere nøkkelparet selv, eller administrasjonsportalen kan generere det under klientoppsettet. Lagres sikkert.
Scope Kommune eller Aidn-administrator Klienten trenger episodeofcare.search. Legg bare til episodeofcare.read hvis integrasjonen må lese enkeltressurser med ID.
Avdelings-ID Kommune Avdelings-ID-en som representerer kabinettets fysiske plassering.
Integrasjon aktivert for kommunen Kommune eller Aidn-administrator Medisinkabinettintegrasjonen må aktiveres før forespørsler tillates mot kommunen.

Dataflyt

sequenceDiagram
    participant Admin as Kommunal administrator
    participant Vendor as Kabinettleverandør
    participant IdP as Aidn identity provider
    participant FHIR as Open Aidn FHIR API

    Admin->>Admin: Aktiver integrasjon for kommunen
    Admin->>Admin: Opprett OAuth-klient og velg scopes
    Admin->>Vendor: Del client ID, key ID, miljø og avdelings-ID
    Vendor->>IdP: Be om access token med private_key_jwt
    IdP-->>Vendor: Access token med godkjente scopes
    Vendor->>FHIR: Søk EpisodeOfCare med avdelings-ID
    FHIR-->>Vendor: FHIR Bundle med matchende omsorgsepisoder og eventuelle pasienter

Hent pasienter for et kabinett

Bruk konfigurert avdelings-ID som søkeparameteren organization.

GET /EpisodeOfCare/_search?organization=<DEPARTMENT_ID>&_include=EpisodeOfCare:patient HTTP/1.1
Host: <OPEN_AIDN_FHIR_HOST>
Accept: application/fhir+json
Authorization: Bearer <ACCESS_TOKEN>

Responsen er en FHIR Bundle:

Filtrering på tjenestetype

Hvis integrasjonen bare skal inkludere bestemte tjenestetyper, kan du legge til ett eller flere type-parametre. Dagens verdier mappes til IPLOS-koder der det er relevant.

GET /EpisodeOfCare/_search?organization=<DEPARTMENT_ID>&type=<IPLOS_CODE>&_include=EpisodeOfCare:patient HTTP/1.1
Host: <OPEN_AIDN_FHIR_HOST>
Accept: application/fhir+json
Authorization: Bearer <ACCESS_TOKEN>

Bruk bare tjenestetypefiltrering når dette er avtalt under oppstart. Hvis type ikke sendes inn, filtrerer ikke Open Aidn på tjenestetype.

Sjekkliste før produksjonssetting

Valider oppsettet med kommunen før produksjonssetting:

Relatert dokumentasjon

Back to the homepage