Dies ist eine alte Version des Dokuments!
Schnittstelle Dräger SRS
Allgemein
Die Schnittstelle von EDP zu Dräger SRS unterstützt folgende Funktionen:
| Funktion | Daten senden | Daten empfangen |
|---|---|---|
| Einsatzdaten | ✔ | ✘ |
✔ = Die Schnittstelle unterstützt diese Funktion. ✘ = die Schnittstelle unterstützt diese Funktion nicht. (Leer) = Entfällt.
Über die Schnittstelle Dräger SRS können Einsatzdaten an Dräger SRS gesendet werden. Hierdurch werden die Grunddaten des Einsatzes sowie die zu alarmierenden Einheiten übertragen.
Funktionsweise
Die Einsatzdaten werden per HTTP-POST-Request an den Endpunkt „/public/v1/external-deployments'' des Dräger SRS Servers gesendet. Die Daten werden dabei als JSON-Payload übertragen.
Konfiguration
Die Konfiguration der Schnittstelle erfolgt über die EDP-Oberfläche. Folgende Parameter müssen konfiguriert werden:
- Server-URL: Die Basis-URL des MedDV NIDA Gateways (z.B.
https://nida.example.com). - API-Key: Der für die Authentifizierung am Gateway benötigte API-Schlüssel.
- SQL-Abfrage: Da je nach Projekt die Feldzuordnung variieren kann, muss innerhalb der Schnittstelle eine SQL-Abfrage hinterlegt werden. Innerhalb der Abfrage müssen die Felder so umbenannt werden (mittels Alias, z.B.
SELECT einsatz_id AS id FROM …), dass sie identisch mit den von dem Gateway erwarteten Feldbezeichnungen sind.
Die SQL-Abfrage kann den Platzhalter %EINSATZNUMMER% enthalten, welcher durch die aktuelle Einsatznummer Mittels ersetzt wird.
Folgende SQL-Abfrage kann als Basis genutzt werden:
SELECT CONCAT(E.EINSATZNUMMER,'_',em.rufname) AS alarmingId, 'EDP' AS controlCenterId, (SELECT EXTERNAL_ID FROM einsatzmittel WHERE RUFNAME=em.rufname) AS callSign, RIGHT(E.EINSATZNUMMER,6) AS missionNumber, CONCAT(E.EINSATZNUMMER,'_',em.rufname) AS missionNumberGlobal, (SELECT TYP FROM einsatzmittel WHERE RUFNAME=em.rufname) AS resourceType, (SELECT GROUP_CONCAT(eme.rufname ORDER BY eme.rufname SEPARATOR ', ') FROM em_einsaetze eme WHERE eme.einsatznummer = e.einsatznummer) AS involvedCallsigns, EINSATZART AS missionType, STICHWORT AS controlCentertransportType, SONDERSIGNAL <> 0 AS flashingLights, SCHLAGWORT AS missionCode1Text, MELDUNG AS missionCode2Text, E.OBJEKTNAME AS missionLocationEstablishment, E.STATION AS missionLocationEstablishment2, E.BEMERKUNG AS missionLocationComment, E.STRASSE AS missionLocationStreet, E.HAUSNUMMER AS missionLocationHousenumber, E.PLZ AS missionLocationZipCode, E.ORT AS missionLocationPlace, E.ORTSTEIL AS missionLocationDistrict, E.KOORDY AS missionLatitude, E.KOORDX AS missionLongitude, E.ZOBJEKTNAME AS targetEstablishment, E.ZSTATION AS targetEstablishment2, E.ZSTRASSE AS targetStreet, E.ZHAUSNUMMER AS targetHousenumber, E.ZPLZ AS targetZipCode, E.ZORT AS targetPlace, E.ZORTSTEIL AS targetDestrict, P.NAME AS patientLastName, P.VORNAME AS patientFirstName, IF(STR_TO_DATE(P.GEBDATUM, '%d.%m.%Y') IS NOT NULL, STR_TO_DATE(P.GEBDATUM, '%d.%m.%Y'), NULL) AS patientBirthday, CONVERT_TZ(em.alarmiert, @@session.time_zone, '+00:00') AS missionStatusAlarm, CONVERT_TZ(em.status1, @@session.time_zone, '+00:00') AS missionStatus3, CONVERT_TZ(em.status2, @@session.time_zone, '+00:00') AS missionStatus4, CONVERT_TZ(em.status3, @@session.time_zone, '+00:00') AS missionStatus7, CONVERT_TZ(em.status4, @@session.time_zone, '+00:00') AS missionStatus8, CONVERT_TZ(em.status5, @@session.time_zone, '+00:00') AS missionStatus1, CONVERT_TZ(em.status6, @@session.time_zone, '+00:00') AS missionStatus2 FROM einsaetze e INNER JOIN em_einsaetze em ON e.einsatznummer=%EINSATZNUMMER% and e.EINSATZNUMMER=em.einsatznummer LEFT JOIN patienten P ON p.einsatznummer=e.einsatznummer;
Der Parameter „controlCenterID“, der Beispielhaft mit EDP gefüllt ist, kann natürlich mit der eigenen Organisationsbezeichnung angepasst werden.
Auslösung der Schnittstelle
Die Schnittstelle selbst kann über Aufgaben ausgelöst werden. Das heißt, dass einerseits bei Zuteilung eines Einsatzmittels bzw. der Alarmierung über die Aufgabe die Einsatzübertragung erfolgen kann. Zudem lässt sich auch zu einem späteren Zeitpunkt erneut eine Übertragung anstoßen.
Besonderheiten
Hierbei ist auch zu beachten, dass die Statuszeiten immer nur übertragen werden, wenn eine erneute Auslösung der Schnittstelle erfolgt. Die Schnittstelle liest die zum Zeitpunkt der Ausführung aktuellen Daten aus der Datenbank gemäß der konfigurierten SQL-Abfrage.