Простые устройства / Simple Devices
Модератор: immortal
- ipc2002
- Сообщения: 125
- Зарегистрирован: Пн май 15, 2017 8:13 pm
- Откуда: Москва
- Благодарил (а): 102 раза
- Поблагодарили: 14 раз
- Контактная информация:
Re: Простые устройства / Simple Devices
Может кто направит в правильную сторону...
После последнего (простите за тавтологию) или предпоследнего обновления системы мои Простые устройства стали массово самопроизвольно отключаться. Рандомно по времени. Пачками по несколько штук. Причём всегда в разном количестве и в разное время...
В настройках ПУ отключено выключение в режиме экономии. Для ночников включено включение/отключение по закату/рассвету соответственно (дополнительными свойствами), а для зарядок включение по планировщику и отключение по выходе из Ночного режима.
Чаще отключения происходят ночью. Реже - днём.
В какую сторону копать?
Отправлено с моего Redmi 3S через Tapatalk
Только что опять почти всё повыключилось!
Обратил внимание, что датчик движения ровно 60 минут назад последний раз фиксировать движение.
Но режим Никого нет дома и Экономия не включены, а в настройках ПУ отключено "выключение при при переходе в режим экономии"...
Кстати датчик движения добавил в систему как раз примерно тогда же, когда и обновлял систему в предпоследний раз...
После последнего (простите за тавтологию) или предпоследнего обновления системы мои Простые устройства стали массово самопроизвольно отключаться. Рандомно по времени. Пачками по несколько штук. Причём всегда в разном количестве и в разное время...
В настройках ПУ отключено выключение в режиме экономии. Для ночников включено включение/отключение по закату/рассвету соответственно (дополнительными свойствами), а для зарядок включение по планировщику и отключение по выходе из Ночного режима.
Чаще отключения происходят ночью. Реже - днём.
В какую сторону копать?
Отправлено с моего Redmi 3S через Tapatalk
Только что опять почти всё повыключилось!
Обратил внимание, что датчик движения ровно 60 минут назад последний раз фиксировать движение.
Но режим Никого нет дома и Экономия не включены, а в настройках ПУ отключено "выключение при при переходе в режим экономии"...
Кстати датчик движения добавил в систему как раз примерно тогда же, когда и обновлял систему в предпоследний раз...
- xor
- Сообщения: 2041
- Зарегистрирован: Сб ноя 22, 2014 8:45 pm
- Благодарил (а): 286 раз
- Поблагодарили: 629 раз
Re: Простые устройства / Simple Devices
А по комнатам в методах onIdle ничего не прописано?
win10 connect https://connect.smartliving.ru/profile/303
-
- Сообщения: 2087
- Зарегистрирован: Пт апр 07, 2017 12:20 pm
- Благодарил (а): 313 раз
- Поблагодарили: 458 раз
Re: Простые устройства / Simple Devices
вот- вот, не понятно как реализовано управление всем и там не только с дд, а фактически со всего продлевается таймер часовой на включение никого нет дома
сам изначально боролся, потом плюнул и вырезал это
сам изначально боролся, потом плюнул и вырезал это
Telegram | Блог
Raspberry Pi3, с образа от Сергея 3.31, PHP 7, флешка 16 Гб работает с 10.09.2017
Почти всё время уходит на исправление ошибок, оставшееся - на их повторение. (с) ))) Спасибо
Raspberry Pi3, с образа от Сергея 3.31, PHP 7, флешка 16 Гб работает с 10.09.2017
Почти всё время уходит на исправление ошибок, оставшееся - на их повторение. (с) ))) Спасибо
- ipc2002
- Сообщения: 125
- Зарегистрирован: Пн май 15, 2017 8:13 pm
- Откуда: Москва
- Благодарил (а): 102 раза
- Поблагодарили: 14 раз
- Контактная информация:
Re: Простые устройства / Simple Devices
В OnIdle комнаты, где есть простые устройства, ничего нет.
В OneIdle класса Rooms:
Код: Выделить всё
$this->setProperty('SomebodyHere',0);
/* begin injection of {SDevices} */
require(DIR_MODULES.'devices/Rooms_onIdle.php');
/* end injection of {SDevices} */
Код: Выделить всё
$this->callMethodSafe("updateActivityStatus");
СпойлерПоказать
Код: Выделить всё
$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');
$rooms[$i]['diff']=time()-$rooms[$i]['time'];
}
function cmp($a, $b)
{
if ($a['diff'] == $b['diff']) {
return 0;
}
return ($a['diff'] < $b['diff']) ? -1 : 1;
}
usort($rooms,"cmp");
if (!$rooms[0]['active']) {
$somebodyHomeText="Никого нет дома. Были в ".date('H:i',$rooms[0]['time'])." (".$rooms[0]['room'].")";
} else {
$res_rooms=array();
for($i=0;$i<$total;$i++) {
if ($rooms[$i]['active']) {
$res_rooms[]=$rooms[$i]['room'];
}
}
$somebodyHomeText="Кто-то дома: ".implode(", ",$res_rooms);
}
setGlobal('somebodyHomeText',$somebodyHomeText);
//echo "Updated";
/* begin injection of {SDevices} */
require(DIR_MODULES.'devices/Rooms_updateActivityStatus.php');
/* end injection of {SDevices} */
СпойлерПоказать
Код: Выделить всё
<?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");
if (getGlobal('NobodyHomeMode.active')) {
$somebodyHomeText = LANG_DEVICES_ROOMS_NOBODYHOME." ".LANG_DEVICES_ROOMS_ACTIVITY." " . date('H:i', $rooms[0]['time']) . " (" . $rooms[0]['room'] . ")";
} else {
$res_rooms = array();
for ($i = 0; $i < $total; $i++) {
if ($rooms[$i]['active']) {
$res_rooms[] = $rooms[$i]['room'];
}
}
$somebodyHomeText = LANG_DEVICES_ROOMS_SOMEBODYHOME." ". LANG_DEVICES_ROOMS_ACTIVITY . " " . implode(", ", $res_rooms);
}
echo $somebodyHomeText;
setGlobal('somebodyHomeText', $somebodyHomeText);
Код: Выделить всё
if (defined('DISABLE_SIMPLE_DEVICES') && DISABLE_SIMPLE_DEVICES==1) return;
Хотя датчик в прихожей, а ПУ в спальне.
Не пойму взаимосвязи...
- ipc2002
- Сообщения: 125
- Зарегистрирован: Пн май 15, 2017 8:13 pm
- Откуда: Москва
- Благодарил (а): 102 раза
- Поблагодарили: 14 раз
- Контактная информация:
Re: Простые устройства / Simple Devices
Других устройств фиксации активности нет, только датчик движения в прихожей.
А ПУ в разных комнатах...
Датчик движения - тоже ПУ.
-
- Сообщения: 2087
- Зарегистрирован: Пт апр 07, 2017 12:20 pm
- Благодарил (а): 313 раз
- Поблагодарили: 458 раз
Re: Простые устройства / Simple Devices
1. в методах и инжекциях одно и тоже, так к слову
2. релюхи по какой логике включаются, это нам не видно и приходится гадать как это может пересекаться
а настроек там масса, еще и самому можно добавить )))
п.с. тарасфромпир, вот про усложнение пу и добавление в них всякого, к слову )))
2. релюхи по какой логике включаются, это нам не видно и приходится гадать как это может пересекаться
а настроек там масса, еще и самому можно добавить )))
п.с. тарасфромпир, вот про усложнение пу и добавление в них всякого, к слову )))
Telegram | Блог
Raspberry Pi3, с образа от Сергея 3.31, PHP 7, флешка 16 Гб работает с 10.09.2017
Почти всё время уходит на исправление ошибок, оставшееся - на их повторение. (с) ))) Спасибо
Raspberry Pi3, с образа от Сергея 3.31, PHP 7, флешка 16 Гб работает с 10.09.2017
Почти всё время уходит на исправление ошибок, оставшееся - на их повторение. (с) ))) Спасибо
- ipc2002
- Сообщения: 125
- Зарегистрирован: Пн май 15, 2017 8:13 pm
- Откуда: Москва
- Благодарил (а): 102 раза
- Поблагодарили: 14 раз
- Контактная информация:
Re: Простые устройства / Simple Devices
Нашёл кое-что интересное...Logrus писал(а): ↑Сб июл 07, 2018 10:13 am1. в методах и инжекциях одно и тоже, так к слову
2. релюхи по какой логике включаются, это нам не видно и приходится гадать как это может пересекаться
а настроек там масса, еще и самому можно добавить )))
п.с. тарасфромпир, вот про усложнение пу и добавление в них всякого, к слову )))
У меня в свойствах объектов есть такое: ".groupNobodyHome" с значением "1".
Где-то в методах или инъекциях добавлял обработку по этому свойству...
НО! Режим "NobodyHome" у меня не включался с ноября прошлого года!
Соответственно и срабатывать эти условия не должны.... по идее))
Получается опять какие-то тайные коды НеПростых устройств работают?
Пока попробую обнулить вышеупомянутые свойства, посмотрю что будет...
- ipc2002
- Сообщения: 125
- Зарегистрирован: Пн май 15, 2017 8:13 pm
- Откуда: Москва
- Благодарил (а): 102 раза
- Поблагодарили: 14 раз
- Контактная информация:
Re: Простые устройства / Simple Devices
Думаю что всё-таки нашёл!
Почему-то в методе режима был отключен вызов родительского метода, в котором и прописана смена статуса режима.
Т.ч. по факту он включался, но индикации никакой не было. Из-за этого и путаница получилась...
Теперь вопрос:
- где искать код, по которому должен включаться режим NobodyHome через час после последней активности?
Очевидно он во всём виноват...
Почему-то в методе режима был отключен вызов родительского метода, в котором и прописана смена статуса режима.
Т.ч. по факту он включался, но индикации никакой не было. Из-за этого и путаница получилась...
Теперь вопрос:
- где искать код, по которому должен включаться режим NobodyHome через час после последней активности?
Очевидно он во всём виноват...
-
- Сообщения: 2087
- Зарегистрирован: Пт апр 07, 2017 12:20 pm
- Благодарил (а): 313 раз
- Поблагодарили: 458 раз
Re: Простые устройства / Simple Devices
в инжектируемых файлах, почти в десятке мест (
Telegram | Блог
Raspberry Pi3, с образа от Сергея 3.31, PHP 7, флешка 16 Гб работает с 10.09.2017
Почти всё время уходит на исправление ошибок, оставшееся - на их повторение. (с) ))) Спасибо
Raspberry Pi3, с образа от Сергея 3.31, PHP 7, флешка 16 Гб работает с 10.09.2017
Почти всё время уходит на исправление ошибок, оставшееся - на их повторение. (с) ))) Спасибо
- ipc2002
- Сообщения: 125
- Зарегистрирован: Пн май 15, 2017 8:13 pm
- Откуда: Москва
- Благодарил (а): 102 раза
- Поблагодарили: 14 раз
- Контактная информация:
Re: Простые устройства / Simple Devices
Мда... обрадовали)))
Придётся самому альтернативно делать, наверное...
А Эко режим как включается не подскажете, @Logrus ?