Page 1 of 2

Restlaufzeit Waschmaschine (Zeit addieren?)

Posted: 16 Oct 2017 15:39
by Jennes
Hallo zusammen,

per Eingabedialog frage ich die Restlaufzeit für die Waschmaschine ab (Diese sind ja so ziemlich bei jeder Waschmaschine klar definiert).

Meine daraus resultierenden Minuten (also aus 2h20m werden 140 Minuten, das mache ich per Condition im zweiten Flow) nutze ich dann per 'Erstelle Kalender Event' zum Eintragen in den lokalen Kalender. Die Variable "global_WMEnde" wird nun mit den 140 Minuten im Feld "Beginne in" als "{global_WMEnde}m" übernommen. Das klappt ganz gut; der Kalender trällert zum richtigen Zeitpunkt für das Wäsche aufhängen ...

Damit ich aber nicht vergesse, dass die WM noch läuft, blinkt zusätzlich per "Benachrichtigung in Statusbar" die LED - und in der Statusbar möchte ich zusätzlich im Feld "Nachricht" die Uhrzeit eintragen, wann genau die Wäsche fertig ist. Die Benachrichtigung erscheint ja auch im nicht eingeloggten Zustand auf dem Display - siehe "Sichtbarkeit" = öffentlich.

Wie addiere ich also die Restminuten auf die triggertime um per kurzem Blick auf das Display mein aktuelles Zeitfenster einzuschätzen ... Klingt kompliziert?? Ich hoffe nicht :-)

Wer kann mir da helfen?

Vielen Dank im voraus, Jennes

Re: Restlaufzeit Waschmaschine (Zeit addieren?)

Posted: 16 Oct 2017 16:39
by Desmanto
For a short period alarm, don't use calendar. Use Global Variable Date/Time instead, it is easier to use and can trigger on missed event.
So instead of 'Create Calendar Event', use 'Script' to add the time

Code: Select all

global_WMnde = addMinutes(triggertime, 140)
replace 140 with your variable which store the minutes choosen.

Then create another flow with trigger Global Variable Date/Time, put this global_WMnde as the variable and put any notification you want, to remind you that the time has come.

If you want to add the remaining time, you can subtract the time from the global_WMnde with current time or triggertime.

Code: Select all

remaining = global_WMnde - getDate()
You can then add this {remaining} to the variable you want.

Re: Restlaufzeit Waschmaschine (Zeit addieren?)

Posted: 16 Oct 2017 16:47
by yogi108
Hi,

Hier in einem Flow, den Kalender noch auf lokal umstellen und einen Shortcut erstellen:

http://automagic4android.com/flow.php?i ... 74edc27139


Mittels Shortcut aufrufen und die Dauer in Minuten eingeben, Deine globale variable habe ich benutzt.
Bildschirm sperren, einschalten und Du hast die noch offene Zeit am Bildschirm.
Solltest Du öfter Benachrichtigung in der Statuszeile verwenden, ist es vermutlich günstig, eine eindeutige id dafür zu vergeben.

Lg

Re: Restlaufzeit Waschmaschine (Zeit addieren?)

Posted: 17 Oct 2017 06:40
by Jennes
Guten Morgen,

vielen Dank für die prompten Lösungsvorschläge; leider konnte ich für meine bereits vorhanden Flows keines so richtig für mich nutzen bzw. hat das nicht so richtig funktioniert. Ungenau von mir beschrieben, habe ich ja bereits die Lösung für die komplette Nutzung, nur das eben bei 02a in der auf dem Screenshot markierten Action zusätzlich die entstandene UHRZEIT mit in die Nachricht rein soll.

Ich habe mal Screenshots gemacht:

Mit 01 wird die Auswahl angeschoben. Aus 01 heraus wird 01a. für die Umwandlung in die Minuten genutzt - und geht dann wieder zurück zu 01. Die Minuten von global_WMEnde werden jetzt für das Setzen des Kalender-Event in X-Minuten gebraucht und an dieser Stelle setzt ja Automagic von selbst die aktuelle Uhrzeit plus die Minuten von global_WMEnde zusammen und trägt mit der dabei entstandenen Uhrzeit das "WM fertig" in den Kalender ein.

Und genau diese dabei entstandene Uhrzeit möchte ich in der Statusbar hinzufügen, so, wie in dem ersten Absatz beschrieben.

Image Image Image

Ich möchte also keine Restminuten sondern ausschließlich die gleiche Uhrzeit, zu welcher das Kalender-Event eingetragen wurde. Ich habe selbstverständlich bereits die Hilfe und das Forum durchforstet und auch den Flow von yogi108 studiert und probiert. Mit "Date addMinutes(Date d, Number a)" hat es nicht funktioniert, weil ich vermutlich den Wert von global_WMEnde nicht richtig konvertieren konnte (String/Number??)

