Недавно на Хабре прочитал статью про управление умным домом на базе Noolite и решил проверить, как это работает на Андроид.
Я считаю, что умный дом должен управляться голосом на манер Стар Трека. А всякие там приложения и веб-интерфейс - это какие-то временные костыли.
Apple и Амазон уже почти пришли к этому, уже сейчас Алекса и Сири умеют управлять умным домом (например, Philips Hue работает почти из коробки).
У нас все эти штуки пока редкость, поэтому я взял, что было под рукой.
Сердце умного дома - это openhab, софт, который позволяет подключать разношерстные устройства (каждый производитель делает свой протокол управления). Openhab легко встал на Убунту по инструкции и докачал нужные плагины. Это большой шаг вперед по сравнению с тем софтом, который я видел раньше.
Потом я добавил свою умную розетку Orvibo S20.
В веб-интерфейсе и мобильном приложении я сразу смог ей управлять.
Однако для того, чтобы управлять голосом без кода не обойтись. И тут возникают вопросы. Нормальной среды для проверки синтаксиса и отладки нет. Т. е. выглядит это так, я редактирую скрипт в файле правил, на телефоне произношу команду - ничего не работает, смотрю лог.
<script async src="//embedr.flickr.com/assets/client-code.js" charset="utf-8"></script>
Этот скрипт работает примерно так:
В примерах на Openhab есть достаточно сложные скрипты для распознавания сложных сценариев. Т. е. можно сказать: "Включи большой свет на кухне."
Так что уже сейчас можно на дешевых китайских управляемых розетках сделать умное голосовое управление светом.