Rule macht nicht, was ICH will ...

Einrichtung der openHAB Umgebung und allgemeine Konfigurationsthemen.

Moderatoren: seppy, udo1toni

Antworten
kaloschke
Beiträge: 193
Registriert: 29. Jan 2019 07:20
Answers: 0

Rule macht nicht, was ICH will ...

Beitrag von kaloschke »

Hallo,
ich habe folgende Rule:

Code: Alles auswählen

rule "Remote Button6 short"
when
    Channel "livisismarthome:BRC8:Nirwana:d85e0ec0133346dc9d29d71ba332ff77:button6" triggered SHORT_PRESSED or
then
    logInfo("Button6 short", "Socket_GardenLight.state: {}",Socket_GardenLight.state.toString)
    if (Socket_GardenLight.state == ON) {
        Socket_GardenLight.sendCommand(OFF)
    } 
    else {
        Socket_GardenLight.sendCommand(ON)
    }
end
Erhofftes Verhalten ist, dass das Item Socket_GardenLight bei jedem Tastendruck umgeschaltet wird.
Im event.log steht aber:

Code: Alles auswählen

2024-02-06 16:43:27.653 ... - Item 'Socket_GardenLight' received command ON
2024-02-06 16:43:27.655 ... - Item 'Socket_GardenLight' predicted to become OFF
und im openhab.log bei JEDEM Tastendruck:

Code: Alles auswählen

2024-02-06 16:43:27.646 ... - Socket_GardenLight.state: OFF
Warum wird nach einem richtigen ON sofort wieder auf OFF gestellt? Verstehe ich nicht :-(

tomtom97
Beiträge: 20
Registriert: 25. Dez 2020 18:24
Answers: 1

Re: Rule macht nicht, was ICH will ...

Beitrag von tomtom97 »

Hallo,
kaloschke hat geschrieben: 6. Feb 2024 17:01 Hallo,
ich habe folgende Rule:

Code: Alles auswählen

rule "Remote Button6 short"
when
    Channel "livisismarthome:BRC8:Nirwana:d85e0ec0133346dc9d29d71ba332ff77:button6" triggered SHORT_PRESSED or
then
Da ist ein "or" am Zeilenende zu viel!

mad-mike
Beiträge: 491
Registriert: 6. Jan 2021 18:05
Answers: 3

Re: Rule macht nicht, was ICH will ...

Beitrag von mad-mike »

Moin, Ich habe einige ""long_pressed"", sowie Batterie taster so verknüpft:

Code: Alles auswählen

rule "Remote Button6 short"
when
    Channel "livisismarthome:BRC8:Nirwana:d85e0ec0133346dc9d29d71ba332ff77:button6" triggered SHORT_PRESSED
then
  Socket_GardenLight.sendCommand(if(Socket_GardenLight.state != ON) ON else OFF)
end
Gruss mad-mike

openHABian 4.3.5 auf Raspberry Pi 4 Mod. b (8GB) ;)

kaloschke
Beiträge: 193
Registriert: 29. Jan 2019 07:20
Answers: 0

Re: Rule macht nicht, was ICH will ...

Beitrag von kaloschke »

@tomtom97 Sorry, da war noch ein zweites Event von einer zweiten Remote. Habe ich rausgelöscht, da es für das Problem irrelevant ist.
@mad-mike Gleiches Ergebnis. Der Inhalt meiner Rule ist m.E. ja auch in Ordnung :roll:

tomtom97
Beiträge: 20
Registriert: 25. Dez 2020 18:24
Answers: 1

Re: Rule macht nicht, was ICH will ...

Beitrag von tomtom97 »

Wird das SHORT_PRESSED eventuell bei einem Tastendruck mehrfach getriggert?

Benutzeravatar
udo1toni
Beiträge: 15244
Registriert: 11. Apr 2018 18:05
Answers: 242
Wohnort: Darmstadt

Re: Rule macht nicht, was ICH will ...

Beitrag von udo1toni »

Wie ist Socket_GardenLight definiert? Womit ist das Item verlinkt? Wenn Du über die UI Socket_GardenLight direkt schaltest, was steht dann im Log?
Was passiert drum herum? Im events.log sollte es z.B. jeweils auch eine Zeile zum Channel geben, der die Rule triggert. Ist das der Fall? Wird nur ein Trigger angezeigt?

Welche Version von openHAB setzt Du ein? Es gab mal in openHAB3 ein entsprechendes Verhalten, also nach einem sendCommand(ON) ein predeicted to become OFF. Der Workaround war, autoupdate abzuschalten, das wäre auch mein erster Vorschlag - auch wenn das erst mal eine Art Symptombehandlung wäre.
Für das Toggeln wäre allerdings in der Tat der ternäre Operator die saubere Lösung, auch wenn Dein Code quasi das gleiche macht und ebenfalls funktionieren sollte.
Nutzt Du noch weitere Trigger dieses Tasters? Oder anders ausgedrückt: könnte es sein, dass Du viele verschiedene "kleine" Rules hast, die sich um solche Tastendrücke kümmern? Oft können solche Rules prima optimiert werden, wenn man sie als Gruppe von Rules betrachtet.
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet

Antworten