Trigger

Dir stehen mehrere Trigger-Optionen in der HubEngine zur Verfügung, um einen Synchronisierungsplan auszulösen oder um Folge-Aktionen anzustoßen:

Die Optionen findest du in der Planübersicht unter dem Reiter Trigger. Die einzelnen Optionen können beliebig miteinander kombiniert werden. Im abgebildeten Screenshot ist nur manuelles Triggern aktiviert.

HubEngine - Trigger (1/2)
You can set various triggers for synchronization in the HubEngine. Three trigger are available: Manually, frequency-based and webhook.

Manueller Trigger

Beim manuellen Triggern, löst du den HubEngine Plan über den Trigger-Button rechts oben aus. Hier hast du die Möglichkeit den Trigger über zwei verschiedene Varianten auszulösen:

  • Trigger per IDs: Mit diesem Trigger kannst du gezielt einzelne Datensätze anhand ihrer System-IDs synchronisieren. Gebe dazu ein oder mehrere IDs (komma separiert) in die jeweiligen Felder ein und triggere damit die Synchronisation für diese Datensätze.
  • Trigger per Änderungsdatum: Mit diesem Trigger werden alle Änderungen synchronisiert, die seit dem letzten Trigger per Änderungsdatum angefallen sind.

Zeit (Frequenz)

Beim zeitgesteuerten Trigger kannst du entweder die vorgegebenen Frequenzen nutzen oder du richtest einen Cronjob ein.

„Der Cron-Daemon dient der zeitbasierten Ausführung von Prozessen in Unix und unixartigen Betriebssystemen wie Linux, BSD oder macOS, um wiederkehrende Aufgaben – Cronjobs – zu automatisieren.“ – Wikipedia

Dabei stehen dir standardmäßig Synchronisierungsfrequenzen zwischen minütlich und jährlich zur Verfügung. Um das Format deines Cronjobs zu validieren, kannst du z. B. Crontab Guru nutzen. Es sind fünf Parameter zu spezifizieren:

Minute Stunde Tag Monat Wochentag

Beispiele für Cronjobs

  • minütlich: * * * * *
  • stündlich: 0 * * * *
  • Jeden Tag im August um 00:05 Uhr: 5 0 * 8 *
  • Mittwochs um 16:00 Uhr: 0 16 * * 3
HubEngine - Trigger (2/2)
You can also configure external webhooks and trigger further plans under the tab Triggers.

Aufruf (Echtzeit)

Pläne können auch über über einen externen Aufruf in Echtzeit (Webhooks) ausgelöst werden. Dabei bestehen zwei Möglichkeiten:

  • Trigger-URL
  • Action-URL

Die Trigger-URL kann nur über einen POST-Request angesprochen werden, ist also als API-Endpunkt verfügbar. Dadurch kann der Plan auch über Code getriggert werden.

Die Action-URL kann über einen gewöhnlichen Web-Request aufgerufen werden. Die Target-URL bestimmt die Seite, auf welche weitergeleitet werden soll, nachdem die Action-URL aufgerufen wurde.

Im Beitrag Gezielte Synchronisation (Triggern) von bestimmten Datensätzen ist genau erklärt, wie du diese Funktionen jeweils nutzen kannst.

Externe Webhooks

Bei den externen Webhooks handelt es sich um eine Folgeaktion nach Ausführen des Plans. So kann ein POST-Request an die von dir dort hinterlegte URL gesendet werden, um weitere Aktionen nach der Planausführung anzustoßen.

Weitere Pläne anstoßen

Es besteht auch die Möglichkeit, die Ausführung weiterer HubEngine Pläne im Anschluss anzustoßen.

  • Das Anstoßen weiterer Pläne ist nur für diejenigen Pläne möglich, die über die Option Aufruf (Echtzeit) getriggert werden. Anschließend kann der Plan dort ausgewählt werden.
  • Die ausgewählten Pläne werden erst getriggert, wenn die Ausführung des Plans, in dem die Einstellungen hinterlegt sind, abgeschlossen ist.
  • Die ausgewählten Pläne können so hintereinander geschaltet werden, um sicherzustellen, dass Pläne in einer gewünschten Reihenfolge ablaufen.

Hinweis

Wenn weitere Pläne zum Ausführen hinterlegt sind, wird diese Synchronisation bei jeder Plan-Ausführung getriggert. Hast du also eine sinnvolle Reihenfolge aufgebaut, solltest du sicherstellen, welche Trigger-Quellen du eingebaut hast.

Beispiel

In Plan A wird gezielt ein Datensatz per ID synchronisiert. Diese Ausführung führt dazu, dass alle Plan B normal per Änderungsdatum ausgeführt wird. Soll jetzt jedoch immer sichergestellt sein, dass die Änderungen aus Plan A vor Plan B da sein müssen, entsteht hier eine Inkonsistenz, da Plan B nun alle Änderungen seit der letzten Synchronisation verarbeitet, Plan A jedoch nur einen Datensatz synchronisiert hat und der nächste Trigger per Änderungsdatum bspw. erst zur nächsten vollen Stunde geplant ist.

Marini Systems GmbH | Website | Datenschutz­erklärung | Impressum