[gelöst] Lampe auf Dauerlicht, DOIFs ignorieren

Begonnen von Fredi69, 28 November 2020, 16:09:50

Vorheriges Thema - Nächstes Thema

Fredi69

Ich habe im Außenbereich eine Lampe die von vier verschiedenen Bewegungsmeldern über 4 DOIFs angesteuert wird.
Hat jemand eine schlaue und einfache Lösung, die Lampe kurzfristig auf Dauerlicht zu schalten und die DOIFs alle zu ignorieren?
Ohne einen umfangreichen Umbau aller DOIFs fällt mir da spontan nichts ein.

Danke für Eure Unterstützung
fhem auf Raspberry Pi 3
FRITZ!Box7490, Fritz!Box 3270 AP, 3xHMLAN, CUL868, nanoCUL 433 für IT, JeeLink für LaCrosse, HUE Bridge 2.0, Samsung UE46C8790 (STV), mehrere Homematic, Intertechno, Shelly und LaCrosse Komponenten

MadMax-FHEM

Naja: entweder in jedes DOIF eine "Abfrage" manuell/automatik einbauen...

Allerdings würde ich ja von 4 DOIFs auf 1 DOIF umbauen, kann mir nicht vorstellen, dass man da wirklich 4 DOIFs braucht...
(oder ein notify ;)  )

Und dann nur in das eine DOIF eben automatic/manuell...

Wenn lists der DOIFs und der Bewegungsmelder (oder wenigstens jeweils eins davon) gepostet wären, könnte man mehr sagen...

Über welchen Weg willst du dann "Dauerlicht" ein-/ausschalten?

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

betateilchen

#2
Zitat von: Fredi69 am 28 November 2020, 16:09:50
Ohne einen umfangreichen Umbau aller DOIFs fällt mir da spontan nichts ein.

mir schon :)

Entweder das device nach dem Einschalten auf Dauerlicht einfach umbenennen und später wieder zurück.
Dann kommen zwar ggf. ein paar Fehlermeldungen, wenn die DOIF versuchen, zu schalten, die Meldungen kann man aber ignorieren.
Alternative: die DOIF für eine bestimmte Zeit auf disabled setzen (falls das geht, keine Ahnung), wenn Dauerlicht geschaltet wurde.




Edit: commandref sagt:

ZitatDeaktivieren des Moduls

Ein DOIF-Modul kann mit Hilfe des Attributes disable, deaktiviert werden. Dabei werden alle Timer und Readings des Moduls gelöscht. Soll das Modul nur vorübergehend deaktiviert werden, so kann das durch set <DOIF-modul> disable geschehen.

wobei ich denke, dass anstatt DOIF-modul eher DOIF-device gemeint ist.



Edit2:

Dass in dem Text "mit Hilfe des Attributes disable" steht, später dann aber ein Set-Befehl angegeben ist, finde ich absurd.

-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

rabehd

ZitatAlternative: die DOIF für eine bestimmte Zeit auf disabled setzen (falls das geht, keine Ahnung), wenn Dauerlicht geschaltet wurde.

Für das DOIF gibt es einen set-Befehl dafür.
So wechsle ich zwischen Weihnachtszeit und der Nicht-weihnachtszeit.
Auch funktionierende Lösungen kann man hinterfragen.

amenomade

Zitat von: betateilchen am 28 November 2020, 16:33:07
Dass in dem Text "mit Hilfe des Attributes disable" steht, später dann aber ein Set-Befehl angegeben ist, finde ich absurd.
Warum absurd? Es gibt einfach beide Möglichkeiten, per Attribut und/oder per set Befehl.
Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus

Fredi69

Vielen Dank für Eure Unterstützung, ich werde es mit DOIF mit disable umsetzten.
fhem auf Raspberry Pi 3
FRITZ!Box7490, Fritz!Box 3270 AP, 3xHMLAN, CUL868, nanoCUL 433 für IT, JeeLink für LaCrosse, HUE Bridge 2.0, Samsung UE46C8790 (STV), mehrere Homematic, Intertechno, Shelly und LaCrosse Komponenten

Kuehnhackel

Hallo, auch wenn es gelöst erscheint.

Aber es gibt noch einen anderen Trick, nämlich wenn das Licht manuell geschaltet wird, kann man in das DOIF folgendes einbauen:

(set x.x:FILTER=STATE!=on x.x)
Wenn ich bevor das DOIF triggert das Licht manuell einschaltet bleibt es bis zum manuellen Ausschalten an. Ansonsten wird über den Bewegungsmelder geschaltet, da bleibt das Licht dann für 3 min an.

So sieht bei mir das komplette DOIF aus:
defmod MQTT2_DVES_BF00E2_DOIF_2 DOIF ([MQTT2_DVES_BF00E2:"^Data:.D2BC9E"] and [Lux_Dachboden:BH1750_Illuminance]< 200) (set Wintergarten_3er:FILTER=STATE!=on on-for-timer 180)(set Wintergarten_4er:FILTER=STATE!=on on-for-timer 180)

Liebe Grüße

Ralf