Zum Hauptinhalt springen

Eigene Integrationen

Eigene Integrationen sind eine Funktion in Vetera, mit der Sie Anfragen an externe Ressourcen direkt aus Vetera heraus senden können. Um Zugriff auf diese Funktion zu erhalten, kontaktieren Sie die Vetera Unterstützung.

Verwaltung

Verwalten Sie eigene Integrationen in Einstellungen > Integration > Eigene Integrationen.

  • Um eine Integration hinzuzufügen, wählen Sie die Schaltfläche hinzufügen.

  • Um eine Integration zu bearbeiten, wählen Sie die Schaltfläche pen in der Tabellenzeile.

Einstellungen

Feld

Beschreibung

Name

Gibt die Kennzeichnung auf der Schaltfläche an, die in der Benutzeroberfläche sichtbar ist.

Sichtbare Seite

Gibt an, auf welcher Seite die Schaltfläche sichtbar ist. Jede eigene Integration kann nur auf einer Seite angezeigt werden, aber dieselbe Konfiguration kann dupliziert werden.

Aktion

Gibt an, welche Aktion ausgeführt wird, wenn die Schaltfläche ausgewählt wird.

HTTP Methode

Gibt an, ob die Anfrage als GET-Anfrage gesendet wird (Nutzlast als Parameter in der Query-String) oder als POST-Anfrage (Nutzlast als Formulardaten).

URL

Die Ziel-URL, vollständig mit Schema.

Parametername

Der Name des Parameters, der beim Übergeben der ID des aktuellen Objekts verwendet wird.

Ermöglicht

Ermöglicht das Aktivieren und Deaktivieren einer eigenen Integration. Eigene Integrationen können auch gelöscht werden, wenn sie nicht mehr benötigt werden.

Bestätigungssalz

Ein geteilter geheimer Schlüssel, der zur Berechnung des Bestätigungs-Hashs verwendet wird. Erforderlich, wenn der Bestätigungs-Hash aktiviert ist.

Konfigurationsoptionen

  • Bestätigungs-Hash hinzufügen: Aktiviert einen Bestätigungs-Hash in der Nutzlast, der verwendet werden kann, um zu überprüfen, dass die Anfrage von der eigenen Integration stammt.

  • Nutzlast in Verifikationshash einbeziehen: Diese Option berechnet den Bestätigungs-Hash neu und verwendet dabei die vollständige Nutzlast inklusive Benutzer- und Kunden ID.

  • Informationen zu Organisation und Abteilung hinzufügen: Diese Option bindet die erforderlichen Organisations- und Abteilungsinformationen automatisch ein. Vetera übermittelt diese Parameter in der Anfrage: Vetera name (organization core), Vetera ID (product organization ID) und Abteilung ID.

Vorsilbe für den Parameterwert

Es ist möglich, eine eigene Vorsilbe für den Parameterwert hinzuzufügen, indem der Parametername anders angegeben wird.

Kopfzeilen

Hintergrundanfragen („HTTP Anfrage senden“) können beliebige statische Werte erhalten, die zu den Anfragen hinzugefügt werden.

  • So können Sie Autorisierungs-Kopfzeilen in die Anfragen einbinden.

  • Diese Funktion ist nicht für Vordergrundanfragen („In neuer Registerkarte öffnen“, „Offene Seitenwand“) implementiert. Gesendete Kopfzeilen werden außerdem nicht protokolliert.

Fracht Information

Die Ansicht „Einstellungen“ zeigt eine Liste der Nutzlast-Schlüssel und -Werte an, die mit der Anfrage gesendet werden. Diese Liste wird aktualisiert, wenn die Einstellungen geändert werden.

CI2.png

Aktionstypen

1. HTTP Anfrage senden

