FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: vic am 22 November 2015, 09:30:31

Titel: Variablen funktionieren seit letzten Update nicht mehr korrekt
Beitrag von: vic am 22 November 2015, 09:30:31
Guten Tag zusammen

Langsam bin ich so richtig am verzweifeln. Ich finde den Fehler einfach nicht.
Seit dem letzten Fhem-Update scheinen sämtliche Variablen die ich gesetzt hatte nicht mehr korrekt zu funktionieren.
(Auch das Wettermodul meldet Fehler zurück was jedoch nicht so wichtig ist (Undefined subroutine &main::WeatherAsHtml called at (eval 487) line 1.)
Habe nun seit 6 Tagen in allen möglichen Foren gesucht, einiges probiert und gelange einfach nicht auf einen grünen Zweig.
Als Beispiel stelle ich die Steuerung der Markisen bei Aktivierung des Regensensors rein mit allen Versuchen (4 davon einer nicht auskommentiert) welche ich unternommen hatte.
Folglich werden auch Variablen die ich perl übergeben möchte nicht übernommen.

Fehlermeldung im Log:
2015.11.22 09:06:21 1: PERL WARNING: Use of uninitialized value $value{"var_Regenaktiv"} in string eq at (eval 51) line 1.
2015.11.22 09:06:21 3: eval: {if ($value{var_Regenaktiv} eq "on") {fhem("set Markise_1 on;set Markise_2 on;set var_Regenaktiv off;define Markise_2_0002 at +00:01:08 set Markise_2 on;define Markise_1_0004 at +00:01:10 set Markise_1 on") } }


Code in Fhem:
# ****************** Steuerung Markisen ******************
define var_Regenaktiv dummy
set var_Regenaktiv on
attr var_Regenaktiv alias Regensensor
attr var_Regenaktiv devStateIcon on:remotecontrol/black_btn_GREEN off:remotecontrol/black_btn_RED
attr var_Regenaktiv group Markisen
attr var_Regenaktiv icon weather_rain_light
attr var_Regenaktiv setList off on
attr var_Regenaktiv verbose 0

Versuche:
#define act_on_Regensensor_1 notify Regensensor {if (Value{$var_Regenaktiv} eq "on") {fhem("set Markise_1 on;;set Markise_2 on;;set var_Regenaktiv off;;define Markise_2_0002 at +00:01:08 set Markise_2 on;;define Markise_1_0004 at +00:01:10 set Markise_1 on") } }

#define act_on_Regensensor_1 notify Regensensor {if (($var_Regenaktiv} eq "on")) {fhem("set Markise_1 on;;set Markise_2 on;;set var_Regenaktiv off;;define Markise_2_0002 at +00:01:08 set Markise_2 on;;define Markise_1_0004 at +00:01:10 set Markise_1 on") } }

#define act_on_Regensensor_1 notify Regensensor {if (($var_Regenaktiv} == "on")) {fhem("set Markise_1 on;;set Markise_2 on;;set var_Regenaktiv off;;define Markise_2_0002 at +00:01:08 set Markise_2 on;;define Markise_1_0004 at +00:01:10 set Markise_1 on") } }

define act_on_Regensensor_1 notify Regensensor {if ($value{var_Regenaktiv} eq "on") {fhem("set Markise_1 on;;set Markise_2 on;;set var_Regenaktiv off;;define Markise_2_0002 at +00:01:08 set Markise_2 on;;define Markise_1_0004 at +00:01:10 set Markise_1 on") } }


Vielen herzlichen Dank für eure Hilfe. Vermutlich handelt es sich um ein kleines Problem.

Claudio
Titel: Antw:Variablen funktionieren seit letzten Update nicht mehr korrekt
Beitrag von: Bennemannc am 22 November 2015, 09:45:41
Hallo,

hat das mit dem set in der fhem.cfg denn mal funktioniert ? Normalerweise werden dort doch "nur" attribute gespeichert. Der set Befehl wird doch normalerweise über das WebIf abgesetzt und nicht aus der Config. Was ich mir noch vorstellen könnte wäre, setstate ... on zu setzen. Außerdem würde ich das fhem IF verwenden. Dann musst Du weniger escapen und hast mit den geschweiften Klammen nichts am Hut.

Gruß Christoph
Titel: Antw:Variablen funktionieren seit letzten Update nicht mehr korrekt
Beitrag von: krikan am 22 November 2015, 09:49:28
Bitte schau Dir die Updatehinweise auf FHEM 5.7 an: http://forum.fhem.de/index.php/topic,44094.msg359518.html#msg359518

Zitat$value{def} gibts nicht mehr, bitte Value("def") verwenden

Gruß, Christian
Titel: Antw:Variablen funktionieren seit letzten Update nicht mehr korrekt
Beitrag von: stromer-12 am 22 November 2015, 09:53:47
Du hast noch nicht alle Versuche.
$value{var_Regenaktiv} ist durch Value("var_Regenaktiv") zu ersetzen.

Gesendet von meinem GT-I9295

Titel: Antw:Variablen funktionieren seit letzten Update nicht mehr korrekt
Beitrag von: vic am 22 November 2015, 10:18:34
Wow.... Vielen lieben Dank Krikan und stromer-12.

Das war die Lösung     $value{var_Regenaktiv} ist durch Value("var_Regenaktiv") zu ersetzen.

Nun funktioniert die Steuerung wieder perfekt.

Ihr seid echt super und vor allem ultraschnell.

Danke

Claudio