Anzahl ausführungen [bug?] [german]

Post your questions and help other users.

Moderator: Martin

Post Reply
User avatar
schuster666
Posts: 52
Joined: 13 Nov 2013 14:03
Location: Germany / Neuss

Anzahl ausführungen [bug?] [german]

Post by schuster666 » 25 Jan 2014 11:20

Hallo Martin,
Beim bau meines Schichtarbeiter-weckerflow benötige ich eine "einmalige" ausführung der action "Laustärke speichern". Nutzen möchte ich dafür die condition "Anzahl ausführungen". Leider bekomme ich es darin nicht hin. Bei anzahl ausführungen =1 , (nein) passiert garnichts und bei (ja) lässt es immer durch.
Gewollt oder bug? Gibt es eine andere möglichkeit?

// gibt es eine möglichkeit mit bordmitteln berechnungen in der zeit durchzuführen? Also jetzt ist 21uhr wielange ist es bis morgen früh 5,36uhr und das ganze dann als variable abrufen?//

Gruß
-- the world would be better without people--
-- but boring --

User avatar
Martin
Posts: 4468
Joined: 09 Nov 2012 14:23

Re: Anzahl ausführungen [bug?] [german]

Post by Martin » 25 Jan 2014 13:32

Hi,

Die Condition Anzahl Ausführungen setzt den internen Zähler zurück, wenn die Anzahl erreicht ist. Bei 1 wird der Zähler somit sofort zurückgesetzt und ist jedesmal 'Ja'.
Auf was soll sich die Anzahl beziehen? Einmal pro Tag oder gesamthaft nur einmal? Kannst du beschreiben, wie der Flow bisher funktioniert oder den Flow hier posten?

Mit Variablen könntest du die Anzahl auch beschränken:
-trigger ...
-condititon Expression: global_executed==true
-->Nein: -action Script: global_executed = true, action Lautstärken Speichern

Die globale Variable kannst du auch manuell wieder zurücksetzen (auf der Flowliste: Menü->Verwalten->Globale Variablen).

In einem Script kannst du mit Zeiten rechnen. Ein Zeitstempel in Automagic ist unformatiert einfach die Anzahl Millisekunden seit 1970. Somit kannst du zwei Zeitstempel subtrahieren um die Differenz zu berechnen etc.
In einer Action Script:

Code: Select all

//aktuelle Zeit in der Variablen 'zeit_jetzt' speichern
zeit_jetzt = getDate();

//heute aber um 5:36 in Variable 'zeit_temp' speichern (enthält dann 25.01.2014 5:36)
zeit_temp =getDate(zeit_jetzt, 5, 36, 0);

//einen Tag addieren und in variable 'zeit_morgen' speichern (enthält dann 26.01.2014 5:36)
zeit_morgen = addDays(zeit_temp, 1);

//berechne die Zeitdifferenz in Millisekunden
diff = zeit_morgen - zeit_jetzt;

//Differenz im Log als Zahl in Millisekunden ausgeben (54590660)
log(diff);

//Differenz formatiert im Log ausgeben (15h 9m 50s 660ms)
log(getDurationString(diff));
Gruss
Martin

User avatar
schuster666
Posts: 52
Joined: 13 Nov 2013 14:03
Location: Germany / Neuss

Re: Anzahl ausführungen [bug?] [german]

Post by schuster666 » 27 Jan 2014 06:14

Guten Morgen,
also die anzahl ausführungen wollte ich eigentlich nur mal testweise in einem loop verwenden um die zeitlichen abhängigkeiten innerhalb der flows zu testen/verstehen. Ich wollte einen sidekick damit machen der im hauptflow der mehrmals abgearbeitet wird aber nur 1mal ausgeführt werden sollte.

Da dies zur verfügung stand, hab ich mich dessen mal bedient. Leider kann man sich erst ab 3 zählungen darauf verlassen. Bei 1 lässts gar nicht durch, bei 2 immer. Ist bei der offiziellen wie bei der eap version gleich. Ich dachte wenn die vorgabe ist 1mal zählen, dann wird der loop exakt auch 1mal abgearbeitet bevor gesperrt wird.

Die zeitberechnung klappt super nachdem du mir dierichtung gezeigt hast.

Gehört alles zu einem schichtarbeiter wecker der sich alleine stellt, bei bedarf aber auch manuell gestellt werden kann. Ich benutze dafür allerdings die eap wegen der eingabemöglichkeit von datum/zeit.

Wenn ich einen flow hochladen könnte hätte ich mal nen loop-test-flow gepostet. Leider geht das aus dem prog raus irgendwie nicht.

Gruß
-- the world would be better without people--
-- but boring --

User avatar
Martin
Posts: 4468
Joined: 09 Nov 2012 14:23

Re: Anzahl ausführungen [bug?] [german]

Post by Martin » 27 Jan 2014 17:42

Hi

Das Problem mit der Condititon Anzahl Ausführungen kann ich nicht nachvollziehen (mit Wert 2). Du kannst den Flow aus Automagic hochladen, indem du das Forum in Automagic öffnest (Menü->Forum), dann unten mit dem Button Flows/Widget veröffentlichen den Flow hochlädst und den Link aus der Zwischenablage in einen Beitrag einfügst.
Du kannst mir den Flow gerne auch per Mail schicken (Flow öffnen, Menü->Flow senden, an info@automagic4android.com).

Gruss
Martin

Post Reply