FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: TomLee am 28 September 2021, 12:11:54

Titel: Notify nach einmal auslösen erst wieder bei Änderung eines Readings ausführen
Beitrag von: TomLee am 28 September 2021, 12:11:54
Hallo,

kann mir vorstellen das ich auch auf dem Holzweg bin und nicht an alle Szenarien denke die eintreten können.

Mein altes IPhone meldet sich ab und an auch während der Anwesenheit zwischendurch mal vom WLAN ab.

Dann löst mein notify aus und schickt mir meine Einkaufsliste:

defmod not_sp_Thomas_pushek_isday notify sp_Thomas:presence:.absent {if(isday()) {fhem('pushek')}}
attr not_sp_Thomas_pushek_isday group Einkaufsliste
attr not_sp_Thomas_pushek_isday room Fernando

setstate not_sp_Thomas_pushek_isday 2021-09-28 11:06:23
setstate not_sp_Thomas_pushek_isday 2021-09-25 19:23:48 state active


Würde gerne verhindern das dies mehrmals am Tag passiert, die Liste nur einmal am Tag gesendet wird wenn sich an der Liste  nichts geändert hat.

Wie könnt ich das umsetzen daß das notify nach einmal auslösen erst wieder bei einem weiteren Event/Änderung des Einkaufsliste-Reading auslöst.

Mein erster Gedanke war disabledafterTrigger dort kann man ja aber nur Sekunden angeben, dort einfach nur das Reading anzugeben wär ja zu schön gewesen. Und sonst komm ich auch nach zwei Tagen darüber nachdenken immer noch auf keine Lösung, evtl. in ein paar weiteren 8) Tagen, darum frag ich jetzt einfach mal nach.

Gruß

Thomas


edit:

klar kenn ich mittlerweile das Eventbasierte sleep, mir kommt aber nicht wie ich es damit umsetzen kann.
Titel: Antw:Notify nach einmal auslösen erst wieder bei Änderung eines Readings ausführen
Beitrag von: Beta-User am 28 September 2021, 12:20:40
Wie wäre es mit einem watchdog?

Also erst ein wenig warten, ob das Handy sich nicht zurückmeldet => weniger "action".

Dann: watchdog nicht gleich wieder aktivieren, sondern nur, wenn entweder "neuer Tag" ist, oder sich die EK-Liste geändert hat?
Titel: Antw:Notify nach einmal auslösen erst wieder bei Änderung eines Readings ausführen
Beitrag von: TomLee am 28 September 2021, 12:26:28
Bevorzugen würde ich gerne eine Lösung die in dem notify umzusetzen, ohne zusätzliches Device, hätt ich vlt. oben gleich erwähnen sollen.

Schön und gut mit dem watchdog, aber innerlich wehrt sich schon beim lesen alles in mir  8)
Titel: Antw:Notify nach einmal auslösen erst wieder bei Änderung eines Readings ausführen
Beitrag von: Beta-User am 28 September 2021, 12:33:02
Nun ja, dann wirst du wohl ein paar Rahmenbedingungen abspeichern müssen, die dann erst mal bei jedem neuen Trigger gegengecheckt werden müssen und dann vermutlich erst mal ein "sleep/InternalTimer" einbauen dürfen, damit der "bin weg"-Event nicht direkt immer durchschlägt... Ob das einfacher ist (wobei es sich sowieso anbieten würde, den "gone"-Event anders zu ermitteln)?
Titel: Antw:Notify nach einmal auslösen erst wieder bei Änderung eines Readings ausführen
Beitrag von: Otto123 am 28 September 2021, 12:44:33
Du kannst es im Ausführungsteil mit einem benannten sleep versuchen, welches auf deinen Reading Event wartet. Durch die Benennung werden nicht immer wieder neue sleeps erzeugt wenn Dein Handy "wackelt" ;)
Titel: Antw:Notify nach einmal auslösen erst wieder bei Änderung eines Readings ausführen
Beitrag von: Wernieman am 28 September 2021, 12:45:06
Im Notify könntest Du Prüfen, ob sich die Einkaufliste geädert hast und nur dann senden. Müsstest Du aber programmieren ... für weitere Tipps müsste man wissen, wie denn die Einkaufliste bei Dir vorliegt ....
Titel: Antw:Notify nach einmal auslösen erst wieder bei Änderung eines Readings ausführen
Beitrag von: TomLee am 28 September 2021, 12:51:28
ZitatOb das einfacher ist ?

