From bd3382cc2e9410aa00cee588ae390417f80e1661 Mon Sep 17 00:00:00 2001 From: Vincent Date: Sun, 22 Nov 2020 13:52:11 +0100 Subject: [PATCH] . --- .idea/workspace.xml | 23 ++++++++++++----------- scripts/cron/cron.php | 1 + scripts/lib/scenes.php | 26 ++++++++++++++------------ 3 files changed, 27 insertions(+), 23 deletions(-) diff --git a/.idea/workspace.xml b/.idea/workspace.xml index 3d1bd80..80753c5 100644 --- a/.idea/workspace.xml +++ b/.idea/workspace.xml @@ -3,6 +3,7 @@ + @@ -1306,12 +1307,12 @@ - + - + diff --git a/scripts/cron/cron.php b/scripts/cron/cron.php index a4c0d62..d05bc0e 100644 --- a/scripts/cron/cron.php +++ b/scripts/cron/cron.php @@ -116,6 +116,7 @@ function cronRooms($cronmin) updateCourAuto(); } checkPlanetarium(); + checkWCVMC(); } function cronFlowerPower($cronmin) diff --git a/scripts/lib/scenes.php b/scripts/lib/scenes.php index ca147f3..598eea8 100644 --- a/scripts/lib/scenes.php +++ b/scripts/lib/scenes.php @@ -796,12 +796,17 @@ function chambreToggle() function wcToggle() { if (getState('wc') == 1) { - execScene('wc/off'); + wcOff(); } else { wcOn(); } } +function wcOff() +{ + execScene('wc/off'); +} + function sdbToggle() { if (getState('sdb') == 1) { @@ -1039,29 +1044,26 @@ function updateCourAuto() function wcVMCOn() { - // This cancel a previous call to vmc off - $rand = rand(100000, 1000000); - setState('wcTimeout', $rand); // Start VMC insteonCommand('0?1134=I=0=0'); } function wcVMCOff($timeout = 600) { - if ($timeout > 0) { - runAtEnd('_wcVMCOff(' . $timeout . ');'); - } else { - _wcVMCOff(0); + setState('wcVMCOff', max(getState('wcVMCOff', -1), time() + $timeout)); + if ($timeout === 0) { + execScene('wc/vmc/off'); } } -function _wcVMCOff($timeout) +function checkWCVMC() { - if ($timeout === 0) { - execScene('wc/vmc/off'); + $offtime = getState('wcVMCOff', -1); + $time = time(); + if ($offtime == -1 || $offtime > $time) { return; } - delayHttpCall(WEB_ROOT . 'script/vmcoff.php?delay=' . $timeout, $timeout + 30); + execScene('wc/vmc/off'); } function delayHttpCall($url, $delay) -- 2.39.5