Лайф - хаки для прокачки вашего скила

Использование системы в различных ситуациях, вопросы программирования сценариев.

Модератор: immortal

Ответить
Аватара пользователя
SmoKE_xDDD
Сообщения: 716
Зарегистрирован: Ср апр 17, 2019 5:00 pm
Откуда: Нижний Новгород
Благодарил (а): 87 раз
Поблагодарили: 747 раз

Лайф - хаки для прокачки вашего скила

Сообщение SmoKE_xDDD » Вт мар 30, 2021 2:36 pm

Тема для постинга простых лайф - хаков, 1 пост - 1 лайф хак. Без обсуждения.
Буду как свой блокнот использовать =)
Пожалуй начну:

Чтобы всегда знать, кто изменил свойство - юзаем в коде конструкцию:

Код: Выделить всё

sg('ThisComputer.test', 'значение', 0, 'любой сорс');
Итог:
Безымянный.png
Безымянный.png (3.17 КБ) 242 просмотра
Есть чем поделиться - пиши =)
За это сообщение автора SmoKE_xDDD поблагодарили (всего 4):
Chainik (Вт мар 30, 2021 2:52 pm) • homester (Вт мар 30, 2021 3:14 pm) • stellhawk (Вт мар 30, 2021 4:19 pm) • ~220v (Ср мар 31, 2021 12:17 am)
Рейтинг: 4.76%
Logrus
Сообщения: 1753
Зарегистрирован: Пт апр 07, 2017 12:20 pm
Благодарил (а): 296 раз
Поблагодарили: 363 раза

Re: Лайф - хаки для прокачки вашего скила

Сообщение Logrus » Вт мар 30, 2021 7:41 pm

Код: Выделить всё

//$params['PROPERTY'] (bluetooth, network) (вызов по изменению привязанных свойств)
//$params['NEW_VALUE']
//$params['OLD_VALUE']
//$params['SOURCE']
//$params['entrance'] (open, close) (вызов с параметром при открытии/закрытии двери)
//$params['manually'] (вызов с параметром из любого источника)

$source = $params['PROPERTY'] . $params['entrance'] . $params['manually'];
$this->setProperty('inHome', 0, 0, $source);
СпойлерПоказать
Снимок.PNG
Снимок.PNG (38.64 КБ) 195 просмотров
п.с. Logoff имя терминала
п.п.с несколько лет назад в чатике тлг как то расписывал про четвертый аргумент в сетглобал и передачу параметров
снижает количество запросов к бд
позволяет писать более сложные и компактные алгоритмы
далее в методе привязанном к свойству inHome обрабытывает как значение так и соурс
Telegram | Блог
Raspberry Pi3, с образа от Сергея 3.31, PHP 7
Почти всё время уходит на исправление ошибок, оставшееся - на их повторение. (с) ))) Спасибо
Logrus
Сообщения: 1753
Зарегистрирован: Пт апр 07, 2017 12:20 pm
Благодарил (а): 296 раз
Поблагодарили: 363 раза

Re: Лайф - хаки для прокачки вашего скила

Сообщение Logrus » Вт мар 30, 2021 8:38 pm

СпойлерПоказать
Снимок.PNG
Снимок.PNG (56.85 КБ) 175 просмотров

Код: Выделить всё

$users = getObjectsByClass('Users');
foreach ($users as $user) {
 $inHome = gg($user['TITLE'] . '.inHome');
 if ($inHome == 1) {
  callMethod($user['TITLE'] . '.checkHome', array('entrance'=>'close'));
 }
 elseif ($inHome == 0 && (gg($user['TITLE'] . '.network') || gg($user['TITLE'] . '.bluetooth') || gg($user['TITLE'] . '.gps'))) {
  callMethod($user['TITLE'] . '.checkHome', array('entrance'=>'close', 'manually'=>'_activity'));
 }
}
сценарий вызываемый при закрытии двери
в нем реализован первый обработчик в котором вызывается метод выше с передачей параметров array('entrance'=>'close', 'manually'=>'_activity')
Telegram | Блог
Raspberry Pi3, с образа от Сергея 3.31, PHP 7
Почти всё время уходит на исправление ошибок, оставшееся - на их повторение. (с) ))) Спасибо
Logrus
Сообщения: 1753
Зарегистрирован: Пт апр 07, 2017 12:20 pm
Благодарил (а): 296 раз
Поблагодарили: 363 раза

Re: Лайф - хаки для прокачки вашего скила

Сообщение Logrus » Вт мар 30, 2021 8:51 pm

СпойлерПоказать
1.PNG
1.PNG (34.62 КБ) 169 просмотров
как то намедни встречал вопрос про где последняя активность
СпойлерПоказать
Снимок.PNG
Снимок.PNG (25.77 КБ) 169 просмотров
далее в классе обработки присутствия и управления режимом кто дома
с этого минимума свойств открываются огромные возможности для реализации любых хотелок
Telegram | Блог
Raspberry Pi3, с образа от Сергея 3.31, PHP 7
Почти всё время уходит на исправление ошибок, оставшееся - на их повторение. (с) ))) Спасибо
Ответить