Danke für die weitere Unterstützung.

LG Jennes

Re: Restlaufzeit Waschmaschine (Zeit addieren?)

Posted: 17 Oct 2017 07:40
by yogi108
Hi,

Leider sind keine Bilder da zu sehen!

Da das Thema interessant ist, habe ich für mich 2 flows gemacht.
Der erste initiiert und aktiviert den zweiten flow. Diese Lösung kommt ohne Kalender aus wie von Desmanto vorgeschlagen.
Die Benachrichtigung hat eine eindeutige ID bekommen und eine action, um den flow auch vorzeitig abbrechen zu können.
Bei erreichen der Endzeit wird ein Sound abgespielt und die Benachrichtigung gelöscht.

Bezüglich der Arbeit mit Zeit:
Triggertime gibt einen Wert in Millisekunden zurück, d.h. es ist günstig die vorhandenen Funktionen addMinutes etc zu nutzen.
Klar kannst Du auch die Millisekunden durch 1000 dividieren, damit Du zu Sekunden kommst, nochmals durch 60 zu Minuten etc.
Das könnte etwas Licht in die Sache bringen :-)

Hier mein aktuelles Konstrukt:
http://automagic4android.com/flow.php?i ... f836a7f049

Der Flow Waschmaschine Start muss noch der Shortcut erstellt werden,
LG

Re: Restlaufzeit Waschmaschine (Zeit addieren?)

Posted: 17 Oct 2017 10:57
by Jennes
Hallo yogi108,

erstmal vielen Dank für Deine Mühe. Ich nehme stark an, Deine Programmierkenntnisse sind weit über dem, was ich zu leisten vermag. Ich habe Deine Flows importiert und erkenne den Ansatz. Mit Expression habe ich leider noch nicht so viel Übung. Allerdings konnte ich zunächst mein ursprüngliches Ziel dank Deiner Flows bewerkstelligen. Prima.

Natürlich hätte ich auch gerne die Aktualisierung der Restminuten beim Einschalten bzw. Statusbar anzeigen - allein das will mir nicht so recht gelingen. Deinen trigger-Flow auf meine bestehenden WM-Flows anzupassen klappt noch nicht. Da muss ich noch ein wenig tüfteln ...

Ich weiss, Desmanto hat bereits empfohlen, auf den Kalender zu verzichten - der Kalender macht es für mich jedoch um Einiges einfacher und hat sich in der Vergangenheit auch bewährt.

wie, keine Bilder zu sehen??

Das hier: http://show.picr.de/30668357ak.jpg.html
und das: http://show.picr.de/30668358jq.jpg.html
und das: http://show.picr.de/30668359ha.jpg.html

??

Und darüber hinaus würde mich interessieren, wie Du die beiden Flows gleichzeitig in einer xml-Datei hier hochladen konntest? Und wie kann ich das Gleiche machen mit meiner WM-Gruppe? - Dann würdest Du zumindest meinen Ansatz mal komplett sehen.

Also vielen Dank erstmal, ich bin schon ein ganzes Stück weiter. Jetzt ruft erstmal die Arbeit ...

Jennes

Re: Restlaufzeit Waschmaschine (Zeit addieren?)

Posted: 17 Oct 2017 12:44
by yogi108
Hi,

es gibt immer mehrere Möglichkeiten, das selbe Ziel zu erreichen :-)

Ich habe mich mal an den Notebook gesetzt und siehe da, die Grafiken sind zu sehen, kurze Kontrolle,
am Handy sind sie wirklich nicht da.

Also so ganz unbedarft bist Du scheints nicht, ich habe mit Plugins überhaupt keine Erfahrung und Du benutzt
da mindestens schon mal 2 ...

Du kannst einfach mal den Triggerflow ansehen, der ist von Haus aus inaktiv - damit nicht mehr Resourcen gebraucht
werden als nötig. Er wird automatisch aktiviert, wenn Du die Minutendauer eingibst - die letzte Action im Flow.

Aufpassen musst Du auf die Globalvariablen, da ich Deine Bezeichnung übernommen habe und Du in der einen
die Minuten stehen hast - und ich die Endzeit in Millisekunden. Für mich braucht es für die Dauer keine globale
Variable, ich habe die Beginnzeit und die Endzeit als Datum abgelegt, mit dem kann man alles bearbeiten was man
braucht - falls nötig sogar die Differenz der beiden als Dauer.

