Page 1 of 1

Trigger ...

Posted: 06 Jul 2015 11:13
by mactoolz
Hallo,

wer kann mir erklären wie die Trigger in Zusammenhang mit den einstellbaren "Flow Ausführungsregel"
sich verhalten.

Vor allem warum werden, wenn z.B. ein Trigger von einem Flow als Timer von 1s eingesetzt wird
trotzdem immer wieder versucht der Trigger den Flow zu starten,
bzw. außer man hat die Option auf "Warten" gestellt.

Was passiert überhaupt wenn der Flow läuft, was machen den die anderen Trigger versuche die sich in Reihe stellen
und dann alle abgearbeitet werden.

Was hat das für einen Einfluss auf die Variabel?

Kann man den Flow wie einen Thread betrachten der sich blockiert und wartet bis er selber wieder aufgerufen bzw. verarbeitet werden kann.
Der Trigger müsste ja dann auch sowas ähnliches sein bzw. ein EventHandler.

Ich bin der Meinung sobald ein Flow seine Abarbeitung aufgenommen hat,
darf es niemals vorkommen das er erneut gestartet werden darf.

Natürlich muss auch immer sicher gestellt sein das andere Flows keinen Schreibzugriff haben etc.

Danke


MacToolz

Re: Trigger ...

Posted: 06 Jul 2015 18:59
by Martin
Hi,

Trigger und Flows sind grundsätzlich sehr einfach: Ein Trigger erkennt, wenn ein Ereignis im System auftritt (Event Handler), und startet dann den Flow. Der Flow kann nun, abhängig von den verwendeten Actions, innerhalb eines Bruchteils einer Sekunde ausgeführt werden oder mehrere Minuten oder sogar Stunden in Anspruch nehmen.
Standardmässig kann ein Flow mehrfach parallel gestartet werden (Flow Option 'Parallel...'). Jede solche Ausführung eines Flows hat seine eigenen lokalen Variablen (z.B. triggertime=Zeitpunkt wann der Trigger ausgelöst hat oder sms_text bei Trigger 'SMS Empfangen').
Wenn ein Flow nicht mehrfach gestartet werden soll, kannst du in den Optionen des Flows einstellen was passieren soll:
Aussetzen...: ignoriert den Trigger vorübergehend und startet den Flow nicht noch einmal.
Warte...: wartet mit der Ausführung des Flows, bis die aktuell laufende Instanz des Flows beendet wurde. Die Anzahl der blockierten Ausführungen steht dann oben rechts beim Trigger.
Stoppe...: stoppt die aktuell ausgeführte Instanz (analog Action Flows stoppen und führt dann den Flow erneut aus.

Option Parallel macht dann Sinn, wenn kein Ereignis verpasst werden soll, z.B. in folgendem Flow:
-Trigger SMS Empfangen
-Action Mailen mit Google Mail: {sms_text}

Wenn du innerhalb weniger Sekunden zwei SMS bekommst, aber der Mail Versand 20 Sekunden dauert, sollten trotzdem beide Mails verschickt werden und nicht das zweite SMS 'verloren' gehen.

Freundliche Grüsse
Martin

Re: Trigger ...

Posted: 07 Jul 2015 06:40
by mactoolz
Hi,

ok das macht dann einen Sinn. Also wenn das alles über EventHandler gesteuert wird ist das absolut Top.

Das Aussetzen habe ich flasch verstanden. Es sah für mich so aus als würde der Flow unterbrochen werden.
Kann es sein das die Anzeige der flows, wenn aktiv "Rot", nicht ganz synchron mit dem Ablauf sind. Wäre nicht schlimm sollte man nur wissen
weil es teilweise verwirrend sein kann.


MacToolz

Re: Trigger ...

Posted: 07 Jul 2015 15:23
by Martin
Hi

Es ist möglich, dass die roten Bereiche manchmal verzögert dargestellt werden, wenn der Flow gleichzeitig mehrfach ausgeführt wird.
Ich nehme es in die Todo-Liste auf, diesen Teil zu optimieren, da das aktuelle Verhalten sehr verwirrend ist.

Freundliche Grüsse
Martin