Okay, I have defined everything now.
What I am wondering is that I need a special rule to update the "systemwide low battery status" (Lowbat_systemwide) programmatically or if there is some automatism available:
main.items:
...
Group Lowbat (All)
Switch Lowbat_SD_Treppenhaus "LOWBAT Treppenhaus Rauchmelder [%s]" <siren> (Lowbat) {homematic="id=myididid1, channel=0, parameter=LOWBAT, converter=BooleanOnOffConverter"}
Switch Lowbat_SD_OG_Room "LOWBAT OG Room Rauchmelder [%s]" <siren> (Lowbat) {homematic="id=myididid2, channel=0, parameter=LOWBAT, converter=BooleanOnOffConverter"}
Switch Lowbat_systemwide "Battery status [%s]" <siren>
...
main.sitemap:
...
Frame label="System status" {
Text item=Lowbat_systemwide {
Text item= Lowbat_SD_Treppenhaus
Text item= Lowbat_SD_Room
}
}
...
And a rule (not optimized, but working):
rule "lowbat monitoring"
when
Item Lowbat changed
then
var Boolean seenLowbat = false
Lowbat?.members.forEach[dev|
if(dev.state == ON) seenLowbat=true
]
if(seenLowbat==true)
postUpdate(Lowbat_systemwide, ON)
else
postUpdate(Lowbat_systemwide, OFF)
end
I want the Lowbat_systemwide item's siren icon to change when one of my battery devices creates a low battery event.
The rule and everything works fine, as I said: I am just wondering if there is a simpler or automatic way to achieve such things..
Also feel free to comment my rule (to make it nicer, or if it has any illegal things; I am new to Xtext/Xbase).
Thanks!