Подскажите код для открытия и закрытия штор на рассвете и закате.

Если вы только начинаете осваивать систему MajorDoMo и чего-то не знаете или не можете понять, то задавайте свои вопросы в этой ветке.

Модератор: immortal

Jilber
Сообщения: 719
Зарегистрирован: Ср май 03, 2017 7:41 pm

Re: Подскажите код для открытия и закрытия штор на рассвете и закате.

Сообщение Jilber »

Да. Весь код этого метода выполняется раз в минуту.
Аватара пользователя
ImageMaker
Сообщения: 82
Зарегистрирован: Ср фев 13, 2019 9:28 pm

Re: Подскажите код для открытия и закрытия штор на рассвете и закате.

Сообщение ImageMaker »

xor писал(а): Ср май 26, 2021 1:06 am ...время в этих свойствах должно быть в формате "чч:мм".
Вроде все условия выполнены, но мотор для штор не срабатывает.
Что ещё можно посмотреть?
Jilber
Сообщения: 719
Зарегистрирован: Ср май 03, 2017 7:41 pm

Re: Подскажите код для открытия и закрытия штор на рассвете и закате.

Сообщение Jilber »

Т.е. именно в то время, когда наступает закат, не срабатывает ? Если позже, когда закат уже наступил, то и не сработает - там идёт проверка только текущего времени.
А у вас в методе "onNewMinute" есть же включение/выключение DarknessMode ? Вроде по умолчанию оно должно присутствовать в системе и работать. Вставьте строки своего кода SetTimeOut("lightOnTimer","callMethod('XiOpenable01.close');", 60); и SetTimeOut("lightOnTimer","callMethod('XiOpenable01.open');",1500); прямо туда, чтобы каждую минуту дважды не проверять время рассвета/заката.
Аватара пользователя
ImageMaker
Сообщения: 82
Зарегистрирован: Ср фев 13, 2019 9:28 pm

Re: Подскажите код для открытия и закрытия штор на рассвете и закате.

Сообщение ImageMaker »

Jilber писал(а): Ср май 26, 2021 9:34 pm Т.е. именно в то время, когда наступает закат, не срабатывает ?
Да, именно во время заката и рассвета (со смещением).
Jilber писал(а): Ср май 26, 2021 9:34 pm А у вас в методе "onNewMinute" есть же включение/выключение DarknessMode ?
Вы имеете в виду этот код:

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

 if (timeBetween(getGlobal('SunRiseTime'),getGlobal('SunSetTime')) && getGlobal('isDark')=="1") {
  setGlobal("isDark",0);
  callMethod('DarknessMode.deactivate');  
 } elseif (!timeBetween(getGlobal('SunRiseTime'),getGlobal('SunSetTime')) && getGlobal('isDark')!="1") {
  setGlobal("isDark",1);
  callMethod('DarknessMode.activate');    
 }
???

Строчку

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

SetTimeOut("lightOnTimer","callMethod('XiOpenable01.close');", 60); 
Вставить после

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

  callMethod('DarknessMode.activate');    
и строчку

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

SetTimeOut("lightOnTimer","callMethod('XiOpenable01.open');",1500); 
вставить после

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

  callMethod('DarknessMode.deactivate');  
???
Jilber
Сообщения: 719
Зарегистрирован: Ср май 03, 2017 7:41 pm

Re: Подскажите код для открытия и закрытия штор на рассвете и закате.

Сообщение Jilber »

Да. Здесь проверяется время и если закат уже был, а рассвет ещё нет, то активируется режим "Тёмное время суток" и надо закрыть шторы. Если же дневное время (между рассветом и закатом), то режим "Тёмное время суток" выключается и шторы нужно открыть.
Аватара пользователя
Sapizdullin
Сообщения: 408
Зарегистрирован: Сб фев 18, 2017 9:47 am
Откуда: Земля

Re: Подскажите код для открытия и закрытия штор на рассвете и закате.

Сообщение Sapizdullin »

ImageMaker писал(а): Сб май 22, 2021 10:38 pm Совсем не дружу с php :?

Есть время рассвета ow_fact_2.sunrise и время заката ow_fact_2.sunset
Если XiOpenable01.level=0, то шторы закрываются.
Если XiOpenable01.level=100, то шторы открываются.

