Статус системы "Кто-то есть" как настроить.
Модератор: immortal
-
- Сообщения: 395
- Зарегистрирован: Вт май 31, 2016 6:56 pm
- Откуда: Россия Карелия Петрозаводск
- Благодарил (а): 95 раз
- Поблагодарили: 57 раз
Re: Статус системы "Кто-то есть" как настроить.
Я по большей части свою логику и использую, но датчики движения это тот случай когда решил попробовать имеющийся функционал, но попал на обратную сторону готового функционала не понятно как работает и как настроить под свои задачи. Почему этот тайаут просто не вывели в настройку через свойство.
Сервер МД на x86 micro pc ssd + HDD, OC Debian, терминал Xiaomi Redmi note 7
Мои исходники для мд управляемых устройств https://github.com/vgamaev/ESPMDDEVICE
Мои исходники для мд управляемых устройств https://github.com/vgamaev/ESPMDDEVICE
- tarasfrompir
- Сообщения: 3216
- Зарегистрирован: Ср мар 02, 2016 8:18 pm
- Откуда: Украина Пирятин
- Благодарил (а): 223 раза
- Поблагодарили: 815 раз
Re: Статус системы "Кто-то есть" как настроить.
Ну так исправь метод - Rooms_updateActivityStatus.php
на вот так -
на вот так -
Код: Выделить всё
<?php
if (defined('DISABLE_SIMPLE_DEVICES') && DISABLE_SIMPLE_DEVICES==1) return;
$rooms = getObjectsByClass("Rooms");
$total = count($rooms);
for ($i = 0; $i < $total; $i++) {
$rooms[$i]['room'] = getGlobal($rooms[$i]['TITLE'] . '.Title');
if (!$rooms[$i]['room']) {
$rooms[$i]['room'] = $rooms[$i]['TITLE'];
}
$rooms[$i]['active'] = getGlobal($rooms[$i]['TITLE'] . '.SomebodyHere');
$rooms[$i]['time'] = getGlobal($rooms[$i]['TITLE'] . '.LatestActivity');
if (!$rooms[$i]['time']) {
$rooms[$i]['time'] = 0;
}
$rooms[$i]['diff'] = time() - $rooms[$i]['time'];
}
if (!function_exists('cmpRoomsActivity')) {
function cmpRoomsActivity($a, $b)
{
if ($a['diff'] == $b['diff']) {
return 0;
}
return ($a['diff'] < $b['diff']) ? -1 : 1;
}
}
usort($rooms, "cmpRoomsActivity");
$res_rooms = array();
for ($i = 0; $i < $total; $i++) {
if ($rooms[$i]['active']) {
$res_rooms[] = $rooms[$i]['room'];
$countactiverooms = $countactiverooms+1;
}
}
if (!$countactiverooms) {
//поскольку нету активности в доме то включает режим економии а также получает статус никого нет дома
callMethodSafe('NobodyHomeMode.activate');
callMethodSafe('EconomMode.activate');
$somebodyHomeText = LANG_DEVICES_ROOMS_NOBODYHOME." ".LANG_DEVICES_ROOMS_ACTIVITY." " . date('H:i', $rooms[0]['time']) . " (" . $rooms[0]['room'] . ")";
} else {
$somebodyHomeText = LANG_DEVICES_ROOMS_SOMEBODYHOME." ". LANG_DEVICES_ROOMS_ACTIVITY . " " . implode(", ", $res_rooms);
}
echo $somebodyHomeText;
setGlobal('somebodyHomeText', $somebodyHomeText);
Спасибо нам ПОМОЖЕТ..!
- nightwind
- Сообщения: 333
- Зарегистрирован: Вс июн 26, 2016 4:42 pm
- Откуда: Барановичи
- Благодарил (а): 28 раз
- Поблагодарили: 52 раза
- Контактная информация:
Re: Статус системы "Кто-то есть" как настроить.
вывод в настройку через свойство - оверхед на постоянное обращение к базе. а настраивать ты его будешь 1-2 раза. Я наоборот поубирал из свойств всякие константы и понаписывал их через defineVladPTZ писал(а): ↑Ср июл 25, 2018 12:18 pmЯ по большей части свою логику и использую, но датчики движения это тот случай когда решил попробовать имеющийся функционал, но попал на обратную сторону готового функционала не понятно как работает и как настроить под свои задачи. Почему этот тайаут просто не вывели в настройку через свойство.
- nightwind
- Сообщения: 333
- Зарегистрирован: Вс июн 26, 2016 4:42 pm
- Откуда: Барановичи
- Благодарил (а): 28 раз
- Поблагодарили: 52 раза
- Контактная информация:
Re: Статус системы "Кто-то есть" как настроить.
и после обновления останешься с тыквой)tarasfrompir1 писал(а): ↑Ср июл 25, 2018 2:12 pmНу так исправь метод - Rooms_updateActivityStatus.php
на вот так -...Код: Выделить всё
<?php
лучше перенести этот код в метод, и отказаться от включения файлов
- tarasfrompir
- Сообщения: 3216
- Зарегистрирован: Ср мар 02, 2016 8:18 pm
- Откуда: Украина Пирятин
- Благодарил (а): 223 раза
- Поблагодарили: 815 раз
Re: Статус системы "Кто-то есть" как настроить.
я сделал себе форк - внес свои изменения и обновялюсь по мере надобности
И тогда
Нам не страшен серый волк ....
ПС
Я никого не склоняю - ни к чему просто факт...
И тогда
Нам не страшен серый волк ....
ПС
Я никого не склоняю - ни к чему просто факт...
Спасибо нам ПОМОЖЕТ..!
-
- Сообщения: 138
- Зарегистрирован: Вт ноя 14, 2017 6:39 pm
- Откуда: Москва
- Благодарил (а): 44 раза
- Поблагодарили: 5 раз
- Контактная информация:
Re: Статус системы "Кто-то есть" как настроить.
Сделал фоновые подсветки, при активации Sunset все включилось, а в 23:13 почему-то включился Эко, хотя движения в комнатах были.
Единственное упоминание времени которое я нашел это 23:30 в onNewMinute. Если честно, я очень поверхностно понимаю, что тут прописано...
Подскажите, как сделать, чтоб Экорежим активировался/деактивировался правильно?
Включал в ручную Ни кого нет дома, при движении NobodyHomeMode деактивируется. Но эко остаётся активным.
Единственное упоминание времени которое я нашел это 23:30 в onNewMinute. Если честно, я очень поверхностно понимаю, что тут прописано...
Код: Выделить всё
if (timeIs("23:30") && (gg("EconomMode.active")!="1") && (gg("NobodyHomeMode.active")=="1")) {
callMethod('EconomMode.activate');
Включал в ручную Ни кого нет дома, при движении NobodyHomeMode деактивируется. Но эко остаётся активным.
Raspberry Pi3, Xiaomi, BroadLink, ESP8266
-
- Сообщения: 138
- Зарегистрирован: Вт ноя 14, 2017 6:39 pm
- Откуда: Москва
- Благодарил (а): 44 раза
- Поблагодарили: 5 раз
- Контактная информация:
Re: Статус системы "Кто-то есть" как настроить.
Что-то вообще ни чего не понимаю, Eco mode как включился вчера так и не выключается, но по закату подсветка все-равно включилась.
Raspberry Pi3, Xiaomi, BroadLink, ESP8266
-
- Сообщения: 2084
- Зарегистрирован: Пт апр 07, 2017 12:20 pm
- Благодарил (а): 313 раз
- Поблагодарили: 457 раз
Re: Статус системы "Кто-то есть" как настроить.
уже не помню точно, но у меня примерно так:
энерджитариф ночной и дневной (там еще выходные, ага не виноват)
никого нет, кто то есть, все спят
эконом включается когда дневной и галкой выбора учитывать нет присутствие, то когда никого нет
т.е. днем и никого, днем если не учитывать, на основании этого можно уже для устройств несколько вариантов реализовывать
а вообще будет так как надо и это напишешь, в образах все режимы имитация пример
энерджитариф ночной и дневной (там еще выходные, ага не виноват)
никого нет, кто то есть, все спят
эконом включается когда дневной и галкой выбора учитывать нет присутствие, то когда никого нет
т.е. днем и никого, днем если не учитывать, на основании этого можно уже для устройств несколько вариантов реализовывать
а вообще будет так как надо и это напишешь, в образах все режимы имитация пример
Telegram | Блог
Raspberry Pi3, с образа от Сергея 3.31, PHP 7, флешка 16 Гб работает с 10.09.2017
Почти всё время уходит на исправление ошибок, оставшееся - на их повторение. (с) ))) Спасибо
Raspberry Pi3, с образа от Сергея 3.31, PHP 7, флешка 16 Гб работает с 10.09.2017
Почти всё время уходит на исправление ошибок, оставшееся - на их повторение. (с) ))) Спасибо
- xor
- Сообщения: 2039
- Зарегистрирован: Сб ноя 22, 2014 8:45 pm
- Благодарил (а): 286 раз
- Поблагодарили: 629 раз
Re: Статус системы "Кто-то есть" как настроить.
Тут написано, что если в 23:30 экорежим неактивен и при этом НикогоДома, то вкл. экорежим. Если минутой позже в доме будет движ и НикогоДома сбросится в 0, на экорежим эта строка никак не повлияет. Она срабатывает только один раз в сутки, в полдвенадцатого ночи.sigment писал(а): ↑Ср дек 12, 2018 11:42 am......Код: Выделить всё
if (timeIs("23:30") && (gg("EconomMode.active")!="1") && (gg("NobodyHomeMode.active")=="1")) { callMethod('EconomMode.activate');
Да, интересно время выбрано.
И ещё топик называется Статус системы "Кто-то есть" как настроить., а вы сюда со своим экономрежимом
win10 connect https://connect.smartliving.ru/profile/303
-
- Сообщения: 23
- Зарегистрирован: Пн дек 03, 2018 6:18 pm
- Благодарил (а): 7 раз
- Поблагодарили: 0
Re: Статус системы "Кто-то есть" как настроить.
Подскажите что надо сделать что бы при обновлениях мой код не затирался? добавил код что бы писалось время вот так
Кто-то есть..
Кухня 18:54, Спальня 18:53, Зал 18:52 очеь удобно и сразу понятно где и когда произошло движение. но блин каждый раз затирается этот файл, выставить на него рид онли но это не правильно.
Кто-то есть..
Кухня 18:54, Спальня 18:53, Зал 18:52 очеь удобно и сразу понятно где и когда произошло движение. но блин каждый раз затирается этот файл, выставить на него рид онли но это не правильно.