IF Abfrage der Readings, Stati(usse) funktioniert nicht wie gewünscht (gelöst)

Begonnen von lukasbastelpeter, 26 September 2014, 08:32:03

Vorheriges Thema - Nächstes Thema

lukasbastelpeter

Hallo, dies ist mein erster Post, und ich habe das Forum auch schon einige Wochen lang nach einer Lösung durchsucht.
Könnt ihr mir verraten, warum das hier:

Zitatdefine Display_Laden notify StatusDisplay IF([StatusDisplay:powerLevel] <15 && [StatusDisplay:powerPlugged] ne true) (set Display_Ladegeraet on);; IF([Display_Ladegeraet] eq on && [StatusDisplay:powerPlugged] ne true) (set Display_Ladegeraet on);;IF([StatusDisplay:powerLevel] =100 && [StatusDisplay:powerPlugged] ne false) (set Display_Ladegeraet off)

nicht funktioniert wie ichs gerne hätte? Also präzise: Es passiert gar nichts.

Die Idee ist: bei jeder Aktualisierung der Display-Parameter wird der Ladestand geprüft, wenn er kleiner als 15 ist und noch nicht Lädt, dann geht das Ladegerät an. Um Funkeinstreuungen usw. vernachlässigen zu können wird im Anschluss geprüft ob die "Dumme"-Funksteckdose auch wirklich an ist, wenn sie soll, und nicht der Nachbar die gleiche Frequenz und Kanal zufällig ausgeschaltet hat. - Wenn das Display nicht lädt obwohl es sollte wird einfach noch einmal der Ein- befehl geschickt. Wenn 100% erreicht sind wird das Ladegerät abgeschaltet.

(Ich benutze lieber das "ne" und die Invertierte Bedingung, damit ein ggf. auftretendes anderes Ereigniss auch zur Ladung führt. Und das Display immer geladen wird. - Leider habe ich nämlich den Power-Taster versteckt ;).)





EDIT: Nach wechsel des Zwischenstecker-Aktors von IT zu HM ist das Problem verschwunden.
# Raspberry Pi
# Homematic, Z-Wave
# HUE, Tradfri
# Harmony
# ESP8266  Basteleien per MQTT

Puschel74

Hallo,

Fragen zu IF gehören in den Bereich Automatisierung.
Danke.

Grüße

Edith: Dein Titel muss noch korrigiert werden - if != IF
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

krikan

http://fhem.de/commandref_DE.html#IF

sagt:
(Vergleichs-)Operator ist -wie bei Perl- "==" und nicht der Zuweisungsoperator "="
Stringvergleich ne "false" und nicht ne false

Da ist aber ein bißchen Glaskugel wegen fehlender Infos bei....



Puschel74

Hallo,

so beim nochmaligen Durchsehen vermute ich das sich im Logfile vielleicht die eine oder andere Meldung verstecken könnte.
http://forum.fhem.de/index.php/topic,16311.0.html
mit der Bitte sich das mal durch zu lesen.
Es kann dabei helfen die Frage- Antwort-Spielchen zu verkürzen.
Danke.

Grüße
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

lukasbastelpeter

Krass, mit so einer schnellen Reaktion habe ich gar nicht gerechnet.  ;D

Also, das = durch == zu ersetzen bringt mich auch nicht weiter, ich habe es zu Testzwecken schon mit ==, =, <,<<, usw versucht. Das Problem liegt hier m.M.N. bei dem auslesen des Readings, das funktioniert einfach nicht. Keine Ahnung warum... Log-File-Einträge würde ich gerne beisteuern, allerdings hab ich keins...

Wie lege ich ein neues an?

Der genannte Code ist vor hin auf einer Bahnfahrt aus dem Kopf hingeschrieben, aber jetzt habe ich noch einmal nach gesehen, genau so wie er da steht funktioniert er nicht.
# Raspberry Pi
# Homematic, Z-Wave
# HUE, Tradfri
# Harmony
# ESP8266  Basteleien per MQTT

krikan

Was hältst Du davon, wenn Du das notify mal mit trigger aufrufst und dann in das Log schaust?
S.27 dieses Pflicht!-Dokumentes: http://fhem.de/Heimautomatisierung-mit-fhem.pdf

Puschel74

Hallo,

man sollte sich die angebotenen Links schonmal durchlesen.

Grüße
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

lukasbastelpeter

Ich hab beides gelesen.
Per Trigger passiert das gleiche, das notify an sich funktioniert, habe ich mit set dummy 1 getestet.
Nach dem StatusDisplay aktualisiert ist der dummy 1.

Log hätte ich gerne aber ich habe einfach keines. Kann ich das zu Beginn aus versehen gelöscht haben?

