Страница 1 из 1
Как кодом изменить свойство объекта в классе Relays при изменении статуса объекта
Добавлено: Чт апр 05, 2018 5:27 am
yden
Здравствуйте.
Подскажите пожалуйста.
Как кодом изменить свойство объекта в классе Relays при изменении статуса объекта? Пробовал в методе turnOff этого объекта вставить код: sg('RelesvetKux.off', 1);. Не отрабатывает.
Это выключатель. Турнофф срабатывает:
https://photos.app.goo.gl/xIClD8Xxq666K9K12
Это топик мктт, который двигает есп. Турн офф не срабатывает:
https://photos.app.goo.gl/ePaxZvo9MEiRnWIq1
Телегой срабатывание проверяю:
https://photos.app.goo.gl/HXloqc4Ra5G0fMrh1
благодарю
Re: Как кодом изменить свойство объекта в классе Relays при изменении статуса объекта
Добавлено: Чт апр 05, 2018 5:57 am
Jilber
Т.е. при изменении свойства "status" надо изменить ещё и другое свойство ?
1. Шаблон поведения - На основе значей свойств:

- Шаблон.jpg (82.85 КБ) 4826 просмотров
2. Модуль
PropTransfer.
Re: Как кодом изменить свойство объекта в классе Relays при изменении статуса объекта
Добавлено: Чт апр 05, 2018 6:48 am
yden
Чтобы не плодить темы, спрошу здесь.
Нужно сделать задержку изменения статуса объекта.
Код:
if (gg('ReleSvetBanya.status'))
{
/*setTimeOut("timer_zabor","sg('ReleSvetBanya.status', 0)", 60*15);*/
sg('ReleSvetBanya.status', 0);
sg('banya_cs.need_on', 0);
}
Нужно чтобы минут 15 ReleSvetBanya.status был 1, потом стал 0.
С setTimeOut не могу разобраться.
благодарю
Re: Как кодом изменить свойство объекта в классе Relays при изменении статуса объекта
Добавлено: Чт апр 05, 2018 9:21 am
Chainik
yden писал(а): ↑Чт апр 05, 2018 6:48 am
Нужно чтобы минут 15 ReleSvetBanya.status был 1, потом стал 0.
С setTimeOut не могу разобраться.
Попробуйте заменить двойные кавычки на одинарные. Ну т.е.
Код: Выделить всё
setTimeOut('timer_zabor','sg('ReleSvetBanya.status',0)',60*15);
Re: Как кодом изменить свойство объекта в классе Relays при изменении статуса объекта
Добавлено: Чт апр 05, 2018 9:49 am
nick7zmail
Эт точно не сработает))) апострафы внутри других апострафов (собственно как и кавычки внутри кавычек) как минимум экранировать надо.
Код: Выделить всё
setTimeOut('timer_zabor','sg(\'ReleSvetBanya.status\',0)', 60*15);
А их сочетание - как раз без экранирующих слэшей вполне обходится.
А так у человека всё правильно было...таймер в xray появляется хотя бы?
Кстати не вам ли я как раз свет на заборе настраивал по условиям?)) timer_zabor - прост че то вспоминается такое)
Имена таймеров тоже не должны конфликтовать. Так что назовите хотя бы timer_banya)...иначе у вас timer_zabor (если он активен) просто будет перезаписывать команду, и она так и не выполнится.
Re: Как кодом изменить свойство объекта в классе Relays при изменении статуса объекта
Добавлено: Чт апр 05, 2018 6:39 pm
xor
Уникальное имя таймера 'zabor_'.time()
И, по моему, сет глобал в таймере внутри кавычек должен заканчиваться ;
как любая строка пхп
Отправлено с моего Redmi 4X через Tapatalk
Re: Как кодом изменить свойство объекта в классе Relays при изменении статуса объекта
Добавлено: Чт апр 05, 2018 7:12 pm
xor
xor писал(а):Уникальное имя таймера 'zabor_'.time()
И, по моему, сет глобал в таймере внутри кавычек должен заканчиваться ;
как любая строка пхп
Отправлено с моего Redmi 4X через Tapatalk
https://kb.smartliving.ru/planirovanie-zadach/
Да, в примерах ; стоит
Отправлено с моего Redmi 4X через Tapatalk
Re: Как кодом изменить свойство объекта в классе Relays при изменении статуса объекта
Добавлено: Чт апр 05, 2018 7:35 pm
Chainik
xor писал(а): ↑Уникальное имя таймера 'zabor_'.time()
И, по моему, сет глобал в таймере внутри кавычек должен заканчиваться ;
как любая строка пхп
Точно! Тогда должно сработать так
Код: Выделить всё
setTimeOut("timer_zabor","sg('ReleSvetBanya.status',0);",60*15);
Re: Как кодом изменить свойство объекта в классе Relays при изменении статуса объекта
Добавлено: Чт апр 05, 2018 7:59 pm
nick7zmail
Ну раньше и без ; работало. Хотя согласен, не лишним будет)