EDPsync

EDPsync erlaubt eine Live-Austausch von Einsatzdaten zwischen verschiedenen EDP-Systemen. Dabei bildet ein EDP-System als zentrales System den Master-Server, auf dem alle Daten zusammenlaufen und an die anderen Systeme geteilt werden können. Dies erfolgt technisch über eine REST-API und eine Websocket-Connection, die innerhalb von EDPweb aktiviert werden können. Falls EDPweb und damit EDPsync über einen Proxy-Server erreichbar ist, beachten Sie bitte, dass dieser auch Websockets unterstützen muss. Um die übertragenen Daten vor unbefugtem Zugriff durch Dritte zu schützen, muss in EDPweb die SSL-Verschlüsselung aktiviert sein. Erst durch die Aktivierung von SSL können sich die Clientsysteme verbinden. EDPsync unterstützt auch die zusätzliche Authentifizierung mit Client-Zertifikaten, um den Zugriff durch Dritte noch weiter zu erschweren. Eine Anleitung, wie die Zertifikate generiert und dann hinterlegt werden können, ist in einem anderen Artikel erklärt: Erstellen von SSL-Zertifikaten für EDPweb & EDPsync

Technischer Ablauf

Nachdem die API von EDPsync innerhalb von EDPweb aktiviert wurde (siehe unten), kann die Client-Schnittstelle von EDPsync in anderen EDP-Systemen eingebunden werden. Diese verbindet sich zunächst zu einem Authentifizierungs-Endpunkt der API und erhält ein temporäres Access-Token für die eigentliche API. Nach Erhalt des Tokens wird eine Websocket-Connection etabliert. Über diese erhält die Client-Schnittstelle Trigger über Änderungen, so dass diese unmittelbar auch in den angebundenen Systemen übermittelt werden.

EDPsync in EDPweb aktivieren

Bitte beachten Sie, dass die Freischaltung von EDPsync innerhalb von EDPweb eine Lizenzfreischaltung erfordert. Im aktuellen Testbetrieb innerhalb der EDPweb-Version 2.8.2 ist diese Lizenz allerdings noch nicht erforderlich. Anschließend wird für jeden definierten Benutzer mit API-Freischaltung beim Start von EDPweb fest eine Lizenz EDPweb blockiert.

Innerhalb der Konfigurationsdatei „edpweb.ini“ muss folgender Block ergänzt werden:

[API]
;Bei Wert=1 ist die API für die Einsatzdaten aktiv
Aktiv=1
;Bei Wert=1 ist die Abfrage von Stammdaten aktiv
StammDatenSync=1

Konfiguration der Einsatzdaten-API

Der Austausch von Einsatzdaten über die API von EDPsync wird über die Datei „edpapi.ini“ konfiguriert. Bitte legen Sie diese Datei an und ergänzen dort den folgenden Inhalt. Funktionen, die auf den Wert=1 gesetzt sind, sind aktiv geschaltet. Mit der Einstellung Wert=0 kann jede Funktion deaktiviert werden.

[Empfangen]
Einsaetze=1
Einsatzabschluss=1
Rueckmeldungen=1
Verlauf=1
Massnahmen=1
Abschnitte=1
Ereignisse=1
EMDisposition=1
EMStatus=1
EMBesEa=1
EMPos=1
Ressourcen=1
Schaeden=1
Patienten=1
Lagekarte=1


[Senden]
Einsaetze=1
Einsatzabschluss=1
Rueckmeldungen=1
Verlauf=1
Massnahmen=1
Abschnitte=1
Ereignisse=1
EMDisposition=1
EMStatus=1
EMBesEa=1
EMPos=1
Ressourcen=1
Schaeden=1
Patienten=1
Lagekarte=1

Konfiguration der Stammdaten-API

Die Bereitstellung von Stammdaten über die API von EDPsync wird über die Datei „stammdatensync.ini“ konfiguriert. Diese Datei muss zunächst manuell angelegt werden. Hier kann individuell festgelegt werden, welche Stammdaten bereitgestellt werden sollen.

Die erfolgt nach folgendem Schema:

[TABELLE]
Felder=Feld1,Feld2,...

