Согласно вашему коду, вы проверяете значение gpiout4 и если оно равно 0 то переключаете gpio4 в 1. а затем снова проверяете gpiout4 и если оно равно 1 то gpio4 опять переключаете в 1 (логичнее было бы в 0).kastortroy писал(а):Приветствую, требуется помощь.
Пробую сделать управление светом, на плату esp12 (прошивка homes-smart) подключено 2 реле - одно управление (gpio4 input и gpio4 output изменяют состояние реле), второе состояние лампы (gpio5 input 0 выкл, 1 вкл)
Пытаюсь завести по предложенным тут кодам, но не получается(
if (($this->getProperty("gpiout4")) =="0")
{
getURL('http://192.168.0.106/gpiout?st=1&pin=4&flash=1', 0);
} else if (($this->getProperty("gpiout4")) =="1")
{
getURL('http://192.168.0.106/gpio?st=1&pin=4&flash=1', 0);
}
Какие бы комбинации не пробовал не работает... Выдает ошибку
Fatal error: Call to undefined method scripts::getProperty() in /var/www/modules/scripts/scripts.class.php(139) : eval()'d code on line 1
И по-моему эти действия таки лучше делать в методе а не в скрипте, тогда прописав метод для класса, вы сможете вызывать его для каждого обьекта (например для другой есп-шки в другой комнате).
И еще думаю, не стоит возлагать такие элементарные действия как переключение реле при нажатии на кнопку на Мажордомо... думаю логичнее повесить это на плечи есп-шки, а мажордомо пускай просто будет в курсе, и вмешивается только при необходимости...
При подходе, который Вы пытаетесь реализовать, при падении Мажордомо перестанет работать все в доме...(( Пусть отдельным реле и термостатом или еще чем рулит контролер, а Мажордомо только говорит что делать и зачем следить..
В прошивке от Макса можно прописать Gpio на котором реле в поле GPIO For Key, тогда нажиманием физической кнопки состояние реле все равно изменится, при чем сделается это хоть и на доли секунды но все таки быстрее, чем при участии Мажордомо. Кроме этого статус вашего реле и вашей кнопки все равно улетят к Алисе... а при необходимости включить или выключить свет вы без проблем сможете из интерфейса мажордомо