Подскажите код для открытия и закрытия штор на рассвете и закате для сценария.
Открыть

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

if (timeIs(getGlobal('ow_fact_2.sunrise')))
{
sg(('XiOpenable01.level'),"100");
Закрыть

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

if (timeIs(getGlobal('ow_fact_2.sunset')))
{
sg(('XiOpenable01.level'),"0");
В метод ClockChime onNewMinute. Или в отдельный сценарий, а его пропишете в методе.
Например

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

runScriptSafe('rollerSheduler');
Intel(R) Core(TM) i7-6700, Debian 9 "Stretch", Zoneminder, Avreg.
Аватара пользователя
Nail
Сообщения: 377
Зарегистрирован: Пн мар 05, 2018 7:09 am
Откуда: Самара

Re: Подскажите код для открытия и закрытия штор на рассвете и закате.

Сообщение Nail »

Sapizdullin писал(а): Чт май 27, 2021 9:55 am
Открыть

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

if (timeIs(getGlobal('ow_fact_2.sunrise')))
{
sg(('XiOpenable01.level'),"100");
Закрыть

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

if (timeIs(getGlobal('ow_fact_2.sunset')))
{
sg(('XiOpenable01.level'),"0");
В метод ClockChime onNewMinute. Или в отдельный сценарий, а его пропишете в методе.
Например

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

runScriptSafe('rollerSheduler');
Свойство мне помнится кажется из "Опенватер"(если оно установленно)?

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

'ow_fact_2.sunrise' и 'ow_fact_2.sunset'
Mini AMD A6 1450 Quad-core.Ubuntu Server 18.04 (64-bit). MegaD. Zigbee2mqtt+SLS DIN Mini. Broadlink.
Аватара пользователя
Nail
Сообщения: 377
Зарегистрирован: Пн мар 05, 2018 7:09 am
Откуда: Самара

Re: Подскажите код для открытия и закрытия штор на рассвете и закате.

Сообщение Nail »

Sapizdullin писал(а): Чт май 27, 2021 9:55 am В метод ClockChime onNewMinute. Или в отдельный сценарий, а его пропишете в методе.
Например

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

runScriptSafe('rollerSheduler');
Xor - не советует делать отдельный сценарий (если я правильно понял, описано выше ), писать прямо в методе
ClockChime onNewMinute
Mini AMD A6 1450 Quad-core.Ubuntu Server 18.04 (64-bit). MegaD. Zigbee2mqtt+SLS DIN Mini. Broadlink.
Аватара пользователя
xor
Сообщения: 2045
Зарегистрирован: Сб ноя 22, 2014 8:45 pm

Re: Подскажите код для открытия и закрытия штор на рассвете и закате.

Сообщение xor »

Nail писал(а): Чт май 27, 2021 10:02 am
Sapizdullin писал(а): Чт май 27, 2021 9:55 am В метод ClockChime onNewMinute. Или в отдельный сценарий, а его пропишете в методе.
Например

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

runScriptSafe('rollerSheduler');
Xor - не советует делать отдельный сценарий (если я правильно понял, описано выше ), писать прямо в методе
ClockChime onNewMinute
не, как удобнее, тут при этом способе важен только вызов каждую минуту при использовании timeis
Аватара пользователя
Sapizdullin
Сообщения: 408
Зарегистрирован: Сб фев 18, 2017 9:47 am
Откуда: Земля

Re: Подскажите код для открытия и закрытия штор на рассвете и закате.

Сообщение Sapizdullin »

Nail писал(а): Чт май 27, 2021 10:02 am
Sapizdullin писал(а): Чт май 27, 2021 9:55 am В метод ClockChime onNewMinute. Или в отдельный сценарий, а его пропишете в методе.
Например

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

runScriptSafe('rollerSheduler');
Xor - не советует делать отдельный сценарий (если я правильно понял, описано выше ), писать прямо в методе
ClockChime onNewMinute
Какая разница.. Просто меньше кода в методе, для глаза ИМХО лучше.
Intel(R) Core(TM) i7-6700, Debian 9 "Stretch", Zoneminder, Avreg.
Ответить