Sag mal so, beim lesen des letzten Vorschlag hat sich bei mir nix gewehrt, Interesse wurde geweckt, Hirnzellen etwas benutzt und ich denke dich dann zumindest ansatzweise verstanden zu haben, bis auf das
Zitatwobei es sich sowieso anbieten würde, den "gone"-Event anders zu ermitteln

Ich arbeite jetzt was, lass mir das den Nachmittag noch weiter durch den Kopf gehen und zeige später, Morgen, die Tage mein Ergebnis.

Danke.
Titel: Antw:Notify nach einmal auslösen erst wieder bei Änderung eines Readings ausführen
Beitrag von: TomLee am 28 September 2021, 13:01:18
Zitatwie denn die Einkaufliste bei Dir vorliegt

Das ist die Einkaufsliste aus echodevice:

setstate Echo 2021-09-28 12:57:17 list_SHOPPING_ITEM kleine_batterien,honig,eis,ahornsirup,pizzagewürz

(Ja, ich sehe gerade selbst das dort mal timestamp-on-change gesetzt gehört)
Titel: Antw:Notify nach einmal auslösen erst wieder bei Änderung eines Readings ausführen
Beitrag von: TomLee am 28 September 2021, 13:17:06
ZitatIm Notify könntest Du Prüfen, ob sich die Einkaufliste geädert hast und nur dann senden.

Ich denke es so umzusetzen (schüttel mir das zwar nicht aus dem Ärmel, aber ich weiß das ich es irgendwo im Hinterkopf habe/bereits gelernt hatte, wie der Vergleich zu machen wäre) ist kürzer und einfacher wie Beta-Users Vorschlag.
Titel: Antw:Notify nach einmal auslösen erst wieder bei Änderung eines Readings ausführen
Beitrag von: Otto123 am 28 September 2021, 14:24:20
Ich würde es mal so versuchen?
defmod not_sp_Thomas_pushek_isday notify sp_Thomas:presence:.absent {if(isday()) {fhem('sleep Echo:list_SHOPPING_ITEM:.* LSI;;pushek')}}
Titel: Antw:Notify nach einmal auslösen erst wieder bei Änderung eines Readings ausführen
Beitrag von: Wernieman am 28 September 2021, 14:48:10
Weiß jetzt nicht genau, aber eine Idee währe:
Ein Hash der Einkaufliste in ein Dummy schreiben. Beim Auslösen des Notify prüfen:
- Hat sich der Hash geändert, wenn ja
-> Mail senden
-> Neuen Hash ermitteln und Abspeichern

... Wobei, geht natürlich auch ohne hash, sondern mit dem aktuellen Inhalt. Du brauchst eben nur ein Dummy, wo Du nach dem senden den Wert speichern kannst ....
Titel: Antw:Notify nach einmal auslösen erst wieder bei Änderung eines Readings ausführen
Beitrag von: TomLee am 28 September 2021, 15:18:56
ZitatIch würde es mal so versuchen?

Erst dacht ich Otto hatts noch nicht genau verstanden, zwei-drei Minuten hab ich erst verstanden das es sehr wsl. die Lösung ist, ich probiers später.


Zitat... Wobei, geht natürlich auch ohne hash, sondern mit dem aktuellen Inhalt. Du brauchst eben nur ein Dummy, wo Du nach dem senden den Wert speichern kannst ....

Dummy setzt dem watchdog jetzt aber noch eins drauf 8), warum, wenn in die Richtung, nicht OldReadingsVal verwenden oder hab ich was nicht verstanden.
Titel: Antw:Notify nach einmal auslösen erst wieder bei Änderung eines Readings ausführen
Beitrag von: Wernieman am 28 September 2021, 15:21:26
Stimmt ... OldReadingsVal ... vergesse ich immer, da ich in den Anfängen von fhem damit Probleme hatte .....
Titel: Antw:Notify nach einmal auslösen erst wieder bei Änderung eines Readings ausführen
Beitrag von: Beta-User am 28 September 2021, 15:26:15
...vermutlich habe ich den zeitlichen Verlauf nicht verstanden...
Ottos Vorschlag mit dem "notify-sleep" setzt voraus, dass erst das Handy weg ist, und sich dann die EKL ändert? Ist das so gewollt? Sonst könnte man die Events umdrehen.

Wenn tatsächlich nur auf Handy-"absent" getriggert werden soll: Warum nicht ReadingsAge() von der Liste abfragen? Nur raus, wenn heute (oder <24h?) geändert.
Titel: Antw:Notify nach einmal auslösen erst wieder bei Änderung eines Readings ausführen
Beitrag von: Otto123 am 28 September 2021, 15:44:40
ich habe den Fall betrachtet: Handy "flattert" und nur wenn sich die Liste ändert soll gesendet werden. Der Fall Handy flattert nicht und die Liste ändert sich und soll gesendet werden geht so natürlich nicht. Events tauschen ist da vielleicht die Lösung - überblick es noch nicht ganz.
Titel: Antw:Notify nach einmal auslösen erst wieder bei Änderung eines Readings ausführen
Beitrag von: betateilchen am 28 September 2021, 15:50:05
ich glaube, das ist alles viel zu kompliziert gedacht.

Wäre es denn nicht vom Ablauf her logischer, primär auf die Änderung der Einkaufsliste zu triggern und bei einer Änderung der Liste das Handy zu informieren?
Titel: Antw:Notify nach einmal auslösen erst wieder bei Änderung eines Readings ausführen
Beitrag von: Beta-User am 28 September 2021, 16:00:06
Zitat von: betateilchen am 28 September 2021, 15:50:05
ich glaube, das ist alles viel zu kompliziert gedacht.

Wäre es denn nicht vom Ablauf her logischer, primär auf die Änderung der Einkaufsliste zu triggern und bei einer Änderung der Liste das Handy zu informieren?
In diese Richtung ging mein Vorschlag mit dem watchdog: Scharf schalten, wenn die Liste sich geändert hat. Dann muss nur noch das Handy länger auf "bin dann mal weg".
Titel: Antw:Notify nach einmal auslösen erst wieder bei Änderung eines Readings ausführen
Beitrag von: frank am 28 September 2021, 16:23:00
als erstes würde ich eine nicht "flatternde" anwesenheitserkennung auf die einkaufsliste setzen.  :)
Titel: Antw:Notify nach einmal auslösen erst wieder bei Änderung eines Readings ausführen
Beitrag von: TomLee am 28 September 2021, 16:31:27
Ich hatte mir vor drei Wochen ein Xiaomi Redmi 10S gekauft, weil ich mir kein IPhone mehr zulegen wollte, das war aber mehr Hosentaschenwärmer wie Smartphone, das hab ich dann wieder zurückgegeben, jetzt bin ich doch wieder am überlegen bei einem IPhone zu bleiben, kann mich aber nicht wirklich entscheiden.
Titel: Antw:Notify nach einmal auslösen erst wieder bei Änderung eines Readings ausführen
Beitrag von: TomLee am 28 September 2021, 17:11:32
Ich hab mal versucht die letzten Beiträge in einem notify zusammenzufassen, was fehlt wäre eine Verzögerung des pushek-Befehls sollte sich das Handy doch nach x-Minuten wieder anmelden, kam mir jetzt keine Idee vlt. später. Ich kenn mich aber und übersehe irgendeinen Fall mit Sicherheit.

defmod not_sp_Thomas_pushek_isday notify Echo:list_SHOPPING_ITEM:.* {return fhem('sleep sp_Thomas:presence:.absent sta;;pushek') if isday() && ReadingsVal($NAME,'list_SHOPPING_ITEM','') ne OldReadingsVal($NAME,'list_SHOPPING_ITEM','')}

edit:

OK, der Vergleich am Ende ist Quark, ohne Änderung greift das notify ja auch nicht.
Titel: Antw:Notify nach einmal auslösen erst wieder bei Änderung eines Readings ausführen
Beitrag von: frank am 28 September 2021, 19:16:57
Zitatkann mich aber nicht wirklich entscheiden
bluetootherkennung, kein wlan.
Titel: Antw:Notify nach einmal auslösen erst wieder bei Änderung eines Readings ausführen
Beitrag von: TomLee am 28 September 2021, 19:29:28
Das linke Ei hätt ich geröstet vor ein paar Wochen, mit d3m Xiaomi, wäre Bluetooth auch noch angewesen.
Titel: Antw:Notify nach einmal auslösen erst wieder bei Änderung eines Readings ausführen
Beitrag von: TomLee am 29 September 2021, 11:03:25
Es wäre toll wenn nach Abwesenheit mit :

