Best Practice: Namensregeln für Hilfs-Items

Einrichtung der openHAB Umgebung und allgemeine Konfigurationsthemen.

Moderatoren: seppy, udo1toni

Antworten
AndreM77
Beiträge: 127
Registriert: 2. Feb 2021 21:31
Answers: 0

Best Practice: Namensregeln für Hilfs-Items

Beitrag von AndreM77 »

Hi,

ich fange jetzt mit Hilfs-Items an (ich lege in einem Item (Switch) ab, ob ich per Regel ein Rollo geschlossen hab).

Dabei stellt sich mir die Frage: Gibt es hierzu Tipps von den Experten bzgl. Namensgebung? Was hat sich noch so bewährt?

Danke & Grüße
André
von udo1toni » 10. Jun 2021 20:50
Du kannst die Namen frei wählen. Sie sollten am besten zu Deinen restlichen Items passen.
Es böte sich an, ein Wort an den betreffenden Itemnamen anzuhängen, z.B. "_auto". Wenn Du dann ein Rollershutter Item Shutter_1 hast, bekommt das Merker-Item dazu den Namen Shutter_1_auto. Vorteil: Du kannst aus dem einen Itemnamen auf das andere Item schließen, falls Du eine Rule hast, die für mehrere Shutter zuständeig ist. Zum Beispiel:

Code: Alles auswählen

rule "alle Läden zu"
when
    // irgendein Trigger
then
    gShutter.members.forEach[s|
        s.sendCommand(DOWN)
        gAll.allMembers.filter[i|i.name = s.name + "_auto"].head.postUpdate(ON)
    ]
end
In der Gruppe gAll sind alle Gruppen und alle Items, die nicht einer Gruppe zugeordnet sind enthalten (natürlich muss das so eingerichtet werden...)
In der Gruppe gShutter sind alle Rollershutter versammelt.
Die Rule nimmt nun jeden Member der Gruppe gShutter und sendet einen DOWN-Befehl. Anschließend sucht sie aus allen Items (gAll.allMembers) dasjenige Item heraus, welches den gleichen Namen hat, hinten aber zusätzlich noch die Zeichenfolge "_auto" mitführt. Das erste (und einzige...) Item, auf welches diese Einschränkung zutrifft, setzt sie auf ON.

Es ist egal, wieviele Rollläden man hat, solange die Itempaare entsprechend definiert wurden, reicht diese eine Rule aus.
Gehe zur vollständigen Antwort
--
Connectivity: Z-WAVE, TCP/IP, Velux KLF200, Hue Bridge und IO-Homecontrol
Backend: openHAB 4.0.2 im Docker Container auf QNAP NAS
UI: HABPanel auf Amazon Fire 8

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

Re: Best Practice: Namensregeln für Hilfs-Items

Beitrag von udo1toni »

Du kannst die Namen frei wählen. Sie sollten am besten zu Deinen restlichen Items passen.
Es böte sich an, ein Wort an den betreffenden Itemnamen anzuhängen, z.B. "_auto". Wenn Du dann ein Rollershutter Item Shutter_1 hast, bekommt das Merker-Item dazu den Namen Shutter_1_auto. Vorteil: Du kannst aus dem einen Itemnamen auf das andere Item schließen, falls Du eine Rule hast, die für mehrere Shutter zuständeig ist. Zum Beispiel:

Code: Alles auswählen

rule "alle Läden zu"
when
    // irgendein Trigger
then
    gShutter.members.forEach[s|
        s.sendCommand(DOWN)
        gAll.allMembers.filter[i|i.name = s.name + "_auto"].head.postUpdate(ON)
    ]
end
In der Gruppe gAll sind alle Gruppen und alle Items, die nicht einer Gruppe zugeordnet sind enthalten (natürlich muss das so eingerichtet werden...)
In der Gruppe gShutter sind alle Rollershutter versammelt.
Die Rule nimmt nun jeden Member der Gruppe gShutter und sendet einen DOWN-Befehl. Anschließend sucht sie aus allen Items (gAll.allMembers) dasjenige Item heraus, welches den gleichen Namen hat, hinten aber zusätzlich noch die Zeichenfolge "_auto" mitführt. Das erste (und einzige...) Item, auf welches diese Einschränkung zutrifft, setzt sie auf ON.

Es ist egal, wieviele Rollläden man hat, solange die Itempaare entsprechend definiert wurden, reicht diese eine Rule aus.
openHAB4.3.6 stable in einem Debian-Container (bookworm) (Proxmox 8.4.1, LXC), mit openHABian eingerichtet

AndreM77
Beiträge: 127
Registriert: 2. Feb 2021 21:31
Answers: 0

Re: Best Practice: Namensregeln für Hilfs-Items

Beitrag von AndreM77 »

Merci! Klingt logisch und sinnvoll!

Danke!
--
Connectivity: Z-WAVE, TCP/IP, Velux KLF200, Hue Bridge und IO-Homecontrol
Backend: openHAB 4.0.2 im Docker Container auf QNAP NAS
UI: HABPanel auf Amazon Fire 8

Antworten