Hauptmenü

[gelöst] DOIF mit repeatcmd

Begonnen von siggel, 02 Dezember 2019, 17:20:30

Vorheriges Thema - Nächstes Thema

siggel

Hallo zusammen,
vermutlich ein Anfängerfehler, ich dachte eigentlich, ich bin genau nach Doku und Beispielen vorgegangen:

Ausgangsbasis ist folgendes Beispiel aus der commandref-Doku zum DOIF:
Zitat
Anwendungsbeispiel: Nach dem Eintreffen des Ereignisses wird die push-Meldung stündlich wiederholt, bis Frost ungleich "on" ist.

define di_push DOIF ([frost] eq "on")(set pushmsg "danger of frost")
attr di_push repeatcmd 3600

Das wollte ich nutzen, um in Analogie eine HUE-Lampe alle 2 Sekunden weiter zu dimmen, bis der Tradifri-Schalter nicht mehr gedrückt ist (2 Sekunden sind mit Absicht erstmal langsam gewählt)


define dimDownLamp DOIF ([Tradfri] eq "3001")(set Lamp dimDown)
attr dimDownLamp repeatcmd 2

Damit das auch mehrfach funktioniert, habe ich auch noch ein do always ergänzt.

Im Ergebnis wird dann aber endlos alle 2 Sekunden runtergedimmt, auch wenn der Knopf längst nicht mehr gedrückt ist (und Tradfri längst auf 3003 steht)

Was habe ich da denn am Beispiel falsch verstanden?

RPi4B, ConBee II, OSRAM/Ledvance Plugs/Switch, Aqara Sensors, IKEA Tradfri Dimmers, Gosund Plugs (Tasmota), Shelly Relays/Plugs/Sensors/Buttons, D1minis (Tasmota/WLED), Bosch Indego, Amazon Echo Dots/Fire Tablets (FTUI), HmIP CCU3/Thermostats/Sensors, OctoPi3B+, SMA HM2.0/STP10.0-3SE-40, BYD HVS 7.7

Damian

Es wird mit repeatcmd der Befehlszweig solange wiederholt, bis der Zustand des Moduls wechselt. Wenn do always setzt, kann der Zustand nur wechseln, wenn du einen weiteren Zweig angibst, z. B. mit DOELSE:

define dimDownLamp DOIF ([Tradfri] eq "3001")(set Lamp dimDown)DOELSE
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

siggel

RPi4B, ConBee II, OSRAM/Ledvance Plugs/Switch, Aqara Sensors, IKEA Tradfri Dimmers, Gosund Plugs (Tasmota), Shelly Relays/Plugs/Sensors/Buttons, D1minis (Tasmota/WLED), Bosch Indego, Amazon Echo Dots/Fire Tablets (FTUI), HmIP CCU3/Thermostats/Sensors, OctoPi3B+, SMA HM2.0/STP10.0-3SE-40, BYD HVS 7.7

amenomade

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