Seite 1 von 1
openHAB 3 Sitemap visibility
Verfasst: 7. Aug 2021 14:14
von PJH
Hallo verehre Forumsteilnehmer,
ich möchte in meiner gruppierten Sitemap Gruppen nur zeitweise anzeigen.
Z.B. Soll eine Gruppe "Weihnachten" nur angezeigt werden, wenn der Monat größer "10" ist.
Dazu habe ich folgenden Eintrag in der Sitemap gemacht:
Group item=weihnachten label="Weihnachten" labelcolor=["green"] icon="weihnachtsbaum" visibility=[getMonthValue > 10] {
......
}
Es wird kein Fehler angezeigt, die Sitemap startet, funktionieren tut es aber nicht!
Kann mir jemand weiterhelfen?
Danke un schöne Grüße. PJH
Re: openHAB 3 Sitemap visibility
Verfasst: 7. Aug 2021 14:49
von peter-pan
Ich hab das noch nie mit einem Gruppen-Item probiert. Was wird denn da gruppiert ? Aber wahrscheinlich geht "getMonthValue" nicht. Soweit ich weiss wird der Vergleich mit einem anderen (oder dem gleichen) Item vorgenommen.
Re: openHAB 3 Sitemap visibility
Verfasst: 7. Aug 2021 16:39
von PJH
Hallo,
ich habe -viele andere werden das ja ebenso haben- Gerätesteuerungen (Weihnachtsbaum, Pyramide, Schwibbogen, etc.), die nur zur Weihnachtszeit als Gruppe in der Sitemap angezeigt werden sollen. Diese Zeit soll durch Monatszahlen benannt werden, also nur im November (11) und Dezember (12).
Ja, die Monatsauswertung scheint nicht zu stimmen, wenn ich irgendeinen anderen Item-Wert einsetze, dann funktioniert das ganze.
Danke für die Antwort und einen schönen Gruß. PJH
Re: openHAB 3 Sitemap visibility
Verfasst: 7. Aug 2021 17:00
von peter-pan
Wie gesagt ich hab's noch nie mit Gruppen-Items probiert. Aber der Vergleich funktioniert halt mit Ausdrücken(expressions) nicht.
Die
Doku sagt hierzu
To control visibility based upon combining multiple Items, or on more complex conditions, consider defining and using an additional intermediate Item that is set by a Rule. Rules have a rich set of features that can support more involved scenarios
Re: openHAB 3 Sitemap visibility
Verfasst: 7. Aug 2021 18:20
von PJH
Ich habe jetzt das NTP Bindung verwendet, es zeigt ja folgendermaßen an
JJJJ-MM- und so weiter.
Wie kann ich jetzt nur die Monatszahl extrahieren, dann wäre ich soweit.
Danke und einen schönen Gruß. PJH
Re: openHAB 3 Sitemap visibility
Verfasst: 7. Aug 2021 18:32
von peter-pan
Genau. Ich hab das so eben getestet und eine kleine Rule gebastelt:
Code: Alles auswählen
rule "Monat mit Zeitzone"
when
Item Current_DateTime received update
then
CurrentTime3.postUpdate(Integer::parseInt(Current_DateTime.state.format("%1$tm")))
// logInfo("ntp_month","Zeit hat sich geändert {}", CurrentTime3.state)
end
Noch ein "Dummy Item in der ntp.items
Code: Alles auswählen
Number CurrentTime3 "Heute ist [%s]" <time> // served/updated by ntp_month.rules
in der Sitemap sowas:
Musst das halt noch an deine Namenskonventionen anpassen und den Vergleichswert ändern.
Re: openHAB 3 Sitemap visibility
Verfasst: 7. Aug 2021 19:26
von PJH
Hallo peter-pan,
ja so geht's perfekt.
Ganz vielen Dank.
Aber jetzt habe ich noch eine Nickeligkeit.
Die Group "Ostern" soll nur in den Monaten 3, 4 und 5 angezeigt werden.
Fällt Dir dazu etwa auch noch 'was ein?
Schöne Grüße. PJH
Re: openHAB 3 Sitemap visibility
Verfasst: 7. Aug 2021 19:53
von peter-pan
So müsste es gehen:
.sitemap:
Code: Alles auswählen
Group item=gOWM1 visibility=[CurrentTime3 ==3,CurrentTime3 ==4,CurrentTime3 ==5]
Rule und Dummy-Item sind ja schon aktiv.
Gruss - Peter
Re: openHAB 3 Sitemap visibility
Verfasst: 7. Aug 2021 20:07
von PJH
... und auch das geht.
Nochmals allerbesten Dank für Deine Mühe (und Wissen).
Schöne Grüße. PJH
Re: openHAB 3 Sitemap visibility
Verfasst: 7. Aug 2021 20:12
von peter-pan
...Gerne.