Dokumentation: Flowy-Trigger


Please support us to improve our service. We would like to use statistics anonymously.

We do not pass on your data! You can find more information in our privacy policy.

Decline

< Zurück zur Dokumentation

Trigger

Flowy unterstützt derzeit die folgenden Arten von Triggern:

  • Cron: ermöglicht die zeitbasierte Planung von Prozessen
  • Events Handler: ermöglicht es, Prozesse auszulösen, die auf Fehler reagieren
  • MCP: startet Prozesse über MCP
  • Messaging: startet Prozesse auf Basis eingehender Nachrichten
  • Rest: stellt REST-Funktionalität bereit. Für diese Art von Triggern müssen die Methoden, die URL sowie die maximale Request-Größe definiert werden

Bitte beachten Sie, dass ein Prozess erstellt sein muss, bevor ihm ein Trigger zugeordnet werden kann. Mehrere Trigger können auf denselben Prozess verweisen.

Tips

Die Ausführung eines Triggers führt immer zur Erstellung eines Events des entsprechenden Typs.

Bei der Entscheidung über die Ausführung von Aufgaben in Flowy spielen zwei wichtige Faktoren eine entscheidende Rolle:

Die Priorität ist ein grundlegender Faktor, der die Reihenfolge beeinflusst, in der Aufgaben ausgeführt werden. Jeder Aufgabe wird ein Prioritätswert zwischen 1 und 128 zugewiesen.

Aufgaben mit dringlichen Prioritätswerten (näher an 1) werden vor Aufgaben mit niedrigeren Prioritätswerten (näher an 128) ausgeführt. Dieses System stellt sicher, dass dringendere Aufgaben zügig bearbeitet werden, während weniger kritische Aufgaben zurückgestellt werden, bis Ressourcen verfügbar sind.

Flowy berücksichtigt außerdem die Ausführungswichtigkeit für das System, indem es die Anzahl der gleichzeitigen Ausführungen auswertet (diese sind Eigenschaften der zugeordneten Prozesse). Dabei sind zwei Schlüsselparameter beteiligt:

  • Overall Simultaneous Executions: Dieser Parameter erfasst die Gesamtzahl der Aufgaben, die aktuell im gesamten System ausgeführt werden.
  • Simultaneous Executions per Instance: Dieser Parameter überwacht die Anzahl der Aufgaben, die gleichzeitig auf einer einzelnen Instanz ausgeführt werden.

Aufgaben mit höheren Werten bei diesen Parametern werden bevorzugt behandelt.

Cron-Trigger

Cron-Trigger können so konfiguriert werden, dass sie bei zeitbasierten Bedingungen ausgelöst werden. Sie können z. B. einmal täglich oder periodisch ausgeführt werden. Sekunden, Minuten und Stunden können mithilfe von Intervallen definiert werden. Bitte beachten Sie den Unterschied zwischen 0 (nur wenn genau 0 zutrifft) und * (beliebig).

Je nach gewünschter Konfiguration können für denselben Prozess ein oder mehrere Cron-Trigger erforderlich sein.

Ein einfacher Cron-Trigger
Ein einfacher Cron-Trigger

Events Handler

Event Handler dienen dazu, auf Fehler zu reagieren, die während der Ausführung eines Prozesses auftreten. Sie können gezielt für einzelne Prozesse oder universell für alle Prozesse konfiguriert werden. Eine universelle Umsetzung sollte aufgrund ihrer weitreichenden Auswirkungen sorgfältig abgewogen werden.

Event Handler sind unerlässlich, um die Prozessintegrität zu wahren, und ermöglichen eine Fehlerüberwachung in Echtzeit sowie eine reaktive Handlungsweise. Die Konfigurationen reichen von einfachen Benachrichtigungen bis hin zu komplexen, automatisierten Wiederherstellungsprozessen, sodass jeder Fehler entsprechend seinem Schweregrad und seiner Art angemessen behandelt wird.

Wie bei jedem leistungsstarken Werkzeug sind sorgfältige Planung und ein gutes Verständnis der Mechanismen des Event Handlers entscheidend, um unbeabsichtigte Folgen zu vermeiden und seine Möglichkeiten optimal zu nutzen.