defmod not_sp_Thomas_pushek_isday notify Echo:list_SHOPPING_ITEM:.* {return fhem('sleep sp_Thomas:presence:.absent sta;;pushek') if isday()}
attr not_sp_Thomas_pushek_isday group Einkaufsliste
attr not_sp_Thomas_pushek_isday room Fernando

setstate not_sp_Thomas_pushek_isday 2021-09-29 10:26:20
setstate not_sp_Thomas_pushek_isday 2021-09-28 20:10:33 state active


auch eine Mitteilung geschickt wird, sollte zu Hause jemand die Liste erweitern.

Das ist ja kein Problem, einfach nur event-on-update-reading in dem Presence-Device setzen:

defmod sp_Thomas PRESENCE function {ReadingsVal('sp_Thomas_FB','presence','present') eq 'absent' && ReadingsVal('sp_Thomas_UF','presence','present') eq 'absent' ? '0' : '1'} 60 60
attr sp_Thomas devStateIcon {my $var = ReadingsVal($name,'presence','absent') eq 'present'?'10px-kreis-gruen':'10px-kreis-rot';;\
my $var1= ReadingsTimestamp($name,'presence',0);;\
my $seconds = time_str2num($var1);;\
my $result = FmtDateTime($seconds);;\
'<div>'.FW_makeImage($var).' '.$result.'</div>'}
attr sp_Thomas event-on-change-reading presence
attr sp_Thomas event-on-update-reading presence
attr sp_Thomas room Fritzbox
attr sp_Thomas timestamp-on-change-reading presence

setstate sp_Thomas absent
setstate sp_Thomas 2021-09-29 10:47:21 .absenceThresholdCounter 0
setstate sp_Thomas 2021-09-29 10:47:21 .presenceThresholdCounter 0
setstate sp_Thomas 2021-09-29 10:07:10 model function
setstate sp_Thomas 2021-09-29 10:47:21 presence absent
setstate sp_Thomas 2021-09-29 10:47:21 state absent


Ohne das Attribut keine Aktualisierung, schon klar aber was mir dabei nicht so gefällt ist halt das Event alle 60 Sekunden, nur um zu schauen ob die Liste erweitert wurde.
Ich bin bisher immer bestrebt gewesen so wenige Events im Event-Monitor zu sehen wie nur möglich (ja natürlich gibts hier und da noch ein paar Geräte an die ich mich noch ranmachen muss zu optimieren).

Würdet Ihr das Event im Intervall von 60 Sekunden bedenkenlos hinnehmen, nur um die Liste zu aktualisieren oder vlt. sogar eine andere Idee ?

Titel: Antw:Notify nach einmal auslösen erst wieder bei Änderung eines Readings ausführen
Beitrag von: betateilchen am 29 September 2021, 12:53:34
Zitat von: TomLee am 29 September 2021, 11:03:25
nur um die Liste zu aktualisieren oder vlt. sogar eine andere Idee ?

Zitat von: betateilchen am 28 September 2021, 15:50:05
Wäre es denn nicht vom Ablauf her logischer, primär auf die Änderung der Einkaufsliste zu triggern und bei einer Änderung der Liste das Handy zu informieren?

Zitat von: Beta-User am 28 September 2021, 16:00:06
In diese Richtung ging mein Vorschlag mit dem watchdog: Scharf schalten, wenn die Liste sich geändert hat. Dann muss nur noch das Handy länger auf "bin dann mal weg".

Beratungsresistent?
Titel: Antw:Notify nach einmal auslösen erst wieder bei Änderung eines Readings ausführen
Beitrag von: TomLee am 29 September 2021, 13:30:30
Ich verstehe es so das mit dem notify die zwei Vorschläge abgefrühstückt sind, wenn nicht wärs nett einen Hinweis zu bekommen, was nicht passen soll, ich bin der Meinung das klappt so wie ich mir das vorgestellt hatte und Ihr beschrieben.

Ich hatte event-on-update-reading zuvor nicht gesetzt gehabt, weils einfach nicht nötig war, wenn aber eine Aktualisierung der Liste während der Abwesenheit erfolgen soll. muss es dafür gesetzt werden und ich hab dazu ein zusätzliches Event alle 60 Sekunden in meinem FHEM nur um die Liste aktuell zu halten.



