From: mlobstein Date: Thu, 25 Apr 2024 06:08:58 +0000 (-0500) Subject: [radiothermostat] Skip shutdown actions if thing offline (#16677) X-Git-Url: https://git.basschouten.com/?a=commitdiff_plain;h=7eb5916804cd197c4d78e9892564554a2fb19bd5;p=openhab-addons.git [radiothermostat] Skip shutdown actions if thing offline (#16677) Signed-off-by: Michael Lobstein --- diff --git a/bundles/org.openhab.binding.radiothermostat/src/main/java/org/openhab/binding/radiothermostat/internal/handler/RadioThermostatHandler.java b/bundles/org.openhab.binding.radiothermostat/src/main/java/org/openhab/binding/radiothermostat/internal/handler/RadioThermostatHandler.java index 197bbf7603..fddf8172d4 100644 --- a/bundles/org.openhab.binding.radiothermostat/src/main/java/org/openhab/binding/radiothermostat/internal/handler/RadioThermostatHandler.java +++ b/bundles/org.openhab.binding.radiothermostat/src/main/java/org/openhab/binding/radiothermostat/internal/handler/RadioThermostatHandler.java @@ -288,12 +288,19 @@ public class RadioThermostatHandler extends BaseThingHandler implements RadioThe connector.removeEventListener(this); // Disable Remote Temp and Message Area on shutdown - if (isLinked(REMOTE_TEMP)) { - connector.sendCommand("rem_mode", "0", REMOTE_TEMP_RESOURCE); - } + if (ThingStatus.ONLINE.equals(this.getThing().getStatus())) { + final boolean isRemoteTempLinked = isLinked(REMOTE_TEMP); + final boolean isMessageLinked = isLinked(MESSAGE); + + scheduler.schedule(() -> { + if (isRemoteTempLinked) { + connector.sendCommand("rem_mode", "0", REMOTE_TEMP_RESOURCE); + } - if (isLinked(MESSAGE)) { - connector.sendCommand("mode", "0", PMA_RESOURCE); + if (isMessageLinked) { + connector.sendCommand("mode", "0", PMA_RESOURCE); + } + }, 0, TimeUnit.SECONDS); } ScheduledFuture refreshJob = this.refreshJob;