Как-то это не по феншую. Делается это примерно так:
У объекта Svet_3_spaln должны быть методы
turnOn:
Код: Выделить всё
$this->setProperty("sostojanie",1);
getURL('http://192.168.2.10/gpio?st=1&pin=12', 0);
turnOff:
Код: Выделить всё
$this->setProperty("sostojanie",0);
getURL('http://192.168.2.10/gpio?st=0&pin=12', 0);
switch:
Код: Выделить всё
if ($this->getProperty("sostojanie") == '1')
{
$this -> setProperty("sostojanie", 0);
getURL('http://192.168.2.10/gpio?st=0&pin=12', 0);
} else {
$this -> setProperty("sostojanie", 1);
getURL('http://192.168.2.10/gpio?st=1&pin=12', 0);
}
Метод switch назначаете при изменении свойства "sostojanie"
Теперь в меню в выключателе никакой код писать не нужно, просто связываете с объектом Svet_3_spaln, и свойством "sostojanie".
В шаблонах или сценарии если нужно включить свет: callMethod('Svet_3_spaln.turnOn'), а если выключить callMethod('Svet_3_spaln.turnOff') и соответственно переключить callMethod('Svet_3_spaln.switch')
Как-то так