Простые устройства / Simple Devices описание методов

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

Модератор: immortal

Logrus
Сообщения: 2113
Зарегистрирован: Пт апр 07, 2017 12:20 pm

Re: Простые устройства / Simple Devices описание методов

Сообщение Logrus »

Logrus писал(а): Ср июн 06, 2018 7:31 pm тогда полностью про всю связку, дд, модуль, ..., настройки всего
подозреваю броадлинк и набившую оскому галку )))
ок, не броадлинк, но дд, есп, и прошивка и модуль ....
нули на скрине, про что говоришь приходят не раз в минуту - ошибочное утверждение, там самый первый и последний отмечаются.
сай и звучит при обновлении раз в минуту, иди по цепочке к началу

п.с. к ПУ никакого отношения не имеет
Telegram | Блог
Raspberry Pi3, с образа от Сергея 3.31, PHP 7, флешка 16 Гб работает с 10.09.2017
Почти всё время уходит на исправление ошибок, оставшееся - на их повторение. (с) ))) Спасибо
olegvolk75
Сообщения: 141
Зарегистрирован: Сб мар 11, 2017 7:03 pm

Re: Простые устройства / Simple Devices описание методов

Сообщение olegvolk75 »

Да, похоже что к ПУ отношения не имеет. В модуле MQTT отключил ДД, таймер стал работать правильно. Буду смотреть настройки WiFi IOT.
Спасибо!
Orange Pi PCPlus, Debian Stretch with Armbian Linux 4.19.62-sunxi
Аватара пользователя
tarasfrompir
Сообщения: 3217
Зарегистрирован: Ср мар 02, 2016 8:18 pm
Откуда: Украина Пирятин

Re: Простые устройства / Simple Devices описание методов

Сообщение tarasfrompir »

Блин в который раз понимаю, что не хочу MQTT.
Не отговариваю, просто мысль.
Спасибо нам ПОМОЖЕТ..!
olegvolk75
Сообщения: 141
Зарегистрирован: Сб мар 11, 2017 7:03 pm

Re: Простые устройства / Simple Devices описание методов

Сообщение olegvolk75 »

Да нет, похоже косяк в другом. Похоже, что на одно свойство ДД приходило два топика - от прерывания и от входа ДД (непосредственно на ESP). Тот топик, который приходил непосредственно с GPIO и присылал раз в минуту 0. Надо чтоб топик был от прерывания. Накладочка скорее всего произошлам при одном из восстановлений из бэкапа, возможно бэкап восстановил неверный. Сейчас топик привязан только к прерыванию, таймер работает корректно. Работает ли ДД - вот вопрос. Пока проверить не могу, но думаю по идее должен.
Orange Pi PCPlus, Debian Stretch with Armbian Linux 4.19.62-sunxi
Logrus
Сообщения: 2113
Зарегистрирован: Пт апр 07, 2017 12:20 pm

Re: Простые устройства / Simple Devices описание методов

Сообщение Logrus »

Logrus писал(а): Пн янв 22, 2018 7:30 pm хз, это не ко мне (не компетентен)
и все-таки мне не понятно:
if (!isset($params['statusUpdated'])) { // SDevices_statusUpdated.php
setTimeout($ot.'_motion_timer_status', '', 3); // запустить таймер на 3 секунды, а что он сделает?
}
имхо, надо расписать, то там сложнее
я в третий раз спрошу, что сделает запущенный таймер?

в телеге ответили https://t.me/MajorDoMoRu/45760
Telegram | Блог
Raspberry Pi3, с образа от Сергея 3.31, PHP 7, флешка 16 Гб работает с 10.09.2017
Почти всё время уходит на исправление ошибок, оставшееся - на их повторение. (с) ))) Спасибо
Аватара пользователя
tarasfrompir
Сообщения: 3217
Зарегистрирован: Ср мар 02, 2016 8:18 pm
Откуда: Украина Пирятин

Re: Простые устройства / Simple Devices описание методов

Сообщение tarasfrompir »

Значит такс-
Не скажу как уж запускается начало ,
НО при запуске метода - SDevices_statusUpdated
запускается метод - SMotions_motionDetected

