FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: CoolTux am 04 September 2015, 07:43:47

Titel: Verständnisproblem mit if Bedingung oder ich bin zu ...
Beitrag von: CoolTux am 04 September 2015, 07:43:47
Hallo Leute,

Eigentlich sollte ich in Developer posten, aber das hier ist mir entweder zu doof oder zu peinlich  ;D


SUB_NAME ( $hash ) if( ReadingsVal( $name, "deviceState", "online" ) eq "online" && $hash->{STATE} ne "Initialized" && $hash->{STATE} ne "disabled" );


Rufe Sub mit Namen SUB_NAME auf wenn Reading deviceState online und STATE Initialized und STATE nicht disabled ist.
Eigentlich geht es nicht einfacher. Doch irgendwie will er meine ReadingsVal Bedingung nicht akzeptieren. Obwohl wenn ich deviceState auslese es auch brav mit online angezeigt wird.
Nehme ich die ReadingsVal Bedingung raus geht es, er ruft dann brav die Sub auf.
Kann mir einer verraten wo mein Denkfehler liegt.


Danke schon mal im voraus.
Grüße
Titel: Antw:Verständnisproblem mit if Bedingung oder ich bin zu ...
Beitrag von: CoolTux am 04 September 2015, 08:14:54
Kann es sein das ich innerhalb eines Modules kein ReadingsVal nachen kann oder das ich da Bedingungen zu gibt?
Ich bin verwirrt
Titel: Antw:Verständnisproblem mit if Bedingung oder ich bin zu ...
Beitrag von: CoolTux am 04 September 2015, 08:30:48
Fehler gefunden. Das ist soooooo schmerzbefreit das muß ich Euch erzählen.

Auflösung kommt gleich

;D ;D ;D ;D ;D ;D ;D ;D
Titel: Antw:Verständnisproblem mit if Bedingung oder ich bin zu ...
Beitrag von: CoolTux am 04 September 2015, 08:34:44
if( ReadingsVal( $name, "deviceState", "online" ) eq "online" && $hash->{STATE} ne "Initialized" && $hash->{STATE} ne "disabled" );
geht natürlich, warum sollte es auch nicht gehen.

Wenn man aber beim define ein
readingsSingleUpdate  ( $hash, "deviceState", " online", 0 );
beim Aufräumen schreibt. Man beachte das Leerzeichen bei "deviceState", " online" dann kann es nach einem Neustart auch nicht gehen und auch nicht bei gefühlten 100 Tests.
So das waren jetzt mal eben 10 Stunden für Dummheit. Ich muß noch sooo viel lernen    :-[

Ein gutes hatte es aber, auf der Suche nach einer Lösung habe ich mir sehr viele Module und deren Code angeschaut und ein paar Ideen mitgenommen.