Titel: Antw:Notify nach einmal auslösen erst wieder bei Änderung eines Readings ausführen
Beitrag von: TomLee am 29 September 2021, 17:32:50
Ich gehe jede Wette ein das du das notify gar nicht wirklich nachvollzogen hast, wie damals bei dem Problem mit Each, sonst wärst du auf meine Frage eingegangen, ob das Not tut soviele Events zu erzeugen, nur für den Fall das während der Abwesenheit es mal vorkommen kann das die Liste erweitert wird.
Titel: Antw:Notify nach einmal auslösen erst wieder bei Änderung eines Readings ausführen
Beitrag von: TomLee am 30 September 2021, 12:50:59
So, hab ich mir jetzt überlegt kann man das lösen ohne die vielen Events (event-on-update-reading) in dem PRESENCE-Device :

defmod not_sp_Thomas_pushek_isday notify Echo:list_SHOPPING_ITEM:.* {
return fhem('sleep sp_Thomas:presence:.absent sta;;pushek') if isday() && ReadingsVal('sp_Thomas','presence','presence') eq 'present';;\
return fhem('pushek') if isday() && ReadingsVal('sp_Thomas','presence','presence') eq 'absent';;}
attr not_sp_Thomas_pushek_isday group Einkaufsliste
attr not_sp_Thomas_pushek_isday room Fernando

setstate not_sp_Thomas_pushek_isday 2021-09-30 12:43:40
setstate not_sp_Thomas_pushek_isday 2021-09-30 12:42:34 state active

Titel: Antw:Notify nach einmal auslösen erst wieder bei Änderung eines Readings ausführen
Beitrag von: TomLee am 30 September 2021, 18:29:14
Ich bin von der Lösung überzeugt, darum hab ich geschaut das ich sie noch etwas kürzer bekomme:

defmod not_sp_Thomas_pushek_isday notify Echo:list_SHOPPING_ITEM:.* {\
my $v= ReadingsVal('sp_Thomas','presence','presence') eq 'present';;\
return fhem('sleep sp_Thomas:presence:.absent sta;;pushek') if isday() && defined $v;;\
return fhem('pushek') if isday() && !defined $v ;;}
attr not_sp_Thomas_pushek_isday group Einkaufsliste
attr not_sp_Thomas_pushek_isday room Fernando

setstate not_sp_Thomas_pushek_isday 2021-09-30 18:04:21
setstate not_sp_Thomas_pushek_isday 2021-09-30 18:03:42 state active
Titel: Antw:Notify nach einmal auslösen erst wieder bei Änderung eines Readings ausführen
Beitrag von: betateilchen am 30 September 2021, 19:48:58
Zitat von: TomLee am 30 September 2021, 18:29:14

my $v= ReadingsVal('sp_Thomas','presence','presence') eq 'present';;\
return fhem('sleep sp_Thomas:presence:.absent sta;;pushek') if isday() && defined $v;;\
return fhem('pushek') if isday() && !defined $v ;;}


Wie soll in Deinem Code eigentlich die Bedingung "!defined $v" jemals WAHR werden?
Das Ergebnis eines logischen Vergleiches, das einer Variablen zugewiesen wird, sorgt dafür dass diese Variable immer defined ist.
Titel: Antw:Notify nach einmal auslösen erst wieder bei Änderung eines Readings ausführen
Beitrag von: TomLee am 30 September 2021, 20:17:20
Ich hatte getestet aus der Kommandozeile, während sp_Thomas present ist:

{ my $v= ReadingsVal('sp_Thomas','presence','presence') eq 'present';; return 'bla' if isday() && !defined $v;;}
-> nix

{ my $v= ReadingsVal('sp_Thomas','presence','presence') eq 'present';; return 'bla' if isday() && defined $v;;}
->bla


Da geb ich zu kann ich gerade nicht folgen, muss ich in_Ruhe darüber nachdenken, später oder Morgen, jetzt nicht.
Titel: Antw:Notify nach einmal auslösen erst wieder bei Änderung eines Readings ausführen
Beitrag von: TomLee am 01 Oktober 2021, 11:46:31
Ok, in der Variable steht aber drin wahr oder falsch, also kann ich einfach nur die Variable für das erste return nehmen und im zweiten return die Variable negieren:

defmod not_sp_Thomas_pushek_isday notify Echo:list_SHOPPING_ITEM:.* {\
my $v= ReadingsVal('sp_Thomas','presence','presence') eq 'present';;\
return fhem('sleep sp_Thomas:presence:.absent sta;;pushek') if isday() && $v;;\
return fhem('pushek') if isday() && !$v ;;}
attr not_sp_Thomas_pushek_isday group Einkaufsliste
attr not_sp_Thomas_pushek_isday room Fernando

setstate not_sp_Thomas_pushek_isday 2021-10-01 11:26:06
setstate not_sp_Thomas_pushek_isday 2021-10-01 11:19:14 state active


edit:

ohne es getestet zu haben noch etwas kürzer:

defmod not_sp_Thomas_pushek_isday notify Echo:list_SHOPPING_ITEM:.* {\
my $d = isday();
my $v= ReadingsVal('sp_Thomas','presence','presence') eq 'present';;\
return fhem('sleep sp_Thomas:presence:.absent sta;;pushek') if $d && $v;;\
return fhem('pushek') if $d && !$v ;;}
attr not_sp_Thomas_pushek_isday group Einkaufsliste
attr not_sp_Thomas_pushek_isday room Fernando

setstate not_sp_Thomas_pushek_isday 2021-10-01 11:26:06
setstate not_sp_Thomas_pushek_isday 2021-10-01 11:19:14 state active
Titel: Antw:Notify nach einmal auslösen erst wieder bei Änderung eines Readings ausführen
Beitrag von: betateilchen am 01 Oktober 2021, 20:35:32
Da Zuweisen von isday() an eine Variable kannst Du Dir getrost sparen. Es geht nicht um kürzer, sondern um perfomanter.

Hier noch was zum Nachdenken übers Wochenende...


defmod not_sp_Thomas_pushek_isday notify Echo:list_SHOPPING_ITEM:.* { \
return unless isday();; \
if(ReadingsVal('sp_Thomas','presence','presence') eq 'present') \
{ return fhem('sleep sp_Thomas:presence:.absent sta;;pushek');; } else \
{ return fhem('pushek');; }}
Titel: Antw:Notify nach einmal auslösen erst wieder bei Änderung eines Readings ausführen
Beitrag von: TomLee am 02 Oktober 2021, 15:23:42
Du hältst an dem unless fest, bei einem anderen Mitlesenden hast du mit Sicherheit kurzzeitig für min. 60 % "CPU"-Auslastung gesorgt 8) ;D , ich hab das gestern Abend ausprobiert und es sprach eigentlich nichts dagegen if !isday zu verwenden oder doch ?

Ist das Beispiel performanter weil gleich Ende ist wenn nicht Tag ?

Du magst das gewohnt sein mit der Variante von if und den vielen Klammern und vermutlich ging es dir nur darum diesen Ansatz aufzuzeigen, mir gefällts irgendwie in dem Fall weniger, spricht was dagegen hier einfach den ternären Operator zu verwenden ? Dann wäre das auch kurz und knapp in dem notify, weil ich noch nicht weiß ob ich das auslagere.
Titel: Antw:Notify nach einmal auslösen erst wieder bei Änderung eines Readings ausführen
Beitrag von: betateilchen am 02 Oktober 2021, 15:38:26
Zitat von: TomLee am 02 Oktober 2021, 15:23:42
mit Sicherheit kurzzeitig für min. 60 % "CPU"-Auslastung gesorgt

Quatsch. "unless ..." ist nichts anderes als Dein "if !..." bzw. "if not ..."

https://www.perltutorial.org/perl-unless/

Zitat von: TomLee am 02 Oktober 2021, 15:23:42
Du magst das gewohnt sein mit der Variante von if und den vielen Klammern

Das hat nichts mit Gewohnheit zu tun, sondern mit (Programmier-)Logik.

Mach was Du willst, zur Not bleib halt auch bei Deinem Spaghetti-Code (https://de.wikipedia.org/wiki/Spaghetticode)


--
Titel: Antw:Notify nach einmal auslösen erst wieder bei Änderung eines Readings ausführen
Beitrag von: TomLee am 02 Oktober 2021, 15:56:10
Unsinn oder nicht, ich halts fest:

Für die die sich mit einem Nudelgericht zufrieden geben:

defmod not_sp_Thomas_pushek_isday notify Echo:list_SHOPPING_ITEM:.* {\
return if !isday();;\
return ReadingsVal('sp_Thomas','presence','presence') eq 'present' ? fhem('sleep sp_Thomas:presence:.absent sta;;pushek') : fhem('pushek');;}