Bitte beachten Sie, dass Event Handler nur auf Events reagieren können. Wird kein Event erstellt, z. B. weil eine Validierung bei einem REST-Trigger fehlschlägt, löst dies auch den Event-Trigger nicht aus. Die Details zum Fehler sind in dem Prozess abrufbar, der beim Fehlschlagen des Events ausgeführt wird.

MCP-Trigger

Der MCP-Trigger macht Flowy-Prozesse über das Model Context Protocol (MCP) ausführbar, indem er ausgewählte Prozesse als aufrufbare Tools bereitstellt. Er fungiert als Brücke zwischen Flowy und jedem MCP-kompatiblen Client.

Ein MCP-Trigger legt fest, welche Flowy-Prozesse auf dem MCP-Server veröffentlicht werden. Ein oder mehrere Prozesse können als Tools registriert werden, wobei jeder automatisch ein Schema bereitstellt, das seine Eingaben, Ausgaben und Metadaten für die Erkennung beschreibt.

Wenn ein MCP-Trigger aktiv ist:

  • startet Flowy einen MCP-kompatiblen Server mit dem konfigurierten Transport (HTTP, WebSocket, STDIO usw.).
  • stehen alle registrierten Prozesse als MCP-Tools zur Verfügung.
  • können Clients diese Tools auflisten, ihre Schemas einsehen und sie über standardmäßige MCP-Tool-Call-Requests aufrufen.
  • startet der Trigger beim Aufruf den entsprechenden Flowy-Prozess mit den übergebenen Eingaben.
  • gibt der Trigger nach Abschluss des Prozesses die Ausgabevariablen oder etwaige Fehlerinformationen im MCP-konformen Format zurück.

Messaging-Trigger

Messaging-Trigger ermöglichen es, Prozesse als Reaktion auf eingehende Nachrichten zu starten, unter Verwendung von Plattformen wie Kafka oder JMS. Sie sind besonders effizient in Umgebungen, in denen Echtzeit-Datenaustausch oder ereignisgesteuerte Architekturen zum Einsatz kommen.

Die Integration von Messaging-Triggern in Ihren Workflow ermöglicht ein nahtloses, automatisiertes Reaktionssystem und steigert die Reaktionsfähigkeit und Agilität Ihrer Prozesse. Ihre Umsetzung kann Abläufe erheblich vereinfachen und zu einer effizienteren und zuverlässigeren Prozessausführung führen.

Rest-Trigger

Rest-Trigger sind sehr leistungsfähig, da sie sowohl unauthentifizierten als auch authentifizierten Zugriff unterstützen. Sowohl Basic- als auch sitzungsbasierte Authentifizierung werden unterstützt.

Vor der Ausführung können Validierungsprüfungen durchgeführt werden. Diese können für die Pfadvariablen sowie die Query-Parameter definiert werden. Außerdem für Header und den Body selbst.

Für Pfadvariablen ist die folgende Syntax zu verwenden:

/group/{groupId}/edit/{userId}

Das obige Beispiel verwendet zwei Variablen: groupId bzw. userId. Diese müssen in der referenzierten Validierung als Pfadvariablen definiert sein.

Tips

Bei Nicht-Standard-Mandanten wird die tenantId automatisch in die URL eingefügt, um zwischen den Mandanten zu unterscheiden.

Ein einfacher REST-Trigger
Ein einfacher REST-Trigger

Rest-Requests

Innerhalb des Prozesses können Sie die folgenden Variablen verwenden, um auf die Daten des Requests zuzugreifen:

$.restRequest.url
$.restRequest.method
$.restRequest.queryParameters
$.restRequest.requestBody
$.restRequest.headers
$.restRequest.headers.contentType
$.restRequest.pathParameters

Rest-Responses

Wenn Sie Daten zurückgeben möchten, setzen Sie bitte die Variable $.restResponse.body.text entsprechend. Nachfolgend Beispiele, einmal mit einem String und einmal mit einer Variable:

$.restResponse.body.text: 'Some text'
$.restResponse.body.text: $jsonVariable

Alternativ kann der gesamte Response-Body gesetzt werden:

$.restResponse.fullBody: 'my 100% custom response body'
$.restResponse.statusCode: 'OK'

Um einen bestimmten HTTP-Code zu setzen, verwenden Sie die Enums, z. B.:

$.restResponse.body.text: 'Some text'
$.restResponse.statusCode: 'CONFLICT'

Diese Liste der HTTP-Codesopen in new window enthält alle verfügbaren Werte.