Set a timer with a reminder to close the window instead
Or even better, turn off the radiator valve when the window is opened, I do this with this rule:
rule "Generic Windows Changed"
when
Member of HeatingWindows changed or
Member of Radiators changed
then
if (previousState == NULL || triggeringItem.state == UNDEF) return;
val String room = triggeringItem.name.split("_").get(0)
val GroupItem window = Windows.members.filter[ i | i.name.contains(room) ].head as GroupItem
val SwitchItem radiator = Radiators.members.filter [ i | i.name.contains(room) ].head as SwitchItem
if (radiator.state == ON) {
if (window.state == OPEN) {
sendCommand(room + "_RadiatorValve", "OFF")
postUpdate(room + "_ThermostatMode", "off")
}
}
if (radiator.state == OFF) {
if (window.state == CLOSED) {
val offset = House_HeatingOffset.getStateAs(QuantityType).doubleValue
val target = (Targets.members.filter[ i | i.name.contains(room) ].head.state as QuantityType<Number>).doubleValue
val ambient = (AmbientTemps.members.filter[ i | i.name.contains(room) ].head.state as QuantityType<Number>).doubleValue
if (ambient <= (target - (offset / 2))) {
sendCommand(room + "_RadiatorValve", "ON")
postUpdate(room + "_ThermostatMode", "heat")
}
}
}
end