RULE-Probleme Lichtsteuerung
Verfasst: 17. Nov 2019 00:30
Guten Abend in die Runde,
ich bin jetzt seit 3 Stunden dabei eine Regel für mein Licht am Hauseingang zu erstellen und komme vom einen Problem zum nächsten.
Ich habe langsam das Gefühl, dass ich einen Syntax-Fehler nach dem anderen mache; stellenweise (bei Auslassungen von Komponenten) funktionierte es ja halbwegs. Aber eben nur halbwegs.
Zu meinem SetUp:
Über der Haustür thront die Terrassenlampe (HUE). Diese wird vom Hue-eigenen Bewegungsmelder gesteuert.
ABER diese Lampe soll zusätzlich rot oder grün aufleuchten für etwa 10 Sekunden, wenn eine Aktion an der Tür selbst erkannt wurde.
Im besten Falle natürlich sollte die Lampe nach ihrer Rot- oder Grün-Phase wieder zum vorherigen Zustand zurückkehren, sodass der Bewegungsmelder in seiner Funktion nicht eingeschränkt wird. ABER: das ist optional. Mir wäre damit schon Genüge getan, wenn sie eben NUR 10 Sekunden leuchtet und
dann wieder ausgeht.
Die Aktion ist übrigens folgendes: ich habe ein Ekey-Fingerscanner als Zutrittslösung. Die Aktivität davon wird bereits erfolgreich erfasst.
Wenn ein Finger drüber gezogen wird, der nicht registriert ist, soll die Lampe rot aufleuchten.
Wenn ein bekannter Finger die Tür entsperrt soll die Lampe grün aufleuchten.
Aber eben nur für jeweils 10 Sekunden...
Die Bewegungsmelder-Funktion soll davon nicht gestört werden. (Expire-Funktion zbsp. würde mir diese Lampe immer nach 10 Sekunden ausschalten, wenn sie angegangen ist... Aber der Bewegungsmelder soll etwa 2 Minuten an sein).
Der bislang entstandene Code:
Gesetz dem Fall "createTimer" ist NICHT aufgeführt, funktioniert das ganze wunderbar... ABER die Funzel brennt dann eben dauernd.
Hilfe
Vielen Dank schonmal an alle
ich bin jetzt seit 3 Stunden dabei eine Regel für mein Licht am Hauseingang zu erstellen und komme vom einen Problem zum nächsten.
Ich habe langsam das Gefühl, dass ich einen Syntax-Fehler nach dem anderen mache; stellenweise (bei Auslassungen von Komponenten) funktionierte es ja halbwegs. Aber eben nur halbwegs.
Zu meinem SetUp:
Über der Haustür thront die Terrassenlampe (HUE). Diese wird vom Hue-eigenen Bewegungsmelder gesteuert.
ABER diese Lampe soll zusätzlich rot oder grün aufleuchten für etwa 10 Sekunden, wenn eine Aktion an der Tür selbst erkannt wurde.
Im besten Falle natürlich sollte die Lampe nach ihrer Rot- oder Grün-Phase wieder zum vorherigen Zustand zurückkehren, sodass der Bewegungsmelder in seiner Funktion nicht eingeschränkt wird. ABER: das ist optional. Mir wäre damit schon Genüge getan, wenn sie eben NUR 10 Sekunden leuchtet und
dann wieder ausgeht.
Die Aktion ist übrigens folgendes: ich habe ein Ekey-Fingerscanner als Zutrittslösung. Die Aktivität davon wird bereits erfolgreich erfasst.
Wenn ein Finger drüber gezogen wird, der nicht registriert ist, soll die Lampe rot aufleuchten.
Wenn ein bekannter Finger die Tür entsperrt soll die Lampe grün aufleuchten.
Aber eben nur für jeweils 10 Sekunden...
Die Bewegungsmelder-Funktion soll davon nicht gestört werden. (Expire-Funktion zbsp. würde mir diese Lampe immer nach 10 Sekunden ausschalten, wenn sie angegangen ist... Aber der Bewegungsmelder soll etwa 2 Minuten an sein).
Der bislang entstandene Code:
Code: Alles auswählen
rule Ekey-Eingang
when
Item Action received update
then
if (Action.state==-1)
Terrasse.sendCommand("352,100,100")
createTimer(now.plusSeconds(8) [| Terrasse.sendCommand("0,0,0") ]
else {
Terrasse.sendCommand("125,100,100")
createTimer(now.plusSeconds(15) [| Terrasse.sendCommand("0,0,0") ]
var String name = transform("MAP","ekey_names.map",UserID.state.toString())
var String text = " Hallo "+name
Echo_Kueche_TTS.sendCommand(text)
}
end
Hilfe

Vielen Dank schonmal an alle
