Простые устройства / Simple Devices

Новые релизы, обновления и т.п.

Модератор: immortal

Аватара пользователя
Gelezako
Сообщения: 963
Зарегистрирован: Чт июн 02, 2016 9:33 pm
Благодарил (а): 205 раз
Поблагодарили: 106 раз
Контактная информация:

Re: Простые устройства / Simple Devices

Сообщение Gelezako » Сб ноя 04, 2017 2:59 pm

xor писал(а): И почему Вы работаете с опен/клозе датчиком, а редактируете свойство жизни Smotion в его методе motionDetected?
И у меня в этом файле нет такой строки(

upd. Видимо, файл всё же ...\htdocs\modules\devices\SOpenClose_statusUpdated.php
да, сори, не тот файл указал, я тут одновременно для 2х датчиков логику пишу поэтому ошибся, редактировать в
devices/SOpenClose_statusUpdated.php
фанат Мажордомо
тематический блог http://blog.gelezako.com
плейлист про Мажордомо на ютубе https://www.youtube.com/playlist?list=P ... EdBGtX084E
Аватара пользователя
Gelezako
Сообщения: 963
Зарегистрирован: Чт июн 02, 2016 9:33 pm
Благодарил (а): 205 раз
Поблагодарили: 106 раз
Контактная информация:

Re: Простые устройства / Simple Devices

Сообщение Gelezako » Сб ноя 04, 2017 3:13 pm

xor писал(а):Да, а не проще ли вместо всего этого в связанной комнате в методе онИдле записать $this->setProperty('SomebodyHere',0);?
Этот метод вызывается по умолчанию через 10 мин. после онАктивити в комнате.
проверил, у менятам и так стоит этот код, но активность вечная всё равно если не редактировать $alive_timeout
Я уже понял что это несколько неверно, буду признателен если подскажите как сделать по нормальному.

Ещё вопрос, вы говорите что
xor писал(а): alive -это ... признак "живости" датчика.
т.е. есть какая-то логика, которая что-то будет делать если от датчика не поступают данные определённое время? Ещё мне не понятно, если для датчика было установлено 2 дня, то почему в Openclose01.aliveTimeout всегда пусто? Я ожидаю что в этом поле как раз будет цифра эквивалент 2 дня. Или я что-то не так понял?
фанат Мажордомо
тематический блог http://blog.gelezako.com
плейлист про Мажордомо на ютубе https://www.youtube.com/playlist?list=P ... EdBGtX084E
Аватара пользователя
Gelezako
Сообщения: 963
Зарегистрирован: Чт июн 02, 2016 9:33 pm
Благодарил (а): 205 раз
Поблагодарили: 106 раз
Контактная информация:

Re: Простые устройства / Simple Devices

Сообщение Gelezako » Сб ноя 04, 2017 5:35 pm

Ещё вопрос про про RGB-контроллер, добавил его для управления цветом на Ксиоми ночнике шлюза. Вопрос: Чем свойство XiRgb01.colorSaved отличается от XiRgb01.color? Зачем их добавлено 2 штуки?
фанат Мажордомо
тематический блог http://blog.gelezako.com
плейлист про Мажордомо на ютубе https://www.youtube.com/playlist?list=P ... EdBGtX084E
Аватара пользователя
xor
Сообщения: 2038
Зарегистрирован: Сб ноя 22, 2014 8:45 pm
Благодарил (а): 284 раза
Поблагодарили: 629 раз

Re: Простые устройства / Simple Devices

Сообщение xor » Сб ноя 04, 2017 9:59 pm

Gelezako писал(а):т.е. есть какая-то логика, которая что-то будет делать если от датчика не поступают данные определённое время?
Ну, это признак, что с датчиком что-то случилось и его показаниям/отсутствию показаний нельзя доверять.
Gelezako писал(а):Ещё мне не понятно, если для датчика было установлено 2 дня, то почему в Openclose01.aliveTimeout всегда пусто? Я ожидаю что в этом поле как раз будет цифра эквивалент 2 дня. Или я что-то не так понял?
Два дня ставятся по умолчанию в коде, если Вы ничего не установили в Openclose01.aliveTimeout (см. фрагмент кода из файла). Это такой эквивалент разумной бесконечности
Gelezako писал(а):Ещё вопрос про про RGB-контроллер, добавил его для управления цветом на Ксиоми ночнике шлюза. Вопрос: Чем свойство XiRgb01.colorSaved отличается от XiRgb01.color? Зачем их добавлено 2 штуки?
А это я так понял, что Сергей выключает РГБ, устанавливая черный цвет в колор и запоминая текущий цвет в колор-савед, а когда нужно включить, переписывает сохраненный цвет в колор из колор-савед.
И да, я тоже думаю, что это избыточно - два свойства для цвета. Для выключения достаточно прописывать константу, не трогая свойство цвета
Аватара пользователя
Gelezako
Сообщения: 963
Зарегистрирован: Чт июн 02, 2016 9:33 pm
Благодарил (а): 205 раз
Поблагодарили: 106 раз
Контактная информация:

Re: Простые устройства / Simple Devices

Сообщение Gelezako » Вс ноя 05, 2017 2:13 am

xor писал(а): Два дня ставятся по умолчанию в коде, если Вы ничего не установили в Openclose01.aliveTimeout (см. фрагмент кода из файла). Это такой эквивалент разумной бесконечности
т.е. если я Openclose01.aliveTimeout установлю в 3 минуты, то я как бы переопределю захардкоденое значение в 2 дня? Кста, не подскажите в каких единицах опредляется значение Openclose01.aliveTimeout? Если мне нужно 3 минуты, то сколько надо вписать?
фанат Мажордомо
тематический блог http://blog.gelezako.com
плейлист про Мажордомо на ютубе https://www.youtube.com/playlist?list=P ... EdBGtX084E
Аватара пользователя
xor
Сообщения: 2038
Зарегистрирован: Сб ноя 22, 2014 8:45 pm
Благодарил (а): 284 раза
Поблагодарили: 629 раз

Re: Простые устройства / Simple Devices

Сообщение xor » Вс ноя 05, 2017 2:36 am

Я же про это писал уже:
viewtopic.php?f=7&t=3574&start=280#p63354

Там можно только целое число часов почему-то прописать.
Если (int) убрать, можно и дроби туда вписывать. Но это значит - опять править файл Сергея, т.е., это до следующего обновления.
Аватара пользователя
Gelezako
Сообщения: 963
Зарегистрирован: Чт июн 02, 2016 9:33 pm
Благодарил (а): 205 раз
Поблагодарили: 106 раз
Контактная информация:

Re: Простые устройства / Simple Devices

Сообщение Gelezako » Вс ноя 05, 2017 11:41 pm

ну да, замкнутый круг получается, оформил вопрос на гитхабе, буду ждать ответа от Сергея. Вот кому интересно
https://github.com/sergejey/majordomo/issues/150
фанат Мажордомо
тематический блог http://blog.gelezako.com
плейлист про Мажордомо на ютубе https://www.youtube.com/playlist?list=P ... EdBGtX084E
Аватара пользователя
nick7zmail
Сообщения: 7573
Зарегистрирован: Пн окт 28, 2013 8:14 am
Откуда: Екатеринбург
Благодарил (а): 121 раз
Поблагодарили: 2010 раз

Re: Простые устройства / Simple Devices

Сообщение nick7zmail » Пн ноя 06, 2017 12:32 pm

Сергей...кажется нашел причину "нерабочести" выключателей в меню.
Элементы сцены (как, видимо и элементы дашборда) используют методы TurnOn / TurnOff. С ними вопросов никаких нет.
А вот с выключателями меню (как и с командами sg('устройство.статус')), собственно беда. Они просто перещелкивают свойство статус. Свойство в свою очередь подтягивает метод statusUpdated. А в этом методе нету вызова TurnOn/TurnOff.

Стоило дописать

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

elseif ($this->class_title == 'SRelays') {
if ($this->getProperty('status')) {
 $this->callMethodSafe('turnOn');
} else {
 $this->callMethodSafe('turnOff');
}
}
к

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

if ($this->class_title == 'SMotions' && $params['NEW_VALUE'] && !timeOutExists($ot.'_motion_timer_status')) {
    $this->callMethodSafe('motionDetected',array('statusUpdated'=>1));
} elseif ($this->class_title == 'SButtons' && $params['NEW_VALUE'] && !timeOutExists($ot.'_pressed_status')) {
    $this->callMethodSafe('pressed',array('statusUpdated'=>1));
}
и всё заработало, как надо. Поправь, если в чем-то не прав (Может этот вызов в другом месте прописан?). Если прав - просьба докинуть в обновление очередное.
Raspberry Pi3+Broadlink+esp8266 (blynk)+AMS
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
:arrow: Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
Аватара пользователя
Gelezako
Сообщения: 963
Зарегистрирован: Чт июн 02, 2016 9:33 pm
Благодарил (а): 205 раз
Поблагодарили: 106 раз
Контактная информация:

Re: Простые устройства / Simple Devices

Сообщение Gelezako » Пн ноя 06, 2017 1:41 pm

nick7zmail, предлагайте свой Pull requests прямо в проекте на гитхабе, так намного проще и быстрей внести ваш фикс.
фанат Мажордомо
тематический блог http://blog.gelezako.com
плейлист про Мажордомо на ютубе https://www.youtube.com/playlist?list=P ... EdBGtX084E
Аватара пользователя
nick7zmail
Сообщения: 7573
Зарегистрирован: Пн окт 28, 2013 8:14 am
Откуда: Екатеринбург
Благодарил (а): 121 раз
Поблагодарили: 2010 раз

Re: Простые устройства / Simple Devices

Сообщение nick7zmail » Пн ноя 06, 2017 1:47 pm

Я как то предложил пул реквест...до сих пор вспоминается...при первых 2х попытах он показывал около 2х тысяч обновлений, хотя я изменил 3 файла...потом вроде получилось что-то более удачное, но в обновлениях системы почему-то аж 3 раза моё обновление проскочило...так что у Сергея тоже там что-то не легко прошло видимо)))

Плюс я не уверен в своей правоте. Может по задумке Сергея методы TurnOn/TurnOff как-то по-другому вызываются при смене статуса...
Raspberry Pi3+Broadlink+esp8266 (blynk)+AMS
Если вам помогло какое-либо сообщение - не забывайте пользоваться кнопкой "СПАСИБО".
:arrow: Услуги в профиле коннект
>>>>>Мой новый канал на ютутбе, подписывайтесь!<<<<<
Ответить