FHEM Forum

FHEM => Automatisierung => Thema gestartet von: Chris83 am 12 Januar 2016, 22:02:34

Titel: Schalten abhängig von Wetter Readin Condition
Beitrag von: Chris83 am 12 Januar 2016, 22:02:34
Hallo Leute,
ich würde gerne abhängig vom aktuellen Wetter einen Schaltbefel ausführen.
Das habe ich in einem Notify so aufgebaut:

DM7020HD {
if ((ReadingsVal("Wetter","condition",0) eq "Schnee") && ( Value("Taste_B") eq "off")) {
  fhem("set Taste_B on")
}
 
}


Das funktioniert auch so weit.
Leider kann das Reading aber auch eine Kombination aus zwei Worten sein wie z.B. Regen und Schnee oder auch leichte Schneeschauer.

Ich würde gerne bei allem was Schnee enthält schalten kann mir jemand sagen wie ich das mache?

Gruß
Chris
Titel: Antw:Schalten abhängig von Wetter Readin Condition
Beitrag von: frank am 12 Januar 2016, 23:23:52
if ((ReadingsVal("Wetter","condition",0) =~ m/Schnee/) && ( Value("Taste_B") eq "off"))
Titel: Antw:Schalten abhängig von Wetter Readin Condition
Beitrag von: Chris83 am 16 Januar 2016, 15:17:43
Hi,
erstmal vielen dank für die Hilfe. Ich teste jetzt schon ein paar Tage damit rum , aber komischerweise funktioniert es nicht immer.
Was bedeutet denn eigentlich das m vor dem /  ?
Hast du eine Idee wiso es nicht immer funktioniert.

Gruß Chris
Titel: Antw:Schalten abhängig von Wetter Readin Condition
Beitrag von: frank am 16 Januar 2016, 15:32:49
m => matching operator.

baue eine log-ausgabe in dein notify, damit du alle variablen siehst, wenn es nicht funktioniert. schematisch:

Log (1,"test ".$var1." ".$var2);
Titel: Antw:Schalten abhängig von Wetter Readin Condition
Beitrag von: araym am 16 Februar 2016, 10:08:41
Hallo,

Bei mir kommt immer ein fehler

3: notify_Schnee return value: Not enough arguments for main::ReadingsVal at (eval 5533) line 1, near "0) "

Wetter.* { if ((ReadingsVal("Wetter","condition",0) =~ m/Schnee/) && (ReadingsVal("Wetter"."temperature",0) < 0)) { fhem ("set Schnee on") }}


Ich probiere schon seid stunden doch finde den Fehler nicht.
Titel: Antw:Schalten abhängig von Wetter Readin Condition
Beitrag von: CoolTux am 16 Februar 2016, 10:28:55
Benutze bitte Codetags, so kann man das schwer lesen


Wetter.* { if ((ReadingsVal("Wetter","condition",0) =~ m/Schnee/) && (ReadingsVal("Wetter"."temperature",0) < 0)) { fhem ("set Schnee on") }}


Du hast ein Punkt statt einem Komma

(ReadingsVal("Wetter"."temperature",0)
Titel: Antw:Schalten abhängig von Wetter Readin Condition
Beitrag von: araym am 16 Februar 2016, 11:18:50
OK danke das wars  ;D