Es gibt ein paar Möglichkeiten Flows hochzuladen.
Die eine ist einfach per Handy wo das ganze drauf läuft, da hast immer einen gründen Balken mit Inschrift
Flow/Widget hochladen, wenn Du den anklickst, kannst Du auswählen, welche Du haben willst - also auch
mehrere.
Dann geht noch das Exportieren aus dem Automagioc Menu.
Und dann kannst Du noch einen Flow mit einer Action definieren, um es in einem Verzeichnis abzulegen.
Alles was extern ist, kannst Du dann am PC auch über "Upload Attachment" hochladen.

Hoffe es hilft,
LG

Edit: Die Formeln von Desmanto müssen in einem Actionscript stehen, sollte so funktionieren wie bei ihm beschrieben

Re: Restlaufzeit Waschmaschine (Zeit addieren?)

Posted: 17 Oct 2017 15:40
by Desmanto
@Jennnes : Seems you have solved it. But I want to comment on the second flow (O1a. WM-Laufzeit). It is actually not needed. You can calculate the minutes left all in single script action, just as shown by yogi108's flow.

And if you have a fix timer choice, just use input dialog - Single Choice Menu. Provide the fix time you have there. So the list Values will be

Code: Select all

2h20m,1h30m,1h,30m
or you can actually make it easier to be read.

Code: Select all

2 hours 20 minutes,1 hour 30 minutes,1 hour,30 minutes
Then after the input dialog, use Action Map Values. Input value will be {value} from the input dialog. Mapping is
2 hours 20 minutes=>140
1 hour 30 minutes=>90
1 hour=>60
30 minutes=>30

You can then use then {mapped_value} to be added to current time to give global_WMnde. You can then use the same trigger UI event on the same system ui to check for the World Cup text. And put the value of global_WMnde - triggertime there.

I use a similiar concept in my stay awake timer. Except, I don't use Action Map Values, I use the script funtion getMapValue(), essentially the same, but in script format.

It is preferred not to use any additional plugin if it can be done by automagic alone. Every additional plugin will drain your battery a bit more. Since the Phone need to create new activity for the plugin. Even though it only drain a bit more, we always want to optimize the battery life by making everything efficient.

@yogi108 : Thanks for the flow. Your flow inspired me to create the same notification to show the remaining time. Sometimes after setting the awake timer to 2 hour, I don't know how many minutes left. Usually I just trigger the flow again and select 1 or 2 hours to add additional time if I need it. or just set back to 5 minutes (my usual timeout).

For the UI event at notification, I would use UI event - Announcement, with text "Notification shade." It maybe different text for other locale, need to find out using Recent Events button.

Re: Restlaufzeit Waschmaschine (Zeit addieren?)

Posted: 17 Oct 2017 16:00
by yogi108
Desmanto wrote:...

@yogi108 : Thanks for the flow. Your flow inspired me to create the same notification to show the remaining time. Sometimes after setting the awake timer to 2 hour, I don't know how many minutes left. Usually I just trigger the flow again and select 1 or 2 hours to add additional time if I need it. or just set back to 5 minutes (my usual timeout).

For the UI event at notification, I would use UI event - Announcement, with text "Notification shade." It maybe different text for other locale, need to find out using Recent Events button.
@Desmanto
Just added also the progress bar info to the notification to be visible - just testing but looks fine, also
checked "permanent" (?? locale) to be visible all the time.

Regarding the UI event I could nothing find close to your hint. I checked the last events and I got only
(rough translation:)
Event Type: Window opened
Package Name: com.android.systemui
Text: Notificationbar

anyway it works as aspected, also on the lockscreen :-)

Really funny what can be done with a theme like this - Android on board count down would do the same, but not
cool like AM :mrgreen:

Thanks for your input,
regards

Re: Restlaufzeit Waschmaschine (Zeit addieren?)

Posted: 18 Oct 2017 11:33
by Jennes
Hallo yogi108,
hallo Desmanto,

bin echt froh, hier soviel Hilfe zu erhalten - bin wohl nicht der einzige Verrückte, was AM angeht ... :lol:

Die globalen Variablen nutze ich nur, um nicht den Überblick zu verlieren und gleichzeitg die resultierenden Werte im Blick zu behalten. Oder sind die nicht-globalen Variablen irgendwo sichtbar??

Mitnichten funktioniert (fast)* alles und ich werde versuchen auf 01a. zu verzichten. Ebenso auf den Kalendereintrag, welcher natürlich mit einem weiteren Flow ausgewertet wird.

Hier meine
WM-Flows.xml
(48.28 KiB) Downloaded 939 times
WM-Flows.

*Der einzige kosmetische Fehler den ich noch habe, ist, dass die Restlaufzeit in der Statusbar mit h m s und ms angezigt wird. Mir wäre lieber, dass nur auf h und m zu beschränken. Wie mache ich das denn?

Danke für die tolle Unterstützung!
LG Jennes