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 den Vetera-Support.
Verwaltung
Verwalten Sie eigene Integrationen unter Einstellungen > Integrationen > Eigene Integrationen.
Um eine Integration hinzuzufügen, wählen Sie den hinzufügen-Button.
Um eine Integration zu bearbeiten, wählen Sie den pen-Button in der entsprechenden Tabellenzeile.
Einstellungen
Feld | Beschreibung |
Name | Legt die Kennzeichnung am Button fest, der in der Benutzeroberfläche sichtbar ist. |
Legt fest, auf welcher Seite der Button sichtbar ist. Jede eigene Integration kann nur auf einer Seite sichtbar sein, die gleiche Konfiguration kann jedoch dupliziert werden. | |
Aktion | Legt fest, welche Aktion ausgeführt wird, wenn der Button ausgewählt wird. |
HTTP Methode | Legt fest, 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 inklusive Schema. |
Parametername | Der Name des Parameters, der verwendet wird, um die ID des aktuellen Objekts zu übergeben. |
Ermöglicht | Ermöglicht das Aktivieren und Deaktivieren einer eigenen Integration. Eigene Integrationen können außerdem gelöscht werden, wenn sie nicht mehr benötigt werden. |
Bestätigungssalz | Ein gemeinsames Geheimnis, das zur Berechnung des Bestätigungs-Hashes 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 prüfen, dass die Anfrage von der eigenen Integration stammt.
Nutzlast in Verifikationshash einbeziehen: Diese Option berechnet den Bestätigungs-Hash neu, indem die vollständige Nutzlast verwendet wird, einschließlich Benutzer- und Kunden IDs.
Informationen zu Organisation und Abteilung hinzufügen: Diese Option bindet die erforderlichen Informationen zu Organisation und Abteilung automatisch ein. Vetera übermittelt diese Parameter in der Anfrage: Vetera name (organization core), Vetera ID (product organization ID) und Abteilung ID.
Parameterwert voranstellen
Es ist möglich, dem Parameterwert eine eigene Vorsilbe hinzuzufügen, indem der Parametername anders angegeben wird.
Wenn Sie z. B. den Parametername als 'id=client_' definieren, wird eine Anfrage wie https://example.com/?id=client_1 gesendet.
Kopfzeilen
Hintergrundanfragen ('HTTP Anfrage senden') können beliebige, statische Werte erhalten, die den Anfragen hinzugefügt werden.
Dies kann genutzt werden, um Autorisation-Kopfzeilen in Anfragen aufzunehmen.
Diese Funktion ist nicht für Vordergrundanfragen ('In neuem Fenster öffnen', 'Offene Seitenwand') implementiert. Gesendete Kopfzeilen werden außerdem nicht protokolliert.
Fracht Information
Die Ansicht der Einstellungen zeigt eine Liste der Nutzlastschlüssel und -werte, die zusammen mit der Anfrage gesendet werden. Diese Liste wird aktualisiert, wenn die Einstellungen geändert werden.
Aktionstypen
1. HTTP Anfrage senden
Eine Anfrage wird im Hintergrund geplant und über die Server von Vetera gesendet. Benutzer sehen die Webseite nicht, ggf. wird jedoch eine Benachrichtigung angezeigt, während das Senden fortschreitet.
Die Anfrage stammt von den ausgehenden IP-Adressen von Vetera.
Das Senden erfolgt asynchron, und es kann je nach aktueller Auslastung der Server zu Verzögerungen kommen.
Wenn die Anfrage geplant wird, sehen Sie eine Informationsbenachrichtigung oben auf der Seite.
Eine Erfolgsbenachrichtigung wird angezeigt, wenn die Anfrage erfolgreich gesendet wurde und die Integration mit einem erfolgreichen HTTP Statuscode antwortet (zwischen 200 und 299, einschließlich).
Wenn die Anfrage fehlschlägt, wird eine Fehlermeldung mit der Angabe 'Integration request failed' angezeigt; in Klammern erhalten Sie eine genauere Fehlermeldung.
Fehlermeldung | Beschreibung |
Backend-Fehler | Auf den Worker-Servern von Vetera ist ein unbekannter Fehler aufgetreten. Kontaktieren Sie den Vetera-Support für zusätzliche Informationen. |
Verbindungsfehler | Das Planen des Sendens hat nicht geklappt. |
Datenfehler | Die Anfrage zum Planen des Sendens enthielt ungültige Daten. |
Integrationsfehler | Die Anfrage wurde erfolgreich gesendet, aber die Integration hat auf einen nicht erfolgreichen HTTP Statuscode geantwortet (kleiner als 200 oder größer als 299). |
2. In neuem Fenster ö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 Adressleiste des Browsers angezeigt wird.
3. Offene Seitenwand
Die Ziel-URL wird in Vetera eingebettet, indem oben auf dem Seiteninhalt eine Seitenwand 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 auf Zielseiten als Buttons dargestellt.
Wenn nur eine Integration für eine Seite eingerichtet ist, wird sie als normaler Button dargestellt.
Wenn eine Seite mehrere Integrationen hat, werden sie als Dropdown-Menü dargestellt.
Eigene Integrationen senden ausschließlich die relevante Objekt-ID (Kunden ID, Patienten-ID, Rechnungs-ID usw.), die über die Vetera REST API abgefragt werden kann.
Seite | Button Position | ID als Parameter senden |
Kunde | Rechts, oberhalb des Bereichs 'Anmerkungen' (nicht in den Patienten-Tabs). | Kunden ID |
Patient | Rechts, oberhalb des Bereichs 'Anmerkungen' (nicht in den Kunden-Tabs). | Patienten-ID |
Rechnung | In der unteren Symbolleiste der Rechnungsseiten (einschließlich Direktverkauf). | Rechnungs-ID (nicht die Rechnungsnummer) |
Konsultation | Oberhalb des Bereichs 'Allgemeines', für sowohl fortlaufende als auch fertige Konsultationen. | Konsultations-ID |
Termin Kalender | Oben auf dem Termin-Kalender. | Aktuelle Klinik Standort ID |
Schicht Kalender | Oben auf dem Schicht-Kalender. | Aktuelle Klinik Standort ID |
Bildgebende Diagnostik | Auf der Seite 'Überweisung zur diagnostischen Bildgebung' in den oberen und unteren Symbolleisten. | Überweisung der diagnostischen Bildgebung ID |
Erinnerungen | In der Symbolleiste in der Erinnerungsseite, wenn eine oder mehrere Erinnerungen ausgewählt sind. | Erinnerungs-ID für jede ausgewählte Erinnerung |
Protokoll
Anfragen, die im Hintergrund gesendet werden ('HTTP Anfrage senden'), werden in einem internen Protokoll zur Verifizierung und zur Nachvollziehbarkeit erfasst.
Gehen Sie zu Einstellungen > Integrationen > Eigene Integrationen > Protokoll.
In der Protokollansicht werden alle erstellten Anfragen aufgelistet, beginnend mit der neuesten Anfrage.
Sehen Sie weitere Informationen in der Detailansicht, indem Sie den Augensymbol-Button auf der rechten Seite jeder Zeile auswählen.
Hinweis
Bei Vordergrundanfragen ('In neuem Fenster öffnen', 'Offene Seitenwand') wird keine Protokollierung durchgeführt.
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“ auch 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 aktiv, „include payload in verficiation 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“ DEAKTIVIERT -> 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 prüfen, welche Anfragen von der Vetera eigenen Integration stammen.
Wenn aktiviert, wird den Anfragen ein zusätzlicher Parameter namens „verification“ hinzugefügt.
Dieser Parameter ist ein MD5 Hash digest des Zeitstempels und Bestätigungssalzes.
Beim Senden im Hintergrund wird der Zeitstempel erzeugt, wenn die Anfrage tatsächlich gesendet wird.
Beim Senden im Vordergrund wird der Zeitstempel erzeugt, wenn eine Seite geladen wird, die den Button der eigenen Integration enthält.
Beispielsweise, um zu prüfen, dass der Bestätigungs-Hash in Python gültig ist, könnte man eine Funktion wie diese schreiben:
from hashlib import md5VERIFICATION_SALT = "My custom verification salt"def is_verification_hash_valid(parameters): hasher = md5() hasher.update(parameters.timestamp.encode("utf8")) hasher.update(VERIFICATION_SALT.encode("utf8")) return hasher.hexdigest() == parameters.verificationZwei-Wege-Kommunikation mit Vetera
Vetera erlaubt eine begrenzte Menge an Zwei-Wege-Kommunikation mit eigenen Integrationen, die im Vordergrund geöffnet werden, über die Window.postMessage()-API.
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.
Dies kann hilfreich sein, wenn die eigene Integration Vetera-Daten über die REST API aktualisiert.