(gelöst) Anwesenheit in Abhängigkeit von Zeit

Begonnen von noice, 16 Februar 2014, 16:47:15

Vorheriges Thema - Nächstes Thema

noice

Nee nur tapatalk schnell installiert :)

Gesendet von meinem HTC Vision mit Tapatalk

BananaPI, RaspberryPi+AddonBoard,HMLAN,  miniCUL 433,nanoCUL 433,nanoCUL868,FHEMduino 433, Jeelink clone diverse Homematic, FS20, MAX, TFA und IT Komponenten.
10" Tablet mit andFhem, Daitem D14000

noice

also hab den Skript etwas umgeschrieben um es zu testen:

define wohnen_aus notify Mirko IF (([Mirko:state] eq "absent") and (IF ($hour ~~ [12..3])) (define aus at +00:00:30 set set WZ_LED_Stripe,Balkon_Licht,WZ_Licht,WZ_Spielekonsolen off) ELSE (define aus at 23:00:00 set WZ_LED_Stripe,Balkon_Licht,WZ_Licht,WZ_Spielekonsolen off)


bekomme aber folgenden Log:
2014.02.17 12:14:26 3: wohnen_aus return value: IF: no right bracket: (([Mirko:state] eq "absent") and (IF ($hour ~~ [12..3])) (define aus at +00:00:30 set set WZ_LED_Stripe,Balkon_Licht,WZ_Licht,WZ_Spielekonsolen off) ELSE (define aus at 23:00:00 set WZ_LED_Stripe,Balkon_Licht,WZ_Licht,WZ_Spielekonsolen off)

IF Modul ist installiert
BananaPI, RaspberryPi+AddonBoard,HMLAN,  miniCUL 433,nanoCUL 433,nanoCUL868,FHEMduino 433, Jeelink clone diverse Homematic, FS20, MAX, TFA und IT Komponenten.
10" Tablet mit andFhem, Daitem D14000

der-Lolo

Ich sehe ein set zuviel nach 00:30:00
Die klammern sollten aber so passen..

noice

stümmt ...

hab mal geändert:

define wohnen_aus notify Mirko IF (([Mirko:state] eq "absent") and (IF ($hour ~~ [12..3]))) (define aus at +00:00:30 set WZ_LED_Stripe,Balkon_Licht,WZ_Licht,WZ_Spielekonsolen off) ELSE (define aus at 23:00:00 set WZ_LED_Stripe,Balkon_Licht,WZ_Licht,WZ_Spielekonsolen off)


log gibt jetzt aus:
2014.02.17 13:05:26 3: wohnen_aus return value: Undefined subroutine &main::IF called at (eval 571) line 1, <in> line 2485.


hmm
BananaPI, RaspberryPi+AddonBoard,HMLAN,  miniCUL 433,nanoCUL 433,nanoCUL868,FHEMduino 433, Jeelink clone diverse Homematic, FS20, MAX, TFA und IT Komponenten.
10" Tablet mit andFhem, Daitem D14000

Puschel74

Hallo,

ZitatIF Modul ist installiert
Und auch geladen?

reload xx_IF(das xx bitte gegen die Nummer tauschen)in die Befehlszeile eingeben und <Enter>

Grüsse
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.

noice

jop auch geladen ... hatte vorher nen restart gemacht ...
auch nach eingabe von reload 98_IF keine Besserung ...
BananaPI, RaspberryPi+AddonBoard,HMLAN,  miniCUL 433,nanoCUL 433,nanoCUL868,FHEMduino 433, Jeelink clone diverse Homematic, FS20, MAX, TFA und IT Komponenten.
10" Tablet mit andFhem, Daitem D14000

der-Lolo

Vielleicht ein rechte problem vom IF modul?

noice

wie meinst du das?
Wie kann ich das prüfen?
BananaPI, RaspberryPi+AddonBoard,HMLAN,  miniCUL 433,nanoCUL 433,nanoCUL868,FHEMduino 433, Jeelink clone diverse Homematic, FS20, MAX, TFA und IT Komponenten.
10" Tablet mit andFhem, Daitem D14000

der-Lolo

Versuch mal ein update Check ins komandofeld - falls das IF Modul vorgeschlagen wird ein update,
Falls nicht würde ich ein update Force vorschlagen...

noice

Force update erledigt ...

code nach rumspielen jetzt so:
define wohnen_aus notify Mirko IF (([Mirko:state] eq "absent") and ($hour ~~ [12..3])) (define aus at +00:00:30 (set WZ_LED_Stripe,Balkon_Licht,WZ_Licht,WZ_Spielekonsolen off)) ELSE (define aus at 23:00:00 (set WZ_LED_Stripe,Balkon_Licht,WZ_Licht,WZ_Spielekonsolen off))


Log Meldung:
2014.02.17 16:32:33 3: define aus at 23:00:00 (set WZ_LED_Stripe;Balkon_Licht;WZ_Licht;WZ_Spielekonsolen off) : aus already defined, delete it first
Unknown command Balkon_Licht, try help.
Unknown command WZ_Licht, try help.
Unknown command WZ_Spielekonsolen, try help.
2014.02.17 16:32:33 3: wohnen_aus return value: aus already defined, delete it first
Unknown command Balkon_Licht, try help.
Unknown command WZ_Licht, try help.
Unknown command WZ_Spielekonsolen, try help.


Und nochmals danke das du so viel Zeit investierst
BananaPI, RaspberryPi+AddonBoard,HMLAN,  miniCUL 433,nanoCUL 433,nanoCUL868,FHEMduino 433, Jeelink clone diverse Homematic, FS20, MAX, TFA und IT Komponenten.
10" Tablet mit andFhem, Daitem D14000

der-Lolo

Ich glaube im IF darf du nicht per Komma aufzählen musst also
(set Wz_licht on,set Wz_spielekonsolen on) ausschreiben...

Schau mal im Forum unter Automatisierung da dann unter if Modul - Damian hat einige gute Syntax Beispiele unter gebracht.
Define aus allready defined kannst du ignorieren oder eben während der Ausführung per delete aus wieder löschen.

noice

Laut IF Modul nicht

ZitatFalls ein Komma im FHEM-Ausdruck vorkommt, muss dieser zusätzlich geklammert werden, damit das Komma nicht als Trennzeichen erkannt wird:


Code: [Auswählen]

define check at +00:10 IF ([outdoor:humidity] > 10) ((set switch1,switch2 off))
BananaPI, RaspberryPi+AddonBoard,HMLAN,  miniCUL 433,nanoCUL 433,nanoCUL868,FHEMduino 433, Jeelink clone diverse Homematic, FS20, MAX, TFA und IT Komponenten.
10" Tablet mit andFhem, Daitem D14000

der-Lolo

Müsstest du dann nicht alles in zwei Klammern fassen? Das define ist ja schließlich auch ein Befehl...

Hast du mal versucht was passiert wenn du es ausschreibst?

noice

hab das ganze mal so probiert:
define wohnen_aus notify WZ_SamsungTV IF (([WZ_SamsungTV:state] eq "absent") and ($hour ~~ [20..3])) (define aus at +00:20:00 (set WZ_LED_Stripe off,set Balkon_Licht off,set WZ_Licht off,set WZ_Spielekonsolen off)) ELSE (define auser at 23:00:00 ((set WZ_LED_Stripe off,set Balkon_Licht off,set WZ_Licht off,set WZ_Spielekonsolen off)))
allerdings schaltet er sofort ab  obwohl der TV an ist ...

BananaPI, RaspberryPi+AddonBoard,HMLAN,  miniCUL 433,nanoCUL 433,nanoCUL868,FHEMduino 433, Jeelink clone diverse Homematic, FS20, MAX, TFA und IT Komponenten.
10" Tablet mit andFhem, Daitem D14000

der-Lolo

Hm, Sorry dann hab ich jetzt auch keinen plan mehr - frag mal im IF Thread, Damian hilft sicher gerne. Wäre toll wenn du hinterher hier aber dann noch das Ergebnis präsentierst.