So können Sie individuell festlegen, welche Tabellen mit welchen Feldern bereitgestellt werden. Nachfolgend finden Sie eine Beispielkonfiguration.

[STRASSEN]
Felder=ID,STRASSE,ORT,ORTSTEIL,KOORDX,KOORDY

[HAUSNUMMERN]
Felder=ORT,ORTSTEIL,STRASSE,HAUSNUMMER,KOORDX,KOORDY,PLZ

[OBJEKTE]
Felder=ID,OBJEKT,SYNONYM,POS,ORT,ORTSTEIL,PLZ,STRASSE,HAUSNUMMER,NUMMER,ANFAHRT,HINWEIS,OBJEKTINFORMATIONEN,TELEFON,OBJEKTTYP,KOORDX,KOORDY,MAPICON,MAPVISIBLE

[EINSATZMITTEL]
Felder=RUFNAME,STANDORT,WACHE,TYP

[STICHWORTE]
Felder=EINSATZART,EINSATZART_KLARTEXT,STICHWORT,STICHWORT_KLARTEXT,SONDERSIGNAL,PRIORITAET,NOUNWETTER

[WACHEN]
Felder=BEZEICHNUNG,NUMMER,KOORDX,KOORDY

[HYDRANTEN]
Felder=ORT,ORTSTEIL,STRASSE,BEREICH,BEMERKUNGEN,KOORDX,KOORDY,TYP,ROHR

[KONTAKTE]
Felder=NAME,FUNKTION,ADRESSE,TELEFON_1,TELEFON_2,TELEFON_MOBIL,FAX,EMAIL,FME,BEMERKUNG,FREITEXT,SYNONYME

Einrichten von EDPsync-Benutzern

Damit sich andere Systeme per Schnittstelle zur API von EDPsync verbinden können, wird für jedes verbundene System ein Benutzer im Mastersystem benötigt, der für die API freigegeben ist. Dafür muss zuerst die API in der Konfigurationsdatei wie oben beschrieben aktiviert und danach EDPweb neugestartet werden. Beim Starten der API wird dann eine Flag in der Datenbank aktiviert, die die Erstellung von Benutzern mit EDPsync Freigabe in der Datenversorgung ermöglicht.

Das Erstellen eines EDPsync-Benutzers läuft in den ersten Schritten identisch mit der bereits bekannten Erststellung eines Benutzers ab. Das heißt es, wird zuerst ein Benutzername und Passwort erstellt. Diese erstellten Zugangsdaten müssen dann im Clientsystem in der Schnittstelle angegeben werden. Weiterhin muss im Mastersystem der angelegte Benutzer für die API freigegeben werden und dann kann noch eine Benutzerrolle bestimmt werden, die den Zugriff des Clientsystems auf Daten regelt. Dieses Berechtigungssytem wird im folgenden Abschnitt tiefergehend erläutert.

Darstellung Benutzernamen in Fremdsystemen

Um bei einem Austausch von Daten direkt nachvollziehen zu können, von wem die Daten eingegeben wurden, kann der lokale Benutzernamen in anderen Systemen erweitert dargestellt werden. Je nach Anbindung und einsatztaktischer Nutzung von EDPsync können verschiedene Formen sinnvoll sein. Die Darstellung kann in der „EDPapi.ini“ angepasst werden:

 
[Benutzer]
; 0={EDPsync-Benutzer}, 1={lokaler Benutzer}, 2={EDPsync-Benutzer}{Trennzeichen}{lokaler Benutzer}
NameModus=2
NameTrennzeichen=_

Es stehen drei Modi zur Auswahl:

  • 0: Darstellung über Namen des EDPsync-Benutzers
  • 1: Darstellung über Namen des lokalen Benutzers
  • 2: Darstellung über Kombination aus EDPsync- und lokalem Benutzer, getrennt durch das NameTrennzeichen

Beispielhaft kann beim EDPsync Benutzer „Musterstadt“ und dem lokalen Benutzer „Fernmelder“ die Bezeichnung so aussehen:

  • 0: Musterstadt
  • 1: Fernmelder
  • 2: Musterstadt_Fernmelder

