Активация и деактивация скрипта на сцене

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

Модератор: immortal

Ответить
VAndrey
Сообщения: 109
Зарегистрирован: Ср окт 11, 2017 1:09 pm
Откуда: Краснодар
Благодарил (а): 94 раза
Поблагодарили: 1 раз

Активация и деактивация скрипта на сцене

Сообщение VAndrey » Сб май 26, 2018 11:34 pm

Здравствуйте, знатоки.
Вопрос такой... У меня имеется сценарий включения и отключения насоса полива газона. Его надо активировать и деактивировать в зависимости от того, есть ли на улице дождь...
Вариантов реализации, как минимум, два:
1. Добавить в условия скрипта отслеживание свойства 'ow_day0.rain' (сейчас так реализовано в тестовом режиме)
2. Сделать на сцене включатель-выключатель сценария, где "вкл" переводил бы скрипт в режим "Автоматический запуск" (который уже имеется в поле выбора под сценарием). А "выкл" переводил бы его в ручной режим.
Как можно реализовать второй вариант?
Сервер на Orange Pi РС (Armbian 5.60 stable Debian GNU/Linux 9 4.14.84-sunxi)
Аватара пользователя
xor
Сообщения: 2039
Зарегистрирован: Сб ноя 22, 2014 8:45 pm
Благодарил (а): 286 раз
Поблагодарили: 629 раз

Re: Активация и деактивация скрипта на сцене

Сообщение xor » Сб май 26, 2018 11:38 pm

Ну и сделайте как с дождем - создайте свойство Авто и если оно =1, пусть само и запускается, если дождя нет
Последний раз редактировалось xor Сб май 26, 2018 11:50 pm, всего редактировалось 1 раз.
За это сообщение автора xor поблагодарил:
VAndrey (Вс май 27, 2018 6:34 am)
Рейтинг: 1.16%
Chainik
Сообщения: 1462
Зарегистрирован: Вс янв 10, 2016 11:05 am
Благодарил (а): 260 раз
Поблагодарили: 454 раза

Re: Активация и деактивация скрипта на сцене

Сообщение Chainik » Сб май 26, 2018 11:45 pm

Напрашивается вариант, когда режим (Авто/Ручной) будет "завязан" на свое свойство. И уже из кода сценария, где определяется логика включения насоса (полива) проверять помимо "rain" еще и значение свойства режима.
Выключатель на сцене переключает режимы: меняет значение свойства (Авто/Ручной).

Кстати, вот была любопытная, пусть и давнишняя статья про автополив (https://ab-log.ru/smart-house/garden_automation).
За это сообщение автора Chainik поблагодарил:
VAndrey (Вс май 27, 2018 6:33 am)
Рейтинг: 1.16%
VAndrey
Сообщения: 109
Зарегистрирован: Ср окт 11, 2017 1:09 pm
Откуда: Краснодар
Благодарил (а): 94 раза
Поблагодарили: 1 раз

Re: Активация и деактивация скрипта на сцене

Сообщение VAndrey » Вс май 27, 2018 6:33 am

Спасибо за ответы. Со свойствами объекта "выключатель сценария полива", вроде, разобрались.
Но, для меня ответ не полон... Дополнительно интересует: каким именно кодом активируется автоматический режим сценария (его связка с объектом ClockChime.time) и каким кодом сценарий переводится в ручной режим (эта связка рвется)?
img-2018-05-27-06-29-15.png
img-2018-05-27-06-29-15.png (33.41 КБ) 3562 просмотра
Сервер на Orange Pi РС (Armbian 5.60 stable Debian GNU/Linux 9 4.14.84-sunxi)
Аватара пользователя
xor
Сообщения: 2039
Зарегистрирован: Сб ноя 22, 2014 8:45 pm
Благодарил (а): 286 раз
Поблагодарили: 629 раз

Re: Активация и деактивация скрипта на сцене

Сообщение xor » Вс май 27, 2018 9:59 am

Ну, я не знаю, как у вас сделано, предположим, что есть
свойства:
Дождь
Автополив

методы:
вклПолив
выклПолив

скрипт Полива:
вклПолив
ждем 20 мин и в цикле проверяем Дождь==1?, если да -- досрочно переходим к выклПолив
выклПолив

кнопки:
РучнойПолив -- включается скрипт Полива всегда (тупо вызывает скрипт Полива)
АвтоПолив -- включается по времени и если нет дождя (устанавливает Автополив=0 или 1)

Тогда в минутном цикле или в Кроне задаем время полива для вызова скрипта Полива:
если время полива настало и Дождь=0 и Автополив=1, то вызываем скрипт Полива, иначе
если Дождь=1 и Автополив=1, пишем "Поливать в дождь не буду!"
За это сообщение автора xor поблагодарил:
VAndrey (Вс май 27, 2018 4:57 pm)
Рейтинг: 1.16%
Chainik
Сообщения: 1462
Зарегистрирован: Вс янв 10, 2016 11:05 am
Благодарил (а): 260 раз
Поблагодарили: 454 раза

Re: Активация и деактивация скрипта на сцене

Сообщение Chainik » Вс май 27, 2018 1:19 pm

VAndrey писал(а):
Вс май 27, 2018 6:33 am
Но, для меня ответ не полон... Дополнительно интересует: каким именно кодом активируется автоматический режим сценария (его связка с объектом ClockChime.time) и каким кодом сценарий переводится в ручной режим (эта связка рвется)?
"Автоматический запуск" - это новый функционал. Вот тут подробности (https://majordomo.smartliving.ru/forum/ ... f=7&t=4941).

Сам я этим не пользуюсь, поэтому пояснить что-то не смогу. Однако представляется, что в вашем случае проверке подлежит более чем одно условие (как минимум, наличие дождя и режим полива, хотя, наверное, неплохо было бы еще проверять, не включен ли уже насос (т.е. состояние насоса)). Так что, насколько применим в вашем случае функционал "Автоматический запуск" - это вопрос.
А вот то, что написал ув.xor - вполне работающий вариант.
За это сообщение автора Chainik поблагодарил:
VAndrey (Вс май 27, 2018 4:57 pm)
Рейтинг: 1.16%
Аватара пользователя
xor
Сообщения: 2039
Зарегистрирован: Сб ноя 22, 2014 8:45 pm
Благодарил (а): 286 раз
Поблагодарили: 629 раз

Re: Активация и деактивация скрипта на сцене

Сообщение xor » Вс май 27, 2018 2:27 pm

А, новая плюшка...
Я отвечал без учёта последних новаций. Не использую то, что не знаю как работает)))
мы по старинке...
Ответить