FHEM Forum

FHEM - Hausautomations-Systeme => Homematic => Thema gestartet von: SimonHipp am 27 Dezember 2014, 17:01:46

Titel: Abfrage wenn, dann! ABER WIE?
Beitrag von: SimonHipp am 27 Dezember 2014, 17:01:46
Hi Leute,

ich will das wenn meine Luftfeuchtigkeit höher als 60% ist, ein Funkaktor meine Lüftungsanlage auf Stufe 2 Schaltet.
Hier mal mein Code, irgendwie ist da noch was falsch und ich komme nicht drauf!

define luftfeuchtebadhoch notify DG.FeuchtTempBad { if (humidity >= 60) { fhem("set KG.LuftSTUFE1 on-for-timer 1800")}}

DG.FeuchtTempBad ist mein Homematic Sensor
set KG.LuftSTUFE1 on-for-timer 1800 passt soweit, der Befehl alleine geht!

Grüße
Simon
Titel: Antw:Abfrage wenn, dann! ABER WIE?
Beitrag von: KernSani am 27 Dezember 2014, 17:52:00
"humidity" ist deinem Perl-Ausdruck vermutluch unbekannt. Schau dir mal die commandref pder Einsteigerdoku zu notify an, da gibt's Beispiele wie auf readings zugegriffen werden kann.

Grüße,

Oli
Titel: Antw:Abfrage wenn, dann! ABER WIE?
Beitrag von: krikan am 27 Dezember 2014, 17:56:40
Damit langes Suchen erspart wird und ich das sowieso eben schon einmal brauchte ;):

S.37ff dieses Dokumentes http://fhem.de/Heimautomatisierung-mit-fhem.pdf oder im Wiki:
http://www.fhemwiki.de/wiki/Notify

edit: http://fhem.de/commandref#perl am Ende
Titel: Antw:Abfrage wenn, dann! ABER WIE?
Beitrag von: SimonHipp am 28 Dezember 2014, 10:20:53
hmmm, ich glaube ich bin irgendwie total ver :o.
Hab jetzt meinen Code wie folgt angepasst: define luftfeuchtebadhoch notify DG.FeuchtTempBad:humidity>40 set KG.LuftSTUFE1 on-for-timer 1800
Leider ohne Erfolg.
Titel: Antw:Abfrage wenn, dann! ABER WIE?
Beitrag von: Paul am 28 Dezember 2014, 11:51:13
Zitat von: SimonHipp am 28 Dezember 2014, 10:20:53
hmmm, ich glaube ich bin irgendwie total ver :o.
Hab jetzt meinen Code wie folgt angepasst: define luftfeuchtebadhoch notify DG.FeuchtTempBad:humidity>40 set KG.LuftSTUFE1 on-for-timer 1800
Leider ohne Erfolg.

Wo ist denn da dein if
Titel: Antw:Abfrage wenn, dann! ABER WIE?
Beitrag von: franky08 am 28 Dezember 2014, 11:56:25
Ab hier >40 set KG.LuftSTUFE1 on-for-timer 1800 stimmt dein Code nicht! Nur mal so als Hinweis. Die Abfrage mit ReadingsVal (Perl) ausführen.

In der Art:
define <name> notify device:reading.* {if (ReadingsVal("device","reading","defaultwert")>40) {fhem("set KG.LuftSTUFE1 on-for-timer 1800")}}

Alles in der commandref beschrieben!

VG
Frank