Eine Anfrage wird im Hintergrund geplant und über die Server von Vetera gesendet. Benutzer sehen die Webseite nicht, können aber eine Benachrichtigung sehen, wenn der Sendevorgang fortschreitet.

  • Die Anfrage stammt von den ausgehenden IP-Adressen von Vetera.

  • Das Senden erfolgt asynchron, und es kann eine Verzögerung geben – abhängig davon, wie viel Arbeit aktuell auf den Servern läuft.

  • Oben auf der Seite sehen Sie eine Informationsbenachrichtigung, sobald die Anfrage geplant wird.

  • Wenn die Anfrage erfolgreich gesendet wurde und die Integration mit einem erfolgreichen HTTP Statuscode antwortet (zwischen 200 und 299 inklusive), wird eine Erfolgsmeldung angezeigt.

  • Wenn die Anfrage fehlschlägt, wird eine Fehlermeldung mit dem Text „Integration request failed“ angezeigt. Zusätzlich wird in der Klammer eine genauere Fehlermeldung ausgegeben.

Fehlermeldung

Beschreibung

Backend error

Auf den Worker-Servern von Vetera ist ein unbekannter Fehler aufgetreten. Kontaktieren Sie den Vetera-Support für zusätzliche Informationen.

Verbindungsfehler

Die Anfrage, um das Senden zu planen, ist nicht durchgegangen.

Data error

Die Anfrage, um das Senden zu planen, enthielt ungültige Daten.

Integration error

Die Anfrage wurde zwar erfolgreich gesendet, aber die Integration hat mit einem nicht-erfolgreichen HTTP Statuscode geantwortet (kleiner als 200 oder größer als 299).

2. In neuer Registerkarte öffnen

Die Ziel-URL wird in einem neuen Fenster oder Browser-Tab geöffnet.

  • Wenn eine GET-Anfrage verwendet wird, können Benutzer die Fracht Information sehen, die in der Adresszeile des Browsers angezeigt wird.

3. Offene Seitenwand

Die Ziel-URL wird in Vetera eingebettet, indem eine Seitenwand über den Inhalt der Seite geöffnet und die Seite als iframe angezeigt wird.

  • Die Ziel-URL muss das Einbetten unterstützen (der Kopfzeile „X-Frame-Options“ muss korrekt gesetzt sein).

Verwendung

Eigene Integrationen werden als Schaltflächen auf den Zielseiten dargestellt.

  • Wenn für eine Seite nur eine Integration eingerichtet ist, wird sie als normale Schaltfläche dargestellt.

  • Wenn eine Seite mehrere Integrationen hat, werden sie als Dropdown-Menü dargestellt.

Eigene Integrationen senden nur die relevante Objekt-ID (Kunden ID, Patienten-ID, Rechnungs-ID, usw.), die über die Vetera REST API abgefragt werden kann.

Seite

Schaltflächenposition

ID als Parameter gesendet

Kunde

Rechtsseitig, oberhalb des Bereichs „Anmerkungen“ (nicht in den Patiententabs).

Kunden ID

Patient

Rechtsseitig, oberhalb des Bereichs „Anmerkungen“ (nicht in den Kundentabs).

Patienten-ID

Rechnung

In der unteren Symbolleiste der Rechnungsseiten (einschließlich Direktverkauf).

Rechnungs-ID (nicht die Rechnungsnummer)

Konsultation

Oberhalb des Bereichs „Allgemeine Angaben“, für sowohl fortlaufende als auch beendete Konsultationen.

Konsultations-ID

Terminkalender

Oben im Terminkalender.

Aktive Klinik Standort ID

Dienstplan

Oben im Dienstplan.

Aktive Klinik Standort ID

Bildgebende Diagnostik

Auf der Seite „Überweisung zur diagnostischen Bildgebung“ in den oberen und unteren Symbolleisten.

Überweisung der diagnostischen Bildgebung ID

Erinnerung

In der Auswahl-Symbolleiste auf der Erinnerungsseite, wenn eine oder mehrere Erinnerungen ausgewählt sind.

Erinnerung ID für jede ausgewählte Erinnerung

Protokoll

Anfragen, die im Hintergrund gesendet werden („HTTP Anfrage senden“), werden für Bestätigung und Prüfung in einem internen Protokoll erfasst.

CI3.png
CI4.png
  1. Wechseln Sie zu Einstellungen > Integration > Eigene Integrationen > Protokoll.

  2. In der Protokollansicht werden alle erstellten Anfragen angezeigt, beginnend mit der neuesten Anfrage.

  3. Weitere Informationen in der Detailansicht finden Sie, indem Sie die Schaltfläche mit dem Auge rechts in jeder Zeile auswählen.

