diff --git a/README.adoc b/README.adoc index 3914bab0..3281d322 100644 --- a/README.adoc +++ b/README.adoc @@ -68,9 +68,9 @@ link:docs/Client/Client.adoc[*TI Messenger-Client*] + * Der *TI-Messenger-Client* basiert auf der `Matrix-Client-Server API`. Er wird durch weitere Funktionsmerkmale erweitert und ruft die Schnittstellen am *TI-Messenger-Fachdienst* sowie am *VZD-FHIR-Directory* auf. -link:docs/FHIR-Directory/FHIR-Directory.adoc[*VZD-FHIR-Directory*] + +link:https://github.com/gematik/api-vzd/blob/main/docs/Fachkonzept_FHIR-Directory.adoc[*VZD-FHIR-Directory*] + -* Beim *VZD-FHIR-Directory* handelt es sich um einen zentralen Verzeichnisdient der TI, der die deutschlandweite Suche von Organisationen und Akteuren des *TI-Messenger-Dienstes* ermöglicht. Das *VZD-FHIR-Directory* basiert auf dem FHIR-Standard und bietet für den *TI-Messenger-Dienst* relevante Schnittstellen an. Die Schnittstelle `FHIRDirectoryTIMProviderAPI` wird vom *Registrierungs-Dienst* aufgerufen, um eine Föderationsliste herunterzuladen. Die Schnittstellen `FHIRDirectorySearchAPI` und `FHIRDirectoryOwnerAPI` werden von den *TI-Messenger-Clients* aufgerufen, um eine Suche bzw. einen Eintrag im *FHIR-Directory* zu ermöglichen. +* Beim *VZD-FHIR-Directory* handelt es sich um einen zentralen Verzeichnisdient der TI, der die deutschlandweite Suche von Organisationen und Akteuren des *TI-Messenger-Dienstes* ermöglicht. Das *VZD-FHIR-Directory* basiert auf dem FHIR-Standard und bietet neben der Suche (`FHIRDirectorySearchAPI`) für den *TI-Messenger-Dienst* Schnittstellen zur Administration der link:docs/Foederationsliste/Foederationsliste.adoc[*Föderationsliste*] an (`FHIRDirectoryTIMProviderAPI`). Zusätzlich existiert für Organisaitonen und Practitioner eine Schnittstelle (`FHIRDirectoryOwnerAPI`) über die die Verwaltung des eigenen Eintrages im *VZD-FHIR-Directory* möglich ist. Details sind dem link:https://github.com/gematik/api-vzd/blob/gemILF_VZD_FHIR_Directory/1.2.2/docs/gemILF_VZD_FHIR_Directory.adoc[*Implemtierungsleitfaden*] des *VZD-FHIR-Directory* zu entnehmen. link:docs/IDP/idp.adoc[*Zentraler IDP-Dienst*] + diff --git a/docs/FHIR-Directory/FHIR-Directory.adoc b/docs/FHIR-Directory/FHIR-Directory.adoc deleted file mode 100644 index ddf0b7b1..00000000 --- a/docs/FHIR-Directory/FHIR-Directory.adoc +++ /dev/null @@ -1,117 +0,0 @@ -ifdef::env-github[] -:tip-caption: :bulb: -:note-caption: :information_source: -:important-caption: :heavy_exclamation_mark: -:caution-caption: :fire: -:warning-caption: :warning: -endif::[] - -:imagesdir: ../../images -:toc: macro -:toclevels: 5 -:toc-title: Table of Contents -:numbered: - -image:meta/gematik_logo.svg[width=70%] - -toc::[] - -= VZD-FHIR-Directory -Beim *VZD-FHIR-Directory* handelt es sich um einen zentralen Verzeichnisdient der TI. Im Rahmen des *TI-Messengers* wird das *VZD-FHIR-Directory* für die deutschlandweite Suche von Organisationen und Akteuren verwendet. - -Dabei besteht das *VZD-FHIR-Directory* aus den Teilkomponenten: - -* FHIR-Directory, -* OAuth-Service, -* Auth-Service und -* FHIR-Proxy - -die benötigt werden, um alle Funktionsmerkmale abbilden zu können. - -In der folgenden Abbildung sind die Teilkomponenten sowie deren Schnittstellen und die für deren Zugriff benötigten Zugriffstoken dargestellt: - -image::I_VZD_FHIR_Directory.png[width="100%"] - -== FHIR-Directory / Verzeichnistypen -Das *FHIR-Directory* basiert auf link:https://hl7.org/fhir/R4/[FHIR R4] und stellt die zwei Verzeichnisse `HealthcareServiceDirectory`- und `PractitionerRoleDirectory` bereit. Die Profilierung der FHIR-Ressourcen ist im link:https://simplifier.net/vzd-fhir-directory[Simplifier] aufrufbar. - -Im folgenden sind die beiden Verzeichnisse mit deren Struktur beispielhaft dargestellt: - -* `HealthcareService` - -image::https://raw.githubusercontent.com/gematik/api-vzd/main/images/diagrams/ObjectDiagram.HealthcareService.svg[align="center",width="60%"] - -* `PractitionerRole` - -image::https://raw.githubusercontent.com/gematik/api-vzd/main/images/diagrams/ObjectDiagram.PractitionerRole.svg[align="center",width="60%"] - -Im Rahmen des *TI-Messenger-Dienstes* sollen die folgenden Attribute eines `Endpoints` eines `HealthcareService` oder einer `PractitionerRole` wie folgt gesetzt werden: - -[options="header"] -|================================================================================================================= -| Attribut | Wert | Beschreibung -| `endpoint.status` | `active` | Sichtbarkeit des Endpunktes im Verzeichnisdienst -| `endpoint.connectionType` | `tim` | Gibt an, um welche Anwendung es sich handelt -| `endpoint.name` | `` | Identifier des Endpoints -| `endpoint.PayloadType` | `tim-chat` | Kennung der Übertragenen Inhalte -| `endpoint.address` |`MXID` | Matrix-UserID eines Akteurs -|================================================================================================================= - -Beispiel: * `HealthcareService.endpoint.address = ` - -Weitere Informationen zu den Verzeichnistypen können link:https://github.com/gematik/api-vzd/blob/main/docs/Fachkonzept_FHIR-Directory.adoc#datenstruktur-im-fhir-directory[hier] nachgelesen werden. - -== OAuth-Service -Der *OAuth-Service* stellt ein `ti-provider-accesstoken` aus, welches am `/ti-provider-authenticate`-Endpunkt übergeben werden muss. Hierfür muss sich ein Anbieter eines *TI-Messenger-Fachdienstes* mittels seiner link:/docs/Fachdienst/Fachdienst.adoc#214-beantragung-der-ti-provider-credentials-am-vzd-fhir-directory[Zugangsdaten] am OAuth-Service authentisieren. -Der Aufruf des Endpunktes kann https://github.com/gematik/api-vzd/blob/gemILF_VZD_FHIR_Directory/1.2.2/docs/FHIR_VZD_HOWTO_Authenticate.adoc#authenticate-for-the-provider-api[hier] nachgelesen werden. - -== Auth-Service -Der *Auth-Service* stellt Zugriffstoken aus, die für den Zugriff auf die Endpunkte am *FHIR-Proxy* benötigt werden. Der Aufruf der Endpunkte am *Auth-Service* ist link:https://github.com/gematik/api-vzd/blob/gemILF_VZD_FHIR_Directory/1.2.2/docs/FHIR_VZD_HOWTO_Authenticate.adoc#fhirdirectoryauthenticationapis[dort] beschrieben. - -== FHIR-Proxy -Der *FHIR-Proxy* gibt Zugriff auf das *FHIR-Directory* unter Vorlage eines validen `ACCESS_TOKEN` und somit auf die FHIR-Ressourcen. Die vom *FHIR-Proxy* zur Verfügung gestellten Endpunkte werden für die Suche und Pflege von FHIR-Ressourcen verwendet sowie zur Pflege eigener TIM Provider Einträge. Der Aufruf der Endpunkte am *FHIR-Proxy* sind der folgenden Aufzählung zu entnehmen: - -* https://github.com/gematik/api-vzd/blob/gemILF_VZD_FHIR_Directory/1.2.2/docs/FHIR_VZD_HOWTO_Provider.adoc#fhirdirectoryproviderapi[/tim-provider-services] - -* https://github.com/gematik/api-vzd/blob/gemILF_VZD_FHIR_Directory/1.2.2/docs/FHIR_VZD_HOWTO_Search.adoc#fhirdirectorysearchapi-search-for-practitioners-and-organizations[/search] - -* https://github.com/gematik/api-vzd/blob/gemILF_VZD_FHIR_Directory/1.2.2/docs/FHIR_VZD_HOWTO_Owner.adoc#fhirdirectoryownerapi[/owner] - -TIP: Die Anbieter eines *TI-Messenger-Fachdienstes* nutzen die Schnittstelle `/tim-provider-services`, um die Föderationsliste abzufragen und um die Domains der von ihnen betriebenen *Messenger-Services* als Teil der TI-Messenger Föderation zu verwalten. - -IMPORTANT: Die Volltextsuche über die Schnittstellen `/search` und `/owner` wird aktuell nicht vom *VZD-FHIR-Directory* unterstützt. Hierfür können die folgenden RegEx *_text* and *_content* verwendet werden. Für mehr Informationen kann die folgende link:http://hl7.org/fhir/R4/search.html#content[Dokumentation] verwendet werden. - -== Föderationsliste -Um nicht zum TI-M Dienst gehörende Messenger-Services ausschließen zu können, werden die Domainnamen der Messenger-Services in einer Föderationsliste zusammengefasst. Diese wird durch das [gemSpec_VZD_FHIR_Directory] bereitgestellt und kann über die Schnittstelle `/tim-provider-services` von zugelassenen Anbietern verwaltet werden. In der Föderationsliste werden die folgenden Informationen zu den Messenger-Services gespeichert: - -[options="header"] -|================================================================================================================= -| Attribut | Beschreibung -| `domain` | The TI-Messenger domain -| `telematikID` | The telematikID of the organization that uses the TI-Messenger domain -| `isInsurance` | Indicates if it is a domain of an health insurance for insured persons -| `timProvider` | The Zuweisungsgruppe im TI-ITSM-System of the TI-Messenger Provider, who added the domain -|================================================================================================================= - -Das folgenden Beispiel zeigt exemplarisch die Einträge der gematiker Krankenkasse, die einen *TI-M FD ePA* für die Versicherten und einen *TI-M FD Pro* für die eigenen Mitarbeiter betreibt: ----- -{ - "domain": "versicherte.tim.gematiker-kk.de", - "telematikID": "4711-gem", - "timAnbieter": "GEM-0815", - "isInsurance": yes - }, - { - "domain": "mitarbeiter.tim.gematiker-kk.de", - "telematikID": "4711-gem", - "timAnbieter": GEM-0815, - "isInsurance": false - }, -} ----- - - - - - - diff --git a/docs/Foederationsliste/Foederationsliste.adoc b/docs/Foederationsliste/Foederationsliste.adoc new file mode 100644 index 00000000..01b21826 --- /dev/null +++ b/docs/Foederationsliste/Foederationsliste.adoc @@ -0,0 +1,53 @@ +ifdef::env-github[] +:tip-caption: :bulb: +:note-caption: :information_source: +:important-caption: :heavy_exclamation_mark: +:caution-caption: :fire: +:warning-caption: :warning: +endif::[] + +:imagesdir: ../../images +:toc: macro +:toclevels: 5 +:toc-title: Table of Contents +:numbered: + +image:meta/gematik_logo.svg[width=70%] + +toc::[] + += Föderationsliste + +Um nicht zum TI-M Dienst gehörende Messenger-Services ausschließen zu können, werden die Domainnamen der Messenger-Services in einer Föderationsliste zusammengefasst. Diese wird durch das [gemSpec_VZD_FHIR_Directory] bereitgestellt und kann über die Schnittstelle `/tim-provider-services` von zugelassenen Anbietern verwaltet werden. In der Föderationsliste werden die folgenden Informationen zu den Messenger-Services gespeichert: + +[options="header"] +|================================================================================================================= +| Attribut | Beschreibung +| `domain` | The TI-Messenger domain +| `telematikID` | The telematikID of the organization that uses the TI-Messenger domain +| `isInsurance` | Indicates if it is a domain of an health insurance for insured persons +| `timProvider` | The Zuweisungsgruppe im TI-ITSM-System of the TI-Messenger Provider, who added the domain +|================================================================================================================= + +Das folgenden Beispiel zeigt exemplarisch die Einträge der gematiker Krankenkasse, die einen *TI-M FD ePA* für die Versicherten und einen *TI-M FD Pro* für die eigenen Mitarbeiter betreibt: +---- +{ + "domain": "versicherte.tim.gematiker-kk.de", + "telematikID": "4711-gem", + "timAnbieter": "GEM-0815", + "isInsurance": yes + }, + { + "domain": "mitarbeiter.tim.gematiker-kk.de", + "telematikID": "4711-gem", + "timAnbieter": GEM-0815, + "isInsurance": false + }, +} +---- + + + + + +