Страница 169 из 182
Re: Базовый образ Raspberry Pi3 / Pi2
Добавлено: Вт окт 06, 2020 12:48 pm
AAU
Не знаю где лучше спросить, но раз стоит базовый образ, спрошу здесь.
Вот пытаюсь по срабатыванию простого устройства "датчик движения", вызвать два метода
Код: Выделить всё
callMethod('switch_Koridor1.turnOn');
callMethod('switch_Koridor2.turnOn');
Срабатывает только первый. Если первый удалить, то срабатывает второй. Оба никак. Почему так?
И еще, иногда падают циклы:
./scripts/cycle_skype.php
и
./scripts/cycle_X101_skype.php
Они в X-ray не запущены. Что их может запускать?
Образ 3.34 на 3-ей малине.
Re: Базовый образ Raspberry Pi3 / Pi2
Добавлено: Вт окт 06, 2020 1:00 pm
nick7zmail
AAU писал(а): Вт окт 06, 2020 12:48 pm
Не знаю где лучше спросить, но раз стоит базовый образ, спрошу здесь.
Вот пытаюсь по срабатыванию простого устройства "датчик движения", вызвать два метода
Код: Выделить всё
callMethod('switch_Koridor1.turnOn');
callMethod('switch_Koridor2.turnOn');
Срабатывает только первый. Если первый удалить, то срабатывает второй. Оба никак. Почему так?
И еще, иногда падают циклы:
./scripts/cycle_skype.php
и
./scripts/cycle_X101_skype.php
Они в X-ray не запущены. Что их может запускать?
Образ 3.34 на 3-ей малине.
По методам - всё ок. Должны оба вызываться. Возможно при вызове одного из методов происходит падение чего-нибудь...обвешайте дебагом...что то типа
Код: Выделить всё
say('Запускаю первый метод');
callMethod('switch_Koridor1.turnOn');
say('Запускаю второй метод');
callMethod('switch_Koridor2.turnOn');
say('Вызов завершен');
И в самих методах что нить похожее. Посмотрите на каком этапе валится.
По циклам - в офф репе МД таких циклов уже нет (точнее они переименованы)
https://github.com/sergejey/majordomo/t ... er/scripts
Можете снести.
Re: Базовый образ Raspberry Pi3 / Pi2
Добавлено: Вт окт 06, 2020 1:43 pm
AAU
Выводит: Запускаю первый метод,
Метод выполняется, а дальше тишина. И ошибок никаких.
Сам метод это метод простого устройства, "управляемый выключатель". От себя туда ничего не добавлял.
Re: Базовый образ Raspberry Pi3 / Pi2
Добавлено: Вт окт 06, 2020 1:56 pm
AAU
Добавил проверку в turnOn после выполнения родительского метода и тишина. Где то в родительском методе проблема получается.
Re: Базовый образ Raspberry Pi3 / Pi2
Добавлено: Вт окт 06, 2020 3:57 pm
nick7zmail
AAU писал(а):Добавил проверку в turnOn после выполнения родительского метода и тишина. Где то в родительском методе проблема получается.
Дальше дебажте...в родительский воткните до и после инклуда...в сам инклуд в файл прямо (оно потом затрётся при обновлении), попробуйте руками сменить свойство status с 1 на 0 и наоборот...не подвисает ли после этого система..
Отправлено с моего Xperia XZ1 Compact через Tapatalk
Re: Базовый образ Raspberry Pi3 / Pi2
Добавлено: Вт окт 06, 2020 7:27 pm
AAU
Я в замешательстве... Даже если так:
Код: Выделить всё
sg('switch_Koridor1.status', 1);
sg('switch_Koridor2.status', 1);
то так-же только первое свойство устанавливается. Система не подвисает, ошибок нет. Мышкой со сцены все объекты переключаются как только ни тыкай.
Из терминала вот так:
Код: Выделить всё
sg('switch_Koridor1.status', 1);sg('switch_Koridor2.status', 1);
работает!
Re: Базовый образ Raspberry Pi3 / Pi2
Добавлено: Чт окт 08, 2020 10:47 am
AAU
Не знаю что дальше делать.
Обновил малинку 3B+ до версии 4.44. Восстановил backup и все тоже самое
При этом тот-же код нормально запускается например из шаблонов поведения.
Ладно. Удаляю простое устройство "датчик движения". Удаляю объект. Создаю новый объект "SMotions", в метод "logicAction" вставляю свой код и все работает как надо. Создаю простое устройство, в нем выбираю ранее созданный объект и опять срабатывает только первый метод. Если простое устройство удалить, метод больше не работает как надо пока его заново не пересоздашь.
Вот весь код датчика движения:
Код: Выделить всё
if($this->getProperty('status')==1){
callMethod('switch_Gostinaya1.turnOn'); //включим свет
callMethod('switch_Gostinaya2.turnOn'); //включим свет
}
//И так тоже только первый срабатывает:
callMethod('switch_Gostinaya1.turnOn'); //включим свет
callMethod('switch_Gostinaya2.turnOn'); //включим свет
//И так только первый:
sg('switch_Gostinaya1.status', 1);
sg('switch_Gostinaya2.status', 1);
Re: Базовый образ Raspberry Pi3 / Pi2
Добавлено: Чт окт 08, 2020 4:28 pm
tarasfrompir
AAU писал(а): Чт окт 08, 2020 10:47 am
Не знаю что дальше делать.
Обновил малинку 3B+ до версии 4.44. Восстановил backup и все тоже самое
При этом тот-же код нормально запускается например из шаблонов поведения.
Ладно. Удаляю простое устройство "датчик движения". Удаляю объект. Создаю новый объект "SMotions", в метод "logicAction" вставляю свой код и все работает как надо. Создаю простое устройство, в нем выбираю ранее созданный объект и опять срабатывает только первый метод. Если простое устройство удалить, метод больше не работает как надо пока его заново не пересоздашь.
Вот весь код датчика движения:
Код: Выделить всё
if($this->getProperty('status')==1){
callMethod('switch_Gostinaya1.turnOn'); //включим свет
callMethod('switch_Gostinaya2.turnOn'); //включим свет
}
//И так тоже только первый срабатывает:
callMethod('switch_Gostinaya1.turnOn'); //включим свет
callMethod('switch_Gostinaya2.turnOn'); //включим свет
//И так только первый:
sg('switch_Gostinaya1.status', 1);
sg('switch_Gostinaya2.status', 1);
попробуй вместо callMethod - riseEvent
и интересен результат срабатывания ...
Re: Базовый образ Raspberry Pi3 / Pi2
Добавлено: Чт окт 08, 2020 5:57 pm
AAU
Оба не срабатывают.
Re: Базовый образ Raspberry Pi3 / Pi2
Добавлено: Пт окт 09, 2020 6:40 am
nick7zmail
Попробуй новые объекты создать и на них попробовать...
Отправлено с моего Xperia XZ1 Compact через Tapatalk