[**Jetzt Präsentationstermin vereinbaren** ➡️](https://www.roxtra.com/online-praesentation)
[**Jetzt Präsentationstermin vereinbaren** ➡️](https://www.roxtra.com/online-praesentation)
Webhooks verknüpfen als Universalschnittstelle verschiedene Systeme miteinander,

Webhooks – „Verhaken“ von Systemen für mehr Integration

In Zeiten rapide wachsender Datenmengen und stetig steigender Komplexität von Systemlandschaften nimmt die verstärkte Integration der einzelnen Systeme untereinander eine wichtige Rolle ein, um einen reibungslosen Ablauf der Datenübertragung zwischen Anwendungen und Datenbanken zu gewährleisten. Eine Methode, die das unterstützt, ist der sogenannte Webhook. Diese Webhooks nutzen wir auch in unserem roXtra-System: So ist eine Universalschnittstelle zu allen webhookfähigen Systemen und Anwendungen gegeben.


1. Was ist ein Webhook und wie funktioniert er?

Salopp gesagt ist ein Webhook ein nicht-standardisiertes Verfahren zur Kommunikation von Webservern, die aufgrund unterschiedlicher Programmiersprachen eigentlich nicht kommunizieren können. Präziser lässt sich ein Webhook als ein ereignisbasiertes API (Application Programming Interface)-Konzept bezeichnen, wobei der Server ein URL (Uniform Resource Locator) des Clients bei Eintritt eines spezifischen Ereignisses aufruft. Der URL wird hierbei per HTTP-POST Request getriggert. Zur Übertragung der Daten wird der Anfrage ein Datensatz („Payload“) in einem spezifischen Datenformat mitgegeben, das durch den Client interpretiert werden kann.

Der wesentliche Unterschied zu einer klassischen API liegt darin, dass der Versand der Daten nicht durch regelmäßiges „Anstupsen“ vom Client angefragt wird. Per Webhook sagen wir dem Server, dass dieser den Datenversand automatisch einleiten soll, sobald das definierte Ereignis eintritt.

Abbildung 1: API vs. Webhook

Dieses Prinzip findet auch im Alltag häufig an Stellen Anwendung, wo uns dies nicht direkt auffällt: So nutzen beispielsweise Social-Media-Plattformen Webhooks, um Ihre Anwender darüber zu informieren, dass ein neuer Beitrag gepostet wurde. Auch im Kontext von Smarthome werden Webhooks genutzt: Dieses Konzept ermöglicht beispielsweise den Start eines Staubsaugerroboters bequem von der Arbeit aus. Doch die Einsatzmöglichkeiten von Webhooks sind sehr vielseitig. Deshalb machen wir uns dies auch im Modul roXtra Prozesse zunutze.


2. Webhooks in roXtra Prozesse: Integration von Microsoft Teams

In roXtra Prozesse gibt es viele unterschiedliche Anwendungsfälle für Webhooks im Zuge der Systemintegration. Hierzu gehört auch die Möglichkeit, Microsoft Teams an roXtra anzubinden: Da sowohl der Versand als auch der Empfang von Nachrichten per Webhook in roXtra Prozesse möglich ist, können wir Aufgabeninhabern Informationen aus Feldern eines Prozesses in einem Kanal zentral zur Verfügung stellen. Auch Entscheidungen im Prozess können direkt aus Microsoft Teams heraus getroffen werden. Dies kann man sich beispielsweise in einem Antrag auf Vorschuss zur Freigabe von Geldbeträgen zunutze machen: Eingegebene Daten eines Antrages wie auch Buttons, um eine Entscheidung zur Genehmigung zu treffen, stellen wir in Teams in sogenannten „Adaptive Cards“ dar.

Abbildung 2: Adaptive Cards in Microsoft Teams mit Informationen eines Antrags auf Vorschuss

Um eine solche „Adaptive Card“ samt Feldinhalten und Buttons zur Entscheidung zum Antrag auf Vorschuss aus roXtra Prozesse per Webhook zu senden, nutzen wir einen Service Task. Diese geben uns die Möglichkeit, Schnittstellen zu anderen Systemen zu kreieren. Um eine Nachricht per Webhook zu senden, binden wir hierbei den Service „Trigger Webhook“ ein. Diesen sowie weitere standardisierte Services finden Sie in unserem GitHub Repository.

Klicken wir auf einen der Buttons „Genehmigen“ oder „Ablehnen“, senden wir eine Nachricht per Webhook an roXtra Prozesse, die dem System die entsprechende Entscheidung mitteilt. Um eine solche Nachricht zu empfangen, binden wir Message Boundary Events in unser Prozessmodell ein. Pro auswählbarer Entscheidungsmöglichkeit benötigen wir ein Ereignis für den Nachrichtenempfang: Bei den zwei Optionen „Genehmigen“ und „Ablehnen“ benötigen wir somit auch zwei Message Boundary Events.

Abbildung 3: Antrag auf Vorschuss mit Versand und Empfang von Nachrichten per Webhook

3. Starten von Prozessen per Webhooks

Webhooks helfen uns nicht nur dabei, Nachrichten an andere Systeme zu senden und Entscheidungen aus diesen heraus zu treffen. Auch der Start von Prozessen durch den Empfang einer Nachricht per Webhook ist in roXtra Prozesse realisierbar. Hierfür nutzen wir das sogenannte Message Start Event. Dieses ermöglicht beispielsweise, Informationen (die Patienten oder Kunden in ein Kontaktformular auf einer Website eintragen,) direkt in die Formularfelder eines Prozesses zu schreiben. So lässt sich beispielsweise das Beschwerdemanagement verstärkt automatisieren: Die Beschwerde muss dank dieser Funktionalität nicht mehr durch den Mitarbeiter erfasst werden, sondern wird direkt beim Versand durch den Kunden oder Patienten ins System eingespeist.


4. Fazit

Webhooks können dabei helfen, Prozesse effizienter und fehlerresistenter zu gestalten. Und die Einsatzmöglichkeiten sind unglaublich vielfältig! Der Versand von Nachrichten per Webhook an andere Systeme oder deren Empfang in roXtra Prozesse – bei sinnvollem Einsatz sind Webhooks ein fantastisches Mittel, um eine verstärkte Systemintegration voranzutreiben und eine reibungslose Datenübertragung zwischen Systemen zu gewährleisten.

Haben wir Ihr Interesse geweckt oder sehen Sie Einsatzmöglichkeiten für Webhooks in Ihren Prozessen? Wenden Sie sich bei weiteren Fragen oder dem Wunsch nach näheren Informationen gerne an uns unter service@roxtra.com.

Nach oben scrollen