Страница 1 из 1
Изменение свойства и запуск метода
Добавлено: Пт сен 16, 2016 3:08 pm
VladPTZ
Тут написано
http://majordomo.smartliving.ru/Main/Library
3.Вызвать метод и присвоить значение свойству можно удаленно строчкой вида
Код: Выделить всё
http://127.0.0.1/objects/?object=dimmerHall&op=m&m=remoteStatusChanged&brightness=0
где 127.0.0.1 - адрес сервера, object - объект, m - метод&значение свойства.
Есть у меня строка
Код: Выделить всё
http://192.168.1.146/objects/?object=IR_Resiver&op=m&m=IR_Decode&Code=4187020818
В итоге метод IR_Decode запускается а свойство Сode на значение 4187020818 не меняется.
Почему?
У вас меняется?
Re: Изменение свойства и запуск метода
Добавлено: Пт сен 16, 2016 6:06 pm
ipz
В X-Ray -> Debug что пишет при вызове этой строки?
Эта строка вызывает метод remoteStatusChanged с параметром brightness=0
Если просто изменить свойство объекта, без вызова метода нужно так
Код: Выделить всё
http://192.168.1.146/objects/?object=IR_Resiver&op=set&p=IR_Decode&v=4187020818
или так
Код: Выделить всё
http://192.168.1.146/objects/?object=IR_Resiver&op=set&p=Code&v=4187020818
В зависимости от того как свойство объекта называется
Re: Изменение свойства и запуск метода
Добавлено: Пт сен 16, 2016 7:15 pm
VladPTZ
Кажется начинает прояснятся....
То есть получается я методу передаю параметр а не меняю свойство объекта.
Тогда как мне внутри метода этот параметр получить и обработать, можно пример кода метода?
Смысл моей задумки такой, передать методу число, а метод в зависимости от полученного числа выполняет нужные действия.
Re: Изменение свойства и запуск метода
Добавлено: Пт сен 16, 2016 8:32 pm
ipz
$params['Code'] будет равно 4187020818
Можно проверить содержимое всего массива $params (для отладки, например, ну или для чего душа пожелает перебрать его содержимое):
Код: Выделить всё
foreach($params as $index => $val) {DebMes($index . "->" . $val);}
Re: Изменение свойства и запуск метода
Добавлено: Пт сен 16, 2016 8:53 pm
VladPTZ
ipz спасибо.
Код: Выделить всё
$this->setProperty("Code",$params['Code']);
say("работает",2);
Вот такой диагностический код записал переданное значение при вызове метода в свойство объекта, буду писать дальше

Re: Изменение свойства и запуск метода
Добавлено: Пт сен 16, 2016 8:59 pm
ipz
Работает, но лучше так:
Код: Выделить всё
if (isset($params['Code'])) {
$code = $params['Code'];
$this->setProperty("Code",$code);
say("работает",2);
if($code == 12345) {
// ...
}
}