gelöst: Problem mit state Abfrage im notify

Begonnen von SteffenBuehler, 23 Oktober 2015, 21:04:55

Vorheriges Thema - Nächstes Thema

SteffenBuehler

Hallo Forum,

bevor ich gleich einen Nervenzusammenbruch bekomme möchte ich doch lieber einmal hier nachfragen, was ich wohl falsch mache.

Ich habe mir ein notify deklariert, welches ich nutzen möchte um zunächst ein dummy ein zu schalten:


define n_BrennerAn notify Wohnzimmer_WT:temperature.* {

my $temp=(ReadingsVal("Wohnzimmer_WT","temperature",0));
my $setpoint=(ReadingsVal("Wohnzimmer_WT","desiredTemperature",0));
my $modus=(ReadingsVal("Aufheizen","state","off"));

if (($temp < $setpoint) and ($modus == "eco"))
{
  fhem("set BrennerDummy on");
}

}


Hierbei sind

Wohnzimmer_WT -> MAX! Wandthermostat
Aufheizen -> ein dummy, wie im Anhang zu sehen (states:  on/off/eco)

Das notify n_BrennerAn soll nun nur dann auslösen, wenn die ist Temperatur < der soll Temperatur ist. Das klappt soweit auch. Als weitere Bedingung, soll es aber auch nur dann auslösen, wenn das dummy Aufheizen im eco mode ist. Diese Bedingung wird aber völlig ignoriert.
Ich weiss nun echt nicht mehr, was ich an " " oder ' ' oder Klammern noch ändern soll, damit es funzt!?

Ich hoffe, ihr könnt mir helfen.

Grüße
Tino


EDIT:

Anscheinend habe ich das Problem gelöst.
Wenn ich in der DEF des notify

($modus eq "eco")

also eq anstatt von == schreibe, funktioniert es. Da soll man als nicht Perl'er drauf kommen :-|