Hinweis: Die Protokollierung wird nicht für Vordergrundanfragen durchgeführt („In neuer Registerkarte öffnen“, „Offene Seitenwand“).

Bestätigungssalz & Hashes

Die Option „Bestätigungssalz“ ist nur sichtbar, wenn „Bestätigungs-Hash hinzufügen“ ausgewählt ist. Zusätzlich wird „Nutzlast in Verifikationshash einbeziehen“ ebenfalls angezeigt, wenn „Bestätigungs-Hash hinzufügen“ ausgewählt ist.

Basierend auf der Kombination der Zulassung wird der Bestätigungs-Hash wie folgt berechnet:

1. Bestätigungssalz aktiviert, „include payload in verification option“ deaktiviert -> Hash berechnet als:Hexadezimale Bestätigung MD5 Hash digest, z.B.: "4e531ee13aa16886db72bc1621206d2f". Der Hash wird generiert, indem das Bestätigungssalz nach dem enthaltenen Zeitstempel angehängt wird („2018-07-15T09:12:54+00:00Mein Bestätigungssalz“). [string]2. Bestätigungssalz aktiviert, „include payload in verification option“ aktiviert, „Informationen zu Organisation und Abteilung hinzufügen“ DISABLED -> Hash berechnet als:Hexadezimale Bestätigung MD5 Hash digest, z.B.: "23ae5385b3862a571f1b5d6f6b469b1c". Der Hash wird berechnet mit: "<timestamp><salt><parameter_name><object_id>user_id<user_id>" („2018-07-15T09:12:54+00:00Mein Bestätigungssalzpatient_id1234user_id56“). [string]3. Bestätigungssalz aktiviert, „include payload in verification option“ aktiviert, „Informationen zu Organisation und Abteilung hinzufügen“ AKTIVIERT -> Hash berechnet als:Hexadezimale Bestätigung MD5 Hash digest, z.B.: "163049a017bb405d4bfec754810c9838". Der Hash wird berechnet mit: "<timestamp><salt><parameter_name><object_id>user_id<user_id>provet_env<provet_env>provet_id<provet_id>department_id<department_id>" („2018-07-15T09:12:54+00:00Mein Bestätigungssalzpatient_id1234user_id56provet_envenvprovet_id12345department_id12“). [string]

Bestätigungshashes können als zusätzliche Validierung verwendet werden, um zu überprüfen, welche Anfragen von der Vetera eigenen Integration stammen.

  • Wenn aktiviert, wird eine zusätzliche Variable namens „verification“ zu den Anfragen hinzugefügt.

  • Diese Variable ist eine MD5 Hash digest des Zeitstempels und des Bestätigungssalzes.

  • Für das Senden im Hintergrund wird der Zeitstempel erzeugt, wenn die Anfrage tatsächlich gesendet wird.

  • Für das Senden im Vordergrund wird der Zeitstempel erzeugt, wenn eine Seite geladen wird, die die Schaltfläche der eigenen Integration enthält.

Zum Beispiel, um zu überprüfen, dass der Bestätigungs-Hash in Python gültig ist, könnte man eine Funktion wie diese schreiben:

from hashlib import md5VERIFICATION_SALT = "Mein Bestätigungssalz"def is_verification_hash_valid(parameters):    hasher = md5()    hasher.update(parameters.timestamp.encode("utf8"))    hasher.update(VERIFICATION_SALT.encode("utf8"))    return hasher.hexdigest() == parameters.verification

Zweiseitige Kommunikation mit Vetera

Vetera ermöglicht eine begrenzte Menge zweiseitiger Kommunikation mit eigenen Integrationen, die im Vordergrund geöffnet werden, über die API Window.postMessage().

  • Der einzige gültige Befehl ist „reload“.

    function refreshVeteraCloud() {    window.opener.postMessage("reload","*");}
  • Dieser Befehl führt einen vollständigen Seiten-Neuladevorgang im Fenster oder Tab aus, der die eigene Integration geöffnet hat.

  • Das kann nützlich sein, wenn die eigene Integration Vetera-Daten über die REST API aktualisiert.

Siehe auch

Hat dies deine Frage beantwortet?