обработка переменных -помогите.

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

Модератор: immortal

Ответить
gagarin74
Сообщения: 331
Зарегистрирован: Пн апр 06, 2015 9:51 am
Благодарил (а): 37 раз
Поблагодарили: 22 раза

обработка переменных -помогите.

Сообщение gagarin74 » Вт июл 14, 2015 2:09 pm

В принципе вопрос наверное простой ,если знать ответ.
есть переменная temper.proba.
меняем её из вне по запросу http://сервер/objects/?object=temper&op=set&p=proba&v=33

Вопрос как заставить умный дом "мгновеннно" срабатывать какой либо сценарий при изменение этой переменной?
типо say ("переменная изменилась",2);
skysilver
Сообщения: 3006
Зарегистрирован: Чт авг 21, 2014 8:28 am
Откуда: Киров, Россия
Благодарил (а): 400 раз
Поблагодарили: 1754 раза
Контактная информация:

Re: обработка переменных -помогите.

Сообщение skysilver » Вт июл 14, 2015 2:29 pm

Можно нужный сценарий реализовать в методе, который срабатывает при изменении свойства объекта.
Вот тут уже выкладывал скриншот по теме http://majordomo.smartliving.ru/forum/v ... 388#p22865
За это сообщение автора skysilver поблагодарил:
gagarin74 (Вт июл 14, 2015 2:47 pm)
Рейтинг: 1.16%
MajorDoMo (GitHub) на Cubietruck. ОС Debian 7 (wheezy) (kernel 3.4.105) с переносом на HDD.
Мой CONNECT | Блоги | Telegram
gagarin74
Сообщения: 331
Зарегистрирован: Пн апр 06, 2015 9:51 am
Благодарил (а): 37 раз
Поблагодарили: 22 раза

Re: обработка переменных -помогите.

Сообщение gagarin74 » Вт июл 14, 2015 2:48 pm

СЛОНА Я И НЕ ЗАМЕТИЛ!!!!! СПАСИБО!!!!!!!!!!!!!!!!!!!!!!!!!!!!
dmw
Сообщения: 469
Зарегистрирован: Вт мар 12, 2013 1:22 am
Благодарил (а): 41 раз
Поблагодарили: 81 раз

Re: обработка переменных -помогите.

Сообщение dmw » Ср июл 15, 2015 11:50 am

Или вызывать сразу метод объекта temper с названием probaChanged, а переменную изменять уже из метода:
http://сервер/objects/?object=temper&op=m&m=probaChanged&v=33
в самом коде метода:

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

$oldvalue = $this->getProperty("proba");
$newvalue = $params['v'];
if ($oldvalue != $newvalue) {
   $this->setProperty("proba",$newvalue);
   say ("переменная изменилась",2);
} 
За это сообщение автора dmw поблагодарил:
gagarin74 (Ср июл 15, 2015 10:07 pm)
Рейтинг: 1.16%
Ответить