Modules/devices/econommode activate php: различия между версиями
Материал из MajorDoMo инфо
Elmax (обсуждение | вклад) (Заготовка) |
Elmax (обсуждение | вклад) (+ файл econommode_activate.php) |
||
Строка 3: | Строка 3: | ||
<pre> | <pre> | ||
<?php | |||
// Если определено и равно 1, отключаем функциональность простых устройств и прекращаем выполнение. | |||
if (defined('DISABLE_SIMPLE_DEVICES') && DISABLE_SIMPLE_DEVICES == 1) return; | |||
// Получаем список объектов, у которых свойство groupEco равно 1. | |||
$objects = getObjectsByProperty('groupEco', '=', 1); | |||
// Считаем количество объектов в списке. | |||
$total = count($objects); | |||
// Начинаем цикл по всем объектам. | |||
for ($i = 0; $i < $total; $i++) { | |||
// Проверяем глобальное состояние объекта. | |||
if (getGlobal($objects[$i] . '.status')) { | |||
// Получаем объект по его идентификатору. | |||
$obj = getObject($objects[$i]); | |||
// Проверяем, является ли объект объектом, имеет ли он идентификатор устройства и не имеет ли доступа к свойству groupEco. | |||
if (is_object($obj) && $obj->device_id && !checkAccess('prop_groupEco', $obj->device_id)) continue; | |||
// Вызываем метод turnOff для объекта, передавая параметр source со значением EconomMode. | |||
callMethodSafe($objects[$i] . '.turnOff', array('source' => 'EconomMode')); | |||
// Приостанавливаем выполнение скрипта на 50 миллисекунд. | |||
usleep(50000); | |||
} | |||
} | |||
</pre> | </pre> |
Текущая версия от 14:14, 6 апреля 2024
ᐂ В корневой раздел ᐃ В директорию расположения файла
<?php // Если определено и равно 1, отключаем функциональность простых устройств и прекращаем выполнение. if (defined('DISABLE_SIMPLE_DEVICES') && DISABLE_SIMPLE_DEVICES == 1) return; // Получаем список объектов, у которых свойство groupEco равно 1. $objects = getObjectsByProperty('groupEco', '=', 1); // Считаем количество объектов в списке. $total = count($objects); // Начинаем цикл по всем объектам. for ($i = 0; $i < $total; $i++) { // Проверяем глобальное состояние объекта. if (getGlobal($objects[$i] . '.status')) { // Получаем объект по его идентификатору. $obj = getObject($objects[$i]); // Проверяем, является ли объект объектом, имеет ли он идентификатор устройства и не имеет ли доступа к свойству groupEco. if (is_object($obj) && $obj->device_id && !checkAccess('prop_groupEco', $obj->device_id)) continue; // Вызываем метод turnOff для объекта, передавая параметр source со значением EconomMode. callMethodSafe($objects[$i] . '.turnOff', array('source' => 'EconomMode')); // Приостанавливаем выполнение скрипта на 50 миллисекунд. usleep(50000); } }