From 9a9f9e1cb9401a2ec5194c651b1e4e4cc882b047 Mon Sep 17 00:00:00 2001 From: John Crispin Date: Wed, 6 Dec 2023 13:56:52 +0100 Subject: [PATCH] ucentral-state: reuse timers Signed-off-by: John Crispin --- feeds/ucentral/ucentral-state/files/ucentral-state | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/feeds/ucentral/ucentral-state/files/ucentral-state b/feeds/ucentral/ucentral-state/files/ucentral-state index ac26de027..428d39ad5 100755 --- a/feeds/ucentral/ucentral-state/files/ucentral-state +++ b/feeds/ucentral/ucentral-state/files/ucentral-state @@ -68,7 +68,10 @@ state = { }; function offline_handler() { - //ulog(LOG_INFO, 'going offline\n'); + let status = ubus.call('ucentral', 'status'); + if (status?.connected) + return; + ulog(LOG_INFO, 'going offline\n'); ubus.call('network.interface.admin_ui', 'up'); } @@ -142,8 +145,12 @@ let state_handler = { if (!led) return ubus.STATUS_INVALID_ARGUMENT; led_write(led, 'trigger', 'heartbeat'); - if (config.ui.offline_trigger) - offline_timer = uloop.timer(config.ui.offline_trigger * 1000, offline_handler); + if (config.ui.offline_trigger) { + if (offline_timer) + offline_timer.set(config.ui.offline_trigger * 1000); + else + offline_timer = uloop.timer(config.ui.offline_trigger * 1000, offline_handler); + } return 0; },