From 74c583a6e37f7b9bef12232651b488933502c3a8 Mon Sep 17 00:00:00 2001 From: seaspotter Date: Wed, 23 Sep 2026 13:16:28 +0200 Subject: [PATCH] avm consumer: invertierte Session-Refresh-Bedingung beheben MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ensure_valid_session_id() erneuerte die Session nur, wenn check_valid_session_id() False war - die Funktion liefert aber "ist ungültig" zurück, nicht "ist gültig". Dadurch wurde nie erneuert, sobald session_id einmal None oder abgelaufen war: alle Anfragen liefen dauerhaft mit sid=None und schlugen mit HTTP 403 fehl. Umbenannt zu session_id_expired(), passend zum tatsächlichen Rückgabewert. --- packages/modules/consumers/avm/avm/consumer.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/modules/consumers/avm/avm/consumer.py b/packages/modules/consumers/avm/avm/consumer.py index 5d72906187..0461efc4c4 100644 --- a/packages/modules/consumers/avm/avm/consumer.py +++ b/packages/modules/consumers/avm/avm/consumer.py @@ -83,12 +83,12 @@ def update() -> ConsumerState: ) def ensure_valid_session_id(): - if check_valid_session_id() is False: + if session_id_expired(): config.configuration.session_id = get_session_id() config.configuration.session_mtime = time.time() Pub().pub(f"openWB/set/system/device/{config.id}/config", asdict(config)) - def check_valid_session_id() -> bool: + def session_id_expired() -> bool: return (config.configuration.session_id is None or config.configuration.session_mtime is None or time.time() - config.configuration.session_mtime > 300)