Eigene Integrationen sind eine Funktion in Vetera, mit der Sie Anfragen an externe Ressourcen von innerhalb von Vetera aus senden können. Um Zugriff auf diese Funktion zu erhalten, kontaktieren Sie den Vetera-Support.
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. |
Gibt an, auf welcher Seite die Schaltfläche sichtbar ist. Jede eigene Integration kann nur auf einer Seite sichtbar sein, 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 wird als Parameter in der Abfragezeichenfolge übergeben) oder als POST-Anfrage (Nutzlast wird als Formulardaten übergeben). |
URL | Die Ziel-URL, vollständig inklusive Schema. |
Parametername | Der Name des Parameters, der verwendet wird, um die ID des aktuellen Objekts zu übergeben. |
Aktiviert | 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 geteimtes 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 zur Überprüfung verwendet werden kann, 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 der Benutzer- und Kunden-IDs.
Informationen zu Unternehmen und Abteilung hinzufügen: Diese Option umfasst die erforderlichen Informationen zu Organisation und Abteilung automatisch. Vetera übermittelt diese Parameter in der Anfrage: Name von Vetera (Organisation core), ID von Vetera (Produkt-Organisation-ID) und Abteilung ID.
Vorsetzen des Parameterwerts
Es ist möglich, einen benutzerdefinierten Vorsatz für den Parameterwert hinzuzufügen, indem der Parametername anders angegeben wird.
Wenn Sie z. B. den Parametername als „id=client_“ definieren, wird eine Anfrage gesendet wie https://example.com/?id=client_1.
Kopfzeilen
Hintergrundanfragen („HTTP Anfrage senden“) können beliebige statische Werte erhalten, die zu den Anfragen hinzugefügt werden.
Damit können Autorisation-Kopfzeilen in Anfragen aufgenommen werden.
Diese Funktion ist für Vordergrundanfragen („In neuem Fenster öffnen“, „Offene Seitenwand“) nicht implementiert. Gesendete Kopfzeilen werden außerdem nicht protokolliert.
Fracht Informationen
Die Ansicht „Einstellungen“ zeigt eine Liste von Nutzlast-Schlüsseln und -Werten an, die mit der Anfrage gesendet werden. Diese Liste wird aktualisiert, sobald die Einstellungen geändert werden.
Aktionstypen
1. HTTP Anfrage senden
Eine Anfrage wird im Hintergrund geplant und über die Server von Vetera gesendet. Nutzer sehen nicht die Webseite, aber möglicherweise eine Benachrichtigung, während das Senden fortschreitet.
Die Anfrage stammt von den ausgehenden IP-Adressen von Vetera.
Das Senden erfolgt asynchron, und es kann eine Verzögerung geben, abhängig von der aktuell anfallenden Arbeit auf den Servern.
Oben auf der Seite sehen Sie eine Informationsbenachrichtigung, sobald die Anfrage geplant wird.
Eine Erfolgsbenachrichtigung wird angezeigt, wenn die Anfrage erfolgreich gesendet wurde und die Integration mit einem erfolgreichen HTTP Statuscode antwortet (zwischen 200 und 299, inklusiv).
Wenn die Anfrage fehlschlägt, wird eine Fehlermeldung mit dem Text „Integration request failed“ angezeigt. Eine genauere Fehlermeldung wird in Klammern 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 zum Planen des Sendens wurde nicht verarbeitet. |
Datenfehler | Die Anfrage zum Planen des Sendens enthielt ungültige Daten. |
Integrationsfehler | Die Anfrage wurde erfolgreich gesendet, aber die Integration hat mit einem nicht-erfolgreichen HTTP Statuscode geantwortet (unter 200 oder über 299). |
2. In neuem Fenster öffnen
Die Ziel-URL wird in einem neuen Fenster oder einem neuen Browser-Tab geöffnet.
Wenn eine GET-Anfrage verwendet wird, können Nutzer die Fracht Informationen in der Adressleiste des Browsers sehen.
3. Offene Seitenwand
Die Ziel-URL wird in Vetera eingebettet, indem oben auf dem Seiteninhalt eine Seitenwand geöffnet wird und die Seite als iframe angezeigt wird.
Die Ziel-URL muss das Einbetten unterstützen (die Kopfzeile „X-Frame-Options“ muss korrekt gesetzt sein).
Verwendung
Eigene Integrationen werden auf Zielseiten als Schaltflächen 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 ausschließlich 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 | Rechts, oberhalb des Bereichs „Hinweise“ (nicht in den Patiententabs). | Kunden ID |
Patient | Rechts, oberhalb des Bereichs „Hinweise“ (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 laufende und abgeschlossene Konsultationen. | Konsultations-ID |
Termin Kalender | Oben auf dem Termin-Kalender. | Aktive Klinik Standort ID |
Schicht Kalender | Oben auf dem Schicht-Kalender. | Aktive Klinik Standort ID |
Bildgebende Diagnostik | Auf der Seite für Überweisung zur diagnostischen Bildgebung in den oberen und unteren Symbolleisten. | ID der Überweisung zur diagnostischen Bildgebung |
Erinnerungen | In der Auswahlsymbolleiste auf 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 Bestätigung und zum Audit erfasst.
Gehen Sie zu Einstellungen > Integration > Eigene Integrationen > Protokoll.
In der Protokollansicht werden alle ausgeführten Anfragen aufgelistet, beginnend mit der neuesten Anfrage.
Weitere Informationen in der Detailansicht sehen Sie, indem Sie auf die Schaltfläche mit dem Auge rechts in jeder Zeile klicken.
Hinweis
Bei Vordergrundanfragen („In neuem Fenster öffnen“, „Offene Seitenwand“) wird keine Protokollierung durchgeführt.
Bestätigungssalz & Hashes
Die Option „Bestätigungssalz“ wird nur angezeigt, 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 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 Unternehmen 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 Unternehmen 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 eigenen Integration von Vetera stammen.
Wenn aktiviert, wird den Anfragen ein zusätzlicher Parameter namens „verification“ hinzugefügt.
Dieser Parameter ist ein 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 für die eigene Integration enthält.
Beispielsweise könnte man in Python prüfen, ob der Bestätigungs-Hash gültig ist, mit einer Funktion wie dieser:
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.verificationZweiseitige Kommunikation mit Vetera
Vetera ermöglicht in begrenztem Umfang eine zweiseitige 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 Seitenreload im Fenster oder Tab aus, der die eigene Integration geöffnet hat.
Das kann hilfreich sein, wenn die eigene Integration Vetera-Daten über die REST API aktualisiert.