From ec971f5f3e481bf339f738a816fbee741d961aa6 Mon Sep 17 00:00:00 2001 From: lubepi <31278174+lubepi@users.noreply.github.com> Date: Wed, 11 Feb 2026 19:10:24 +0100 Subject: [PATCH] Fix: Display waking from screensaver on entity changes after thermostat interaction The subscribePowerSubscriptions() function was creating subscriptions via on() without storing the subscription ID in the subscriptions object. This caused UnsubscribeWatcher() to be unable to remove the subscription when the screensaver activated, leaving it active and triggering GeneratePage() on any entity change. Changes: - Store subscription in subscriptions object with key 'power_.ACTUAL' - Add hasOwnProperty check to prevent duplicate subscriptions --- ioBroker/NsPanelTs.ts | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/ioBroker/NsPanelTs.ts b/ioBroker/NsPanelTs.ts index c193ef18..c7595bdd 100644 --- a/ioBroker/NsPanelTs.ts +++ b/ioBroker/NsPanelTs.ts @@ -8780,7 +8780,11 @@ function unsubscribePowerSubscriptions (): void { * @returns {void} */ function subscribePowerSubscriptions (id: string): void { - on({id: id + '.ACTUAL', change: 'ne'}, async function () { + const subscriptionKey = 'power_' + id + '.ACTUAL'; + if (subscriptions.hasOwnProperty(subscriptionKey)) { + return; + } + subscriptions[subscriptionKey] = on({id: id + '.ACTUAL', change: 'ne'}, async function () { (function () { if (timeoutPower) { clearTimeout(timeoutPower);