Freigabe von Einsatzdaten

EDPsync verfügt über ein Rollen- und Freigabesystem, um Clientsystemen gezielt Daten zur Verfügung zu stellen und unbefugten Zugriff auf z.B. Einsatzdaten zu vermeiden. Dafür kann jedem Benutzer eine Benutzerrolle zugewiesen werden, die die Datenfreigabe regelt. Falls ein Benutzer alle Einsatzdaten eines Masterservers erhalten soll, kann das Rollenfeld einfach leer gelassen werden. Standardmäßig gibt es drei Möglichkeiten, wie ein Einsatz einem Benutzer freigegeben wird:

Freigabe über Einsatzort

Bei der Freigabe über den Einsatzort muss die Rolle des Benutzers identisch mit dem Feld „Ort“ des angelegten Einsatzes sein. Dabei ist vor allem auf eine konsistente Datenpflege mit einheitlichen Ortsnamen zu achten. Beispielhaft ist der folgende Einsatz für alle Benutzer freigegeben, deren Benutzerrolle „Musterhausen“ ist:

Freigabe über Einsatzmittel

Weiterhin kann die automatisierte Freigabe von Einsätzen über den Standort der zugewiesenen Einsatzmittel geschehen. Dabei muss das Feld „Standort“ des Einsatzmittels identisch mit der Rolle des jeweiligen Benutzers sein.

Freigabe über Aufgabe

Die Freigabe für einen Einsatz kann auch manuell über eine Aufgabe geschehen. Diese Aufgabe kann in der Datenversorgung erstellt werden und wie von anderen Aufgaben gewohnt, automatisch durch verschiedene Trigger oder per Hand im Einsatzleitplatz ausgelöst werden. Auch ist die Auslösung der Aufgabe bei Zuteilung eines bestimmten Einsatzmittels möglich, wodurch z.B. das Szenario eines abgesetzten EDP-Systems in einem ELW abgebildet werden kann, ohne den Standort des Einsatzmittels ändern zu müssen. Bei Erstellung der Aufgabe ist als Wert die freizugebene Benutzerrolle anzugeben.

Freigabe über Datenbank-Trigger

Eine besonders flexible Möglichkeit eines Einsatzes bieten sogenannte Datenbank-Trigger, die auf Datenänderungen direkt in der Datenbank reagieren können und basierend darauf Freigaben erteilen.

Wichtig: Das direkte Schreiben in der Datenbank wird nur SQL-Erfahrenen Kunden empfohlen, da jede falsche Konfiguration zum Ausfall von EDPsync führen kann. Bei Fragen und Konfigurationswünschen, die nicht mit den vorher beschriebenen Freigabeverfahren möglich sind, wenden Sie sich bitte an unseren Support.

Besonderheit: Freigabe Einsatzabschluss

Um ein vorzeitiges Abschließen eines Einsatzes auf Masterserverebene zu vermeiden, wurde eine zusätzliche Freigabestufe eingeführt, die direkt von der Benutzerrolle abhängig ist. Diese Stufe sorgt dafür, dass Einsätze global nur von Benutzern abgeschlossen werden können, die als Benutzerrolle den Ort des Einsatzes haben und damit vermeintlich die Einsatzleitung verantworten. Jeder andere Benutzer kann den Einsatz nur lokal schließen und den Einsatzabschluss nicht auf den Masterserver übertragen.

Falls dieses Verhalten nicht gewollt ist, kann in der edpapi.ini folgender Abschnitt hinterlegt werden:

[Allgemein]
EinsatzAbschlussRes=0

Dadurch kann jetzt jedes angebundene System einen Einsatz schließen, wenn es die normalen Zugriffsrechte hat.

Zeitsynchronisation

Die richtige Uhrzeit auf allen beteiligten Systemen ist eine wichtige Vorraussetzung für eine reibungslose Synchronisation, da über Zeitstempel die Aktualität von Daten bestimmt wird und damit entschieden wird, welche Daten ins Mastersystem übernommen werden. Eine Anleitung zur Vornahme aller wichtigen Zeiteinstellungen finden Sie unter folgendem Link: Zeitsynchronisation

API-Beschreibung