Ich habe auch schon

Zitatdefine Display_Laden notify StatusDisplay IF([StatusDisplay:powerLevel] <15 && [StatusDisplay:powerPlugged] ne "true") (set Display_Ladegeraet on);; IF([Display_Ladegeraet] eq "on" && [StatusDisplay:powerPlugged] ne "true") (set Display_Ladegeraet on);;IF([StatusDisplay:powerLevel] ==100 && [StatusDisplay:powerPlugged] ne "false") (set Display_Ladegeraet off)

getestet. Gleiches Phänomen.
Wenn ich das ganze als at, oder sonstwas umbaue, dann siehts ähnlich aus. Ich behaupte, dass das Problem bei dem Auswerten der Readings liegt.
Das ist formal aber richtig?
[Device:Reading] wobei Reading genau so geschrieben wird wie im "list"?
# Raspberry Pi
# Homematic, Z-Wave
# HUE, Tradfri
# Harmony
# ESP8266  Basteleien per MQTT

Puschel74

#8
Hallo,

hier mal die Kopie aus der verlinkten commandref:

ZitatDie Syntax für die Nutzung von Readings oder Internals (ein Internal wird durch ein & gekennzeichnet)
[<device>:<reading>:<format>|[<regulärer Ausdruck>]]
Und hier auch gleich ein Beispiel wie das aussehen könnte:
define check at +00:10 IF ([outdoor:humidity] > 70) (set switch1 off) ELSE (set switch1 on)

Da ich keine Codes IN der fhem.cfg bearbeite und auch IF nicht verwende bin ich hier leider raus.

Grüße
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

Damian

Zitat von: lukasbastelpeter am 26 September 2014, 13:45:23
Ich hab beides gelesen.
Per Trigger passiert das gleiche, das notify an sich funktioniert, habe ich mit set dummy 1 getestet.
Nach dem StatusDisplay aktualisiert ist der dummy 1.

Log hätte ich gerne aber ich habe einfach keines. Kann ich das zu Beginn aus versehen gelöscht haben?

Ich habe auch schon

