[gelöst]DOIF starten nicht und bleibt auf initialized

Begonnen von FlorianZ, 07 Juni 2015, 10:54:18

Vorheriges Thema - Nächstes Thema

FlorianZ

Hallo zusammen.

Für meine Beschattungssteuerung hab ich ein DOIF geschrieben.
Es sollte die Rollos runterfahren wenn der Sonnensensor über 30Klux, der Temperatursensor über 20°C
und ein Dummy auf "zeitgesteuert_geoffnet" oder "sensorgesteuert_geoffnet" steht.


([Sonnensensor_Sued:luminance] > 30000
and [Multisensor_Haustuer:temperature:d] > 20
and [Rollo_Status_Sued] eq "zeitgesteuert_geoffnet"
or [Sonnensensor_Sued:luminance] > 30000
and [Multisensor_Haustuer:temperature:d] > 20
and [Rollo_Status_Sued] eq "sensorgesteuert_geoffnet")
(set tahoma_4594601 dim 100; set tahoma_15715611 dim 100; set tahoma_5220573 dim 100; set Rollo_Status_Sued sensorgesteuert_geschlossen)
DOELSEIF
([Sonnensensor_Sued:luminance] < 30000
and [Rollo_Status_Sued] eq "sensorgesteuert_geschlossen")
(set tahoma_4594601 dim 0; set tahoma_15715611 dim 0; set tahoma_5220573 dim 0; set Rollo_Status_Sued sensorgesteuert_geoffnet)


es ist noch das attr wait 900:900 gesetzt.

Das Doif steht immer auf initialized und starten nicht.
Fehlermeldung bekomme ich keine.
Wäre um Hilfe dankbar.


vg

Florian


satprofi

#1
Muss man "oder" nicht in Klammern setzen?


(([Sonnensensor_Sued:luminance] > 30000 and [Multisensor_Haustuer:temperature:d] > 20) and ([Rollo_Status_Sued] eq "zeitgesteuert_geoffnet" or [Rollo_Status_Sued] eq "sensorgesteuert_geoffnet"))
(set tahoma_4594601 dim 100; set tahoma_15715611 dim 100; set tahoma_5220573 dim 100; set Rollo_Status_Sued sensorgesteuert_geschlossen)
DOELSEIF
([Sonnensensor_Sued:luminance] < 30000
and [Rollo_Status_Sued] eq "sensorgesteuert_geschlossen")
(set tahoma_4594601 dim 0; set tahoma_15715611 dim 0; set tahoma_5220573 dim 0; set Rollo_Status_Sued sensorgesteuert_geoffnet)


vielleicht klappt sogar meine verkürzte version

gruss
gruss
-----------------------------------------------------------------------
beelink miniPC - Fhem 6.x CUL 868, FS20, NetIO230 CUL 433
HMLAN, HM-CC-RT-DN,Homematic Actoren,LD382A,Telegram

FlorianZ

Ja ich bin mir auch nicht sicher bezüglich des "or".
Bezieht sich das oder nur auf das vorhergehende und nachfolgende
oder ist aber ab or eine komplett neue Bedingung.

Ich hab jetzt mal deine verkürzte Version 1:1 übernommen.
Danach meldet Fhem
Rollo_Sensorsteuerung_Sued DOIF: no right bracket:

vg
Florian

andiw

ähm, laut Commandref:

Sollen mehrere FHEM-Befehle ausgeführt werden, so werden sie mit Komma statt mit Semikolon angegeben ... (set lamp1 on, set lamp2 off)

evtl. liegt's ja daran ...

FlorianZ

Mein 2. Doif für die Zeitsteuerung der Rollos hab ich ähnlich aufgebaut und das läuft komischerweise (zum Glück  ??? )
Ich versuch trotzdem mal mit Komma statt Semikolon


([Multisensor_Haustuer:luminance:d] > 50
and [05:50-09:00|8]
or [Multisensor_Haustuer:luminance:d] > 50
and [09:00-10:00|7])
(set tahoma_4594601 dim 0; set tahoma_15715611 dim 0; set tahoma_5220573 dim 0; set tahoma_15686651 dim 0; set tahoma_6172850 dim 0; set Rollo_Status_Sued zeitgesteuert_geöffnet; set Rollo_Status_West zeitgesteuert_geöffnet)
DOELSEIF
([Multisensor_Haustuer:luminance:d] < 50
and [16:00-23:00])
(set tahoma_4594601 dim 100; set tahoma_15715611 dim 100; set tahoma_5220573 dim 100; set tahoma_15686651 dim 100; set tahoma_6172850 dim 100; set Rollo_Status_Sued zeitgesteuert_geschlossen; set Rollo_Status_West zeitgesteuert_geschlossen)




satprofi

Zitat von: FlorianZ am 07 Juni 2015, 11:37:27
Ja ich bin mir auch nicht sicher bezüglich des "or".
Bezieht sich das oder nur auf das vorhergehende und nachfolgende
oder ist aber ab or eine komplett neue Bedingung.

Ich hab jetzt mal deine verkürzte Version 1:1 übernommen.
Danach meldet Fhem
Rollo_Sensorsteuerung_Sued DOIF: no right bracket:

vg
Florian

Hallo. Sorry, vergessen "> 20)".

Hab meine version oben ausgebessert
gruss
-----------------------------------------------------------------------
beelink miniPC - Fhem 6.x CUL 868, FS20, NetIO230 CUL 433
HMLAN, HM-CC-RT-DN,Homematic Actoren,LD382A,Telegram

FlorianZ

Super  :)

Deine verkürzte Version läuft so wie es soll.
Vielen Dank für die Hilfe.
Hab nur zur Sicherheit noch alles auf Komma abgeändert.

(([Sonnensensor_Sued:luminance] > 30000 and [Multisensor_Haustuer:temperature:d] > 20) and ([?Rollo_Status_Sued] eq "zeitgesteuert_geoffnet" or [?Rollo_Status_Sued] eq "sensorgesteuert_geoffnet"))
(set tahoma_4594601 dim 100, set tahoma_15715611 dim 100, set tahoma_5220573 dim 100, set Rollo_Status_Sued sensorgesteuert_geschlossen)
DOELSEIF
([Sonnensensor_Sued:luminance] < 30000
and [?Rollo_Status_Sued] eq "sensorgesteuert_geschlossen")
(set tahoma_4594601 dim 0, set tahoma_15715611 dim 0, set tahoma_5220573 dim 0, set Rollo_Status_Sued sensorgesteuert_geoffnet)


vg
Florian