DOIF macht nur den ersten Befehl (gelöst)

Begonnen von MrTom, 02 Juni 2017, 21:25:05

Vorheriges Thema - Nächstes Thema

MrTom

Hallo zusammen

ich habe einige einfach Bewegungsmelder im Einsatz, die ich über DOIF-Logiken verwende.

Zum Beispiel:
#########################################################################
## Bewegungsmelder Keller
#########################################################################
define XX_motion_Keller DOIF ([MYSENSOR_4:value1] eq "6957769") \
({ \
        fhem ("set KE_Lampe_Keller on-for-timer 300 ;;;; \
        define XX_motion_Keller_aus at +00:00:20 setreading XX_motion_Keller state off;;;; setreading MYSENSOR_4 value1 0") \
})
attr XX_motion_Keller alias Bewegungsmelder Keller
attr XX_motion_Keller cmdState on|off
attr XX_motion_Keller devStateIcon on:message_presence@red off:message_presence@white
attr XX_motion_Keller do always
attr XX_motion_Keller group Motiondetection
attr XX_motion_Keller icon motion_detector
attr XX_motion_Keller room Keller


Das funktionierte auch bis zum Update auf 5.8 problemlos.

Nun scheint es so, dass das Perl-Kommando ({
fhem ("set KE_Lampe_Keller on-for-timer 300 ;;
define XX_motion_Keller_aus at +00:00:20 setreading XX_motion_Keller state off;; setreading MYSENSOR_4 value1 0")
})
nur zum ersten Teil (einschalten der Lampe) läuft. Das Device XX_motion_Keller_aus wird nicht erzeugt und auch das setreading wird nicht ausgeführt.

Wenn ich jedoch den Befehl über das Befehlsfeld oder telnet ausführen, werden alle 3 Befehle abgearbeitet. Auch ein zusammenschieben der Zeilen (Verdacht auf ein Problem mit den Zeilenumbrüchen) brachte auch keine Verbesserung. In den Logs finde ich keine Hinweise. Auch nicht bei Verbose 5.

Habt ihr eine Lösung?

Gruss
Thomas
RPi2: FHEM 5.8 mit Jeelink (ATTiny) und AliRF (PIR's)
KNX/EIB: alix3d3 als IP-GW, div. Sensoren und Aktoren (Licht, Jalousien und Markisen)
Mysensors: Temp/Hum/Lux-Sensoren, PIR's, Türkontakte,
verschiedene RGB-Aktoren, Vantage 2, Fritzbox, Vu+ Duo

Damian

define XX_motion_Keller DOIF ([MYSENSOR_4:value1] eq "6957769")
(set KE_Lampe_Keller on-for-timer 300)(setreading XX_motion_Keller state off, setreading MYSENSOR_4 value1 0)

attr XX_motion_Keller wait 0,20


Nutze die Möglichkeiten, die dir das Modul bietet.
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

MrTom

RPi2: FHEM 5.8 mit Jeelink (ATTiny) und AliRF (PIR's)
KNX/EIB: alix3d3 als IP-GW, div. Sensoren und Aktoren (Licht, Jalousien und Markisen)
Mysensors: Temp/Hum/Lux-Sensoren, PIR's, Türkontakte,
verschiedene RGB-Aktoren, Vantage 2, Fritzbox, Vu+ Duo