getestet. Gleiches Phänomen.
Wenn ich das ganze als at, oder sonstwas umbaue, dann siehts ähnlich aus. Ich behaupte, dass das Problem bei dem Auswerten der Readings liegt.
Das ist formal aber richtig?
[Device:Reading] wobei Reading genau so geschrieben wird wie im "list"?
Hinter IF  muss auf jeden Fall ein Leerzeichen stehen, damit es als FHEM-Befehl erkannt wird. Also IF (....
Als erstes musst du dich um deinen Log kümmern, denn da hättest du die passende Meldung gefunden, dass IF(... nicht bekannt ist.

Gruß

Damian
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

lukasbastelpeter

Das Beispiel habe ich per copy&paste bereits bei mir getestet und lediglich die "outdoor" und "humidity" ersetzt. Hat auch nicht funktioniert.
# Raspberry Pi
# Homematic, Z-Wave
# HUE, Tradfri
# Harmony
# ESP8266  Basteleien per MQTT

Puschel74

Hallo,

ZitatHat auch nicht funktioniert.
Ja das ist klar  :o ironieoff

Wenn es bei dir nicht klappt wäre evtl. mal ein Blick ins FHEM-Logfile gut - wie Damian schon geschrieben hat.
Hier
http://forum.fhem.de/index.php/topic,16311.0.html
hab ich mal zusammen geschrieben wie die Hilfesuchenden den Helfenden das Leben etwas leichter machen können.

grüße
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

lukasbastelpeter

Sorry, ich habe doch bereits mein Leid geklagt:

Ich habe kein Logfile! - Wie kann ich das nachträglich noch einmal anlegen?
(Das passt hier wahrscheinlich nicht so wirklich in den Thread)

# Raspberry Pi
# Homematic, Z-Wave
# HUE, Tradfri
# Harmony
# ESP8266  Basteleien per MQTT

maxritti

Schau mal im Room Everything in dein "global".
Dort gibt es kein Attribut "logfile"?

Dann kannst Du das ja einfach anlegen und nach einem "shutdown restart" sollte das auch angelegt werden.


lukasbastelpeter

Hi, ne da stand tatsächlich einfach nichts!
Habe jetzt ein Backup restored, und einige Sachen wieder konfiguriert. Jetzt steht im Log das angehängte.
Ich habe erst das Ladegerät händisch aus gemacht, dann kam die Meldung unten, zu Testzwecken habe ich Ladestand < 20 in Ladestand < 100 geändert.

BTW: Ich habe jetzt da wieder ein attr. logfile, und ein logfite, aber wie kann ich mir das im Screen sichtbar machen lassen?
Also wie bekomme ich ein einsehbaren Menüeintrag?
# Raspberry Pi
# Homematic, Z-Wave
# HUE, Tradfri
# Harmony
# ESP8266  Basteleien per MQTT

Puschel74

Hallo,

WIE um Himmels willen hast du dein FHEM installiert?
Soweit ich weiß wird das FHEM-eigene Logfile immer automatisch angelegt und auf der linken Seite sollte du einen "Menüpunkt" Logfile finden.

So ist es zumindest bei ALLEN Geräten auf denen ich bisher FHEM installiert habe.
Egal ob FritzBox, RasPi, Cubieboard oder CubieTruck.

Grüße
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

lukasbastelpeter

Ja, genau, anscheinend ist 'was schief gegangen oder aber ich habe es aus versehen gelöscht... Ich habe jedenfalls kein menüeintrag. Ein Logfile habe ich jetzt wieder aber halt keinen passenden Menüeintrag.

Ich habe den IT-Aktor jetzt gegen eine HM-Aktor getauscht, das Problem scheint verschwunden.
# Raspberry Pi
# Homematic, Z-Wave
# HUE, Tradfri
# Harmony
# ESP8266  Basteleien per MQTT

Puschel74

Hallo,

ich wollte grade meine Frage oben umstellen - WAS hast du in der Konfig rumgepfuscht damit der Eintrag verschwindet.
Vermutlich gelöscht weil du nicht wusstest wofür das gut sein soll  ;D
Wer weiß was du noch alles gelöscht hast - installier dir FHEM neu und vergiss in Zukunft das es eine fhem.cfg gibt.

Grüße

Edith: Lies dir mal bitte das durch http://forum.fhem.de/index.php/topic,16311.0.html und leg dir eine Signatur zu - danke.
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

lukasbastelpeter

In gefühlt jedem Post von Euch stand, dass ich das lesen soll. das habe ich sogar schon vor meinem ersten Post getan...
:)


Alles klar. Danke, dann kann das hier von mir aus geschlossen werden
# Raspberry Pi
# Homematic, Z-Wave
# HUE, Tradfri
# Harmony
# ESP8266  Basteleien per MQTT

Puschel74

Hallo,

ZitatIn gefühlt jedem Post von Euch stand, dass ich das lesen soll.
Ich hab das hier nur 2-mal gepostet - ok, einmal zu oft.

Aber beim zweiten Mal wollte ich nur auf den Teil mit der Signatur hinweisen.
Es gibt schon Unterschiede je nach Hardwareplattform - und eine Sig erspart einige Nachfragen.

Und schliessen ist hier nicht - aber du hast ja in dem verlinkten Beitrag bereits gelesen was der Fragesteller machen könnte   ;)

Grüße
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

lukasbastelpeter

Aber was ist hier die Lösung? Ich habe einfach zu HM gewechselt, das Problem besteht weiterhin.
# Raspberry Pi
# Homematic, Z-Wave
# HUE, Tradfri
# Harmony
# ESP8266  Basteleien per MQTT

maxritti

Puschel hat es schon mal geschrieben.
An Deiner Stelle würde ich die Konfig von FHEM sichern. Dann FHEM komplett löschen und from the scratch neu installieren.
Denn das der Logeintrag aus FHEM Web weg ist, kommt bestimmt nicht von alleine.

Und wer weiss, was da noch alles nicht so ist, wie es sein sollte.


EDIT:

Ich sehe gerade, dass Du den ersten Beitrag bearbeitet hast.

Was heisst denn "Nach wechsel des Zwischenstecker-Aktors von IT zu HM ist das Problem verschwunden"?
Damit ist das IF Problem gelöst?

Nur falls mal jemand ein ähnliches Problem hat.

Puschel74

Hallo,

dein Edith im ersten Beitrag:
ZitatEDIT: Nach wechsel des Zwischenstecker-Aktors von IT zu HM ist das Problem verschwunden.
Und nun:
ZitatIch habe einfach zu HM gewechselt, das Problem besteht weiterhin.

Hast du noch imemr das "Problem" dann bitte korrigier deinen ersten Beitrag - wenn das "Problem" erledigt ist kennzeichne den Beitrag bitte als Gelöst.

Und wie schon geschrieben - da wir nicht wissen was du noch alles gelöscht hast in deiner fhem.cfg - installier einfach mal neu.

Zitatwürde ich die Konfig von FHEM sichern
Aber nur den "Benutzerteil" der Konfig wieder einfügen - sonst ziehst du dir das "Problem" uU mit.

Grüße
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.