Skip to content

Latest commit

 

History

History
146 lines (106 loc) · 11.9 KB

README.adoc

File metadata and controls

146 lines (106 loc) · 11.9 KB
logo

TI Messenger Documentation v1.1.1

badge badge

Release%20Notes tim‐pro‐1.0
TI‐Messenger‐Basis v1.1 TI‐Messenger‐ePA v1.0 TI‐Messenger‐Pro v1.0
Matrix Client Server API v1 Matrix Server Server API v1 Matrix Push Gateway API v1

Überblick

Die folgende Dokumentation ergänzt die Spezifikationen TI-Messenger ePA und TI-Messenger Pro. An dieser Stelle werden insbesondere die in der Spezifikation genannten Komponenten der Lösung sowie deren Schnittstellen weiter dargestellt und erläutert, um Hersteller und Anbieter bestmöglich zu unterstützen.

Branches

Für die Dokumentation des TI-Messenger-Dienstes werden in GitHub die folgenden Branches verwendet:

  • main: enthält die Dokumentation für das aktuell veröffentlichte Release gemäß [gemSpec_TI-Messenger-Dienst],

  • develop: enthält die Dokumentation der in Entwicklung befindlichen Features, die noch nicht released sind,

  • hotfix: enthält die Dokumentation kurzfristig notwendiger Änderungen am aktuellen Release,

  • feature/*: enthält eine Vorschau, Vorbereitungen und Diskussion eines neuen Themas, welches noch nicht in der Entwicklung ist. Die Inhalte können unvollständig sein und sich bis zur Fertigstellung noch ändern.

Systemübersicht

Die folgende Abbildung gibt einen Überblick über die Systemarchitektur des TI-Messenger-Dienst v1.1.1 insbesondere auf die Schnittstellen zwischen den Komponenten, die in den folgenden Kapiteln weiter betrachtet werden.

System overview
💡
Auf die Schnittstellen zur Autentisierung am Auth-Service des VZD-FHIR-Directory wird in der oben gezeigten Abbildung verzichtet. Die Informationen hierzu können in dem entsprechenden Kapitel für das VZD-FHIR-Directory hier nachgelesen werden.
  • Registrierungs-Dienst
    Der Registrierungs-Dienst bietet drei abstrakte Schnittstellen an. Die Schnittstelle I_Registration wird vom Frontend des Registrierungs-Dienstes aufgerufen, um eine Organisation beim Registrierungs-Dienst zu authentifizieren und Messenger-Services zu administrieren. Die Schnittstelle I_internVerification wird von den Messenger-Proxies aufgerufen, um die Föderationsliste abzurufen und dient zusätzlich der Prüfung (der beteiligten Akteure) auf existierende VZD-FHIR-Einträge. Die Schnittstelle I_requestToken wird vom Org-Admin-Client aufgerufen, um Zugang zum FHIR-Proxy für die Bearbeitung von FHIR-Ressourcen zu erhalten.

  • Messenger-Service
    Ein Messenger-Service besteht aus den Teilkomponenten Messenger-Proxy und einem Matrix-Homeserver. Die Teilkomponente Matrix-Homeserver basiert auf dem offenen Kommunikationsprotokoll Matrix und bietet die Matrix-Client-Server API sowie die Matrix-Server-Server API an. Die Kommunikation zu einem Matrix-Homeserver wird immer über den Messenger-Proxy geleitet, sofern die Berechtigungsprüfung erfolgreich war. Der Messenger-Proxy stellt die Schnittstelle I_TiMessengerContactManagement bereit, um die Administration der Freigabeliste eines Akteurs zu ermöglichen.

  • Push-Gateway
    Das Push-Gateway stellt die Matrix-Push-Gateway API gemäß der Matrix Spezifikation bereit. Dieses ermöglicht die Weiterleitung von Benachrichtigungen an Akteure des TI-Messenger-Dienstes.

  • 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.

  • 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 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 Implementierungsleitfaden des VZD-FHIR-Directory zu entnehmen.

  • Der Zentrale IDP-Dienst der gematik übernimmt die Aufgabe der smartcard-basierten Authentisierung eines Akteures. Hierbei fasst der IDP-Dienst aus der Smartcard notwendige Attribute (z. B. TelematikID, ProfessionOID) in ein signiertes JSON Web Token (ID_TOKEN) zusammen, damit sich ein Client gegenüber Fachanwendungen (Registrierungs-Dienst und VZD-FHIR-Directory) identifizieren kann.

  • Der Authenticator der gematik erhält vom zentralen IDP-Dienst einen AUTHORIZATION_CODE zurück, welcher durch Vorlage vom Registrierungs-Dienst oder vom Auth-Service des VZD-FHIR-Directory am IDP-Dienst durch ein ID_TOKEN ausgetauscht wird.

Ordnerstruktur

Im Folgenden sind die wesentlichen Inhalte des Repositories dargestellt.

TI-Messenger Dokumentation
├─ docs (weiterführende Informationen)
|   ├──── Authenticator
|   ├──── Client
|   ├──── Föderationsliste
|   ├──── Fachdienst
|   ├──── IDP
|   ├──── Primaersystem
|   ├──── Anwendungsfälle
|   ├──── Chatbot
|   ├──── Testkonzept
|   └──── FAQ
├─ images (Bildarchiv)
│   └──── generated (draw.io & PlantUML gerenderte Bilder)
├─ samples (Codebeispiele, Postman Collections, etc)
├─ src (Quellen)
│   ├──── images (Quellen der draw.io- und PlantUML-Diagramme)
│   └──── openapi (Schnittstellenbeschreibungen)
│        ├── TiMessengerContactManagement.yaml (API-Beschreibung der Freigabeliste)
│        └── TiMessengerTestTreiber.yaml (API-Beschreibung der TestTreiber-Schnittstelle)
├── README.adoc
├── CODE_OF_CONDUCT.md
├── CONTRIBUTING.md
├── LICENSE.md
├── Pull_request_template.md
├── SECURITY.md
└── ReleaseNotes.md

💡 Onboarding

Hersteller und Anbieter eines TI-Messenger-Dienstes können das von der gematik im Fachportal bereitgestellte Welcome Package zum Onboarding nutzen. Dieses Welcome Package ist als "Schritt-für-Schritt"-Anleitung gedacht, um Hersteller und Anbieter beim Onboarding des TI-Messenger-Dienstes zu unterstützen.

Weiterführende Seiten

Lizenzbedingungen

Copyright 2023 gematik GmbH

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License.

See the LICENSE for the specific language governing permissions and limitations under the License.

Unless required by applicable law the software is provided "as is" without warranty of any kind, either express or implied, including, but not limited to, the warranties of fitness for a particular purpose, merchantability, and/or non-infringement. The authors or copyright holders shall not be liable in any manner whatsoever for any damages or other claims arising from, out of or in connection with the software or the use or other dealings with the software, whether in an action of contract, tort, or otherwise.

The software is the result of research and development activities, therefore not necessarily quality assured and without the character of a liable product. For this reason, gematik does not provide any support or other user assistance (unless otherwise stated in individual cases and without justification of a legal obligation). Furthermore, there is no claim to further development and adaptation of the results to a more current state of the art.

Gematik may remove published results temporarily or permanently from the place of publication at any time without prior notice or justification.