Regel wenn ein Gruppemember ON ist
- peter-pan
- Beiträge: 2758
- Registriert: 28. Nov 2018 12:03
- Wohnort: Schwäbisch Gmünd
Re: Regel wenn ein Gruppemember ON ist
Ich bin mir nicht sicher, was du genau meinst, aber schau mal weiter vorne, da hat Udo dir ein schönes Beispiel mit einer Lambda-Funktion gezeigt. Diese könntest du ggf. etwas modifiziert für deinen Zwecke umgestalten, falls deine Gruppen-Items nicht durch einen verlinkten Channel oder andere Rules verändert werden. Deshalb fürchte ich wird es ohne Dummy-Items nicht gehen.
Pi5/8GB(PiOS Lite 64-bit(bookworm)/SSD 120GB - OH4.3.5 openhabian
- udo1toni
- Beiträge: 15249
- Registriert: 11. Apr 2018 18:05
- Wohnort: Darmstadt
Re: Regel wenn ein Gruppemember ON ist
Das ist sehr einfach, ein paar kleine Regeln müssen allerdings eingehalten werden. Im Groben:
Du definierst zwei Gruppenitems, ich nenne sie mal gIn und gOut. In der einen Gruppe werden alle Ankommenden Items gruppiert, in der anderen Gruppe alle abgehenden Items. Weiterhin muss sich der Name des abgehenden Items aus dem ankommenden Item ableiten lassen. Beispiel:
Code: Alles auswählen
Group gIn
Group gOut
Switch sIn_1 (gIn)
Switch sIn_2 (gIn)
Switch sOut_1 (gOut)
Switch sOut_2 (gOut)
Code: Alles auswählen
rule "in und out"
when
Member of gIn changed
then
gOut.members.filter[ i|
i.name.split("_").get(1)==triggeringItem.name.split("_").get(1)
].head.sendCommand(triggeringItem.state)
end
Im Beispiel wird einfach nur die Änderung des einen Items an das andere Item weitergegeben, man kan aber leicht beliebig komplexe Manipulationen einbinden.
Die Rule triggert, sobald einer der Member der Gruppe gIn sich ändert.
Welches Item das ist, ist in triggeringItem gespeichert.
In der Rule wird die Gruppe gOut gefiltert auf die Items, welche im zweiten Teil des Namens identisch zum triggernden Item sind. Theoretisch könnte das auf mehrere Items zutreffen, das Ergebnis dieses Filters ist also immer eine Liste, die auch kein Element enthalten könnte. Wir interessieren uns hier für das erste Element der Liste (.head) (und da wir die Gruppen selbst gefüllt haben, wissen wir auch, dass dies immer das einzige Item der Liste ist.)
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet
-
- Beiträge: 93
- Registriert: 26. Nov 2019 19:05
Re: Regel wenn ein Gruppemember ON ist
EDIT :
Hab den Fehler selbst gefunden. Wenn man nicht schreiben kann sollte man es lassen. Hatte einen Tippfehler in den Items.
Also bitte vergessen
Hab den Fehler selbst gefunden. Wenn man nicht schreiben kann sollte man es lassen. Hatte einen Tippfehler in den Items.
Also bitte vergessen