Hallo in der Runde,
ich überlege, ob es möglich ist den Wert einen Watchdogs auszulesen und ihn für ein Notify zu gebrauchen.
Ich möchte gerne eine Benachrichtigung wahlweise auf Handy oder Tablet bekommen je nach dem wie der Present-State ist.
Wollte so was hier testweise zusammenbauen:
Zitatdefine w_absent_Waschmaschine notify jemand_da if {(jemand_da:state) eq "absent" && Value("w_Waschmaschine") eg "triggered") {fhem("set Waschmaschine msg 'Waschmaschine' 'Die Waschmaschine ist fertig' '' 0 'Magic' 30 3600") } }
jemand_da = structure der beteiligten Handys
Wahrscheinlich habe ich ein paar Klammern falsch oder das Structure passt nicht... seufz.
Funktioniert den die Abwesenheitserkennung mit der Structure? Ich glaube nicht das Du den Fehler dort suchen musst...
schau dir das mal genauer an -
(jemand_da:state) eq "absent" && Value("w_Waschmaschine") eg "triggered")
Die klammer geht dreimal zu aber ja nur zweimal auf, das andere Klammerpärchen ist ja in Perl separat gekapselt.
Ich kann aber nicht viel mehr dazu sagen - ich benutze gerne Damians IF Modul das ist mir um längen einfacher und verständlicher...
Danke für den Hinweis, werde es nochmals testen.
Der oben genannte 1 Zeiler müllt mir mein Log zu:
w_absent_Waschmaschine return value: Unknown command if, try help.
Hallo,
logisch - weil das if so da nichts zu suchen hat.
Oder meinst du IF?
Grüße
Nein, ich meine das normale if. Da ich den Werte einen Watchdogs und ein Present als Bedingung habe.
Hallo,
dann versuchs mal so
define w_absent_Waschmaschine notify jemand_da { if (((jemand_da:state) eq "absent") && (Value("w_Waschmaschine") eg "triggered")){fhem("set Waschmaschine msg 'Waschmaschine' 'Die Waschmaschine ist fertig' '' 0 'Magic' 30 3600") } }
Ohne Gewähr und sicher wieder viel zu viele ( und ) drinnen.
Ob jemand_da:state so funktioniert kann ich dir aber nicht sagen.
Ich frage die Werte grundsätzlich per Value oder ReadingsVal ab.
Grüße
Werd's testen.
Bei den Readings steht: state und es gibt die Werte absent und present. Da war ich mir aber auch nicht so sicher, ob das geht.
Hallo,
dann eher so:
if ((Value("jemand_da") eq "absent") && (Value("w_Waschmaschine") eg "triggered"))
Grüße
Hm, das mit dem Value war ja schon eine gute Idee.
Aber nu kommt diese Fehlermeldung
w_absent_Waschmaschine return value: Unknown command if, try help.
edit: da war ein "g" statt ein "q". Neuer Versuch.
Code?
Jeep:
Sieht jetzt so aus:
define w_absent_Waschmaschine notify jemand_da if ((Value("jemand_da") eq "absent") && (Value("w_Waschmaschine") eq "triggered")) {fhem("set Waschmaschine msg 'Waschmaschine' 'Die Waschmaschine ist fertig' '' 0 'Magic' 30 3600") } }
Vorher:
...eg "triggered"))...
:-[
Funktioniert leider trotzdem nicht.
Bekomme diese Meldung im Log
w_absent_Waschmaschine return value: Unknown command if, try help.
Hallo,
jemand_da if ((Value("je
schau dir mal meinen Vorschlag an und Vergleich mal die Stelle um das if
Bei deinem Code ist die Fehlermeldung in Ordnung und auch logisch das dir ein Fehler gemeldet wird.
Grüße
Danke. Die Stelle um das If und das Einsteigerhandbuch derzeit ab Seite 36 waren der Hinweis.
define Schalter1Notify notify Schalter1 { if ( Value("Schalter1") eq "off" && Value("Schalter2") eq "off") {fhem("set wz_Media off")} }
define w_absent_Waschmaschine notify jemand_da { if ((Value("jemand_da") eq "absent") && (Value("w_Waschmaschine") eq "triggered")) {fhem("set Waschmaschine msg 'Waschmaschine' 'Die Waschmaschine ist fertig' '' 0 'Magic' 30 3600") } }
Da kann man noch Klammern entrümpeln...
define w_absent_Waschmaschine notify jemand_da { if (Value("jemand_da") eq "absent") && (Value("w_Waschmaschine") eq "triggered") {fhem("set Waschmaschine msg 'Waschmaschine' 'Die Waschmaschine ist fertig' '' 0 'Magic' 30 3600") } }