При работе метода SDevices_statusUpdated - устанавливается значение - statusUpdated
после этого если устройство из класса Motion - (смотри датчик движения или камера с датчиком движения)
запускается метод SMotions_motionDetected

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

if ($this->class_title == 'SMotions' && $params['NEW_VALUE'] && !timeOutExists($ot . '_motion_timer_status')) {
    $this->callMethodSafe('motionDetected', array('statusUpdated' => 1));
Теперь же этот метод проверяет значение statusUpdated - для текущего устройства

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

if (!isset($params['statusUpdated'])) {
и если статус - 0 то ждем еще 3 секунды на всякий случай

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

setTimeout($ot.'_motion_timer_status', '', 3);
и проверяем еще раз

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

if (isset($params['VALUE']) && !$params['VALUE'] && !isset($params['statusUpdated'])) {
 
и если мы не получили параметры все три то устанавливаем статус устройства Motion в 0 (не работатет ?)- (смотри датчик движения или камера с датчиком движения) и возвращаемся без проведения действий.

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

 $this->setProperty('status', 0);
  return;
 }
Иначе идем дальше...
Где то так
Спасибо нам ПОМОЖЕТ..!
Logrus
Сообщения: 2113
Зарегистрирован: Пт апр 07, 2017 12:20 pm

Re: Простые устройства / Simple Devices описание методов

Сообщение Logrus »

в телеге правильно про этот кусок ответили
Telegram | Блог
Raspberry Pi3, с образа от Сергея 3.31, PHP 7, флешка 16 Гб работает с 10.09.2017
Почти всё время уходит на исправление ошибок, оставшееся - на их повторение. (с) ))) Спасибо
Аватара пользователя
tarasfrompir
Сообщения: 3217
Зарегистрирован: Ср мар 02, 2016 8:18 pm
Откуда: Украина Пирятин

Re: Простые устройства / Simple Devices описание методов

Сообщение tarasfrompir »

Logrus писал(а): Ср июн 13, 2018 5:07 pm в телеге правильно про этот кусок ответили
Ну я Телегу не читаю :oops: :oops: :oops:
Спасибо нам ПОМОЖЕТ..!
sega6549
Сообщения: 535
Зарегистрирован: Чт авг 20, 2015 11:32 am
Откуда: Ярославль
Контактная информация:

Re: Простые устройства / Simple Devices описание методов

Сообщение sega6549 »

в простых устройствах есть тип устройства как димер, там в настройках есть даже два поля Min level (work) и Max level (work) это я так понял для установки значений которые не в процентах, например мне нужно управлять какой нить мегой, и там значения меняются от 0 до 255, вбиваю эти параметры, в настройки устройства, в свойствах объекта даже появляются levelWork тут я так понимаю должно появляться переведенное значение не в процентах а в том виде который понимает мега, в методах ни каких функций перевода я не нашел, то есть вроде как задумка сделать нормально была, но не доделали?, или так и задумано что нужно самому методы написать?
Тут можно задать вопрос по MajorDoMo VK
Канал по MajorDoMo youtube
Аватара пользователя
tarasfrompir
Сообщения: 3217
Зарегистрирован: Ср мар 02, 2016 8:18 pm
Откуда: Украина Пирятин

Re: Простые устройства / Simple Devices описание методов

Сообщение tarasfrompir »

sega6549 писал(а): Вт ноя 20, 2018 9:31 pm в простых устройствах есть тип устройства как димер, там в настройках есть даже два поля Min level (work) и Max level (work) это я так понял для установки значений которые не в процентах, например мне нужно управлять какой нить мегой, и там значения меняются от 0 до 255, вбиваю эти параметры, в настройки устройства, в свойствах объекта даже появляются levelWork тут я так понимаю должно появляться переведенное значение не в процентах а в том виде который понимает мега, в методах ни каких функций перевода я не нашел, то есть вроде как задумка сделать нормально была, но не доделали?, или так и задумано что нужно самому методы написать?
так уже ведь подправили ... в альфе ?
Спасибо нам ПОМОЖЕТ..!
Ответить