DOIF mit RandomTimer Syntax Problem

Begonnen von KNET, 16 Juli 2017, 14:24:50

Vorheriges Thema - Nächstes Thema

KNET

Hallo

Die Kombination DOIF mit RandomTimer funktioniert nicht. Der RandomTimer selber funktioniert.

define ZufallsTimer_Aussen_Chemine_Licht DOIF ([Personen:state] eq "abwesend") (RandomTimer *{h2hms_fmt(hms2h(sunset_abs())-(rand()*2/3)-1/3)} Licht_Chemine *{h2hms_fmt(hms2h(sunset_abs(6*3600))-(rand()*2/3)-1/3)} 1200)

Es kommt beim Speichern folgende Fehlermeldung:

ZufallsTimer_Aussen_Chemine_Licht: unknown attribute DOIF. Type 'attr ZufallsTimer_Aussen_Chemine_Licht ?' for a detailed list.


Kann mir jemand einen Tip geben?

Amenophis86

#1
Und du bist sicher, dass du mit define und nicht mit attr gearbeitet hast?

Edit:
Mal abgesehen davon, dass du :state nicht angeben musst. Ohne Readingsangabe wird auf state geprüft.
Aktuell dabei unser neues Haus mit KNX am einrichten. Im nächsten Schritt dann KNX mit FHEM verbinden. Allein zwei Dinge sind dabei selten: Zeit und Geld...

KNET

Hallo Amenophis86

Ich habe mal :state weggelassen. Einzel Funktioniert es (hat es auch mit :state funktioniert). 

define di_Test DOIF ([Personen] eq "abwesend") ((set EG_Signalgeber_Mp3 playTone 027))

Die Abwesenheit funktioniert.

define ZufallsTimer_Aussen_Chemine_Licht RandomTimer *{h2hms_fmt(hms2h(sunset_abs())-(rand()*2/3)-1/3)} Licht_Garten_Weg 

Auch der RandomTimer funktioniert

Wobei ich jetzt beim speichern von
define ZufallsTimer_Aussen_Chemine_Licht DOIF ([Personen] eq "abwesend") (RandomTimer *{h2hms_fmt(hms2h(sunset_abs())-(rand()*2/3)-1/3)} Licht_Chemine *{h2hms_fmt(hms2h(sunset_abs(6*3600))-(rand()*2/3)-1/3)} 1200)

keine Fehlermeldung bekomme habe. Ich warte mal heute Nacht ab, mal sehen ob es das macht,was ich will.

KNET

Jetzt habe ich bemerkt, dass es am attr switchmode 800/200 liegt.

define ZufallsTimer_Aussen_Chemine_Licht DOIF ([Personen] eq "abwesend") (RandomTimer *{h2hms_fmt(hms2h(sunset_abs())-(rand()*2/3)-1/3)} Licht_Chemine *{h2hms_fmt(hms2h(sunset_abs(6*3600))-(rand()*2/3)-1/3)} 1200)
attr ZufallsTimer_Aussen_Chemine_Licht room 1.9.0_Sicherheit
attr ZufallsTimer_Aussen_Chemine_Licht switchmode 800/200
attr ZufallsTimer_Aussen_Chemine_Licht verbose 5


Wenn ich das attr switchmode weglasse kommt die Fehlermeldung nicht.

Was müsste ich machen, dass es mit dem attr switchmode funktioniert?


Amenophis86

Was soll das für ein attr sein? Zu DOIF gehört es nicht.

Natürlich geht mit und ohne :state. Meinte auch nur, dass du es dir sparen kannst, wenn du magst. Kannst es aber natürlich auch gerne schreinben :)
Aktuell dabei unser neues Haus mit KNX am einrichten. Im nächsten Schritt dann KNX mit FHEM verbinden. Allein zwei Dinge sind dabei selten: Zeit und Geld...

amenomade

Zitat(RandomTimer *{h2hms_fmt(hms2h(sunset_abs())-(rand()*2/3)-1/3)} Licht_Chemine *{h2hms_fmt(hms2h(sunset_abs(6*3600))-(rand()*2/3)-1/3)} 1200)

Was ist das für ein fhem Befehl? RandomTimer ist ein Modul, kein Befehl.

Spätestens beim nächsten "Personen abwesend" kriegst du in der Log:
ZufallsTimer_Aussen_Chemine_Licht: RandomTimer *{h2hms_fmt(hms2h(sunset_abs())-(rand()*2/3)-1/3)} Licht_Chemine *{h2hms_fmt(hms2h(sunset_abs(6*3600))-(rand()*2/3)-1/3)} 1200: Unknown command RandomTimer, try help.
Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus

KNET

Hallo amenomade

Du hast recht. Diese Meldung stand im Log.

Wie bekomme ich das hin, dass der RandomTimer nur bei Abwesenheit funktioniert?

amenomade

Du machst ein RandomTimer mit der richtige Definition / Syntax (siehe CommandREF https://fhem.de/commandref.html#RandomTimer) und mit allen seinen Attribute:
define ZufallsTimer_Aussen_Chemine_Licht RandomTimer *{sunset_abs()} Licht_Garten_Weg +04:00:00 500
attr ZufallsTimer_Aussen_Chemine_Licht switchmode 800/200
attr ZufallsTimer_Aussen_Chemine_Licht disableCond (Value("Personen") ne "abwesend")


DOIF hat nix damit zu tun.
Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus