Умный дом, моя эволюция от Google Home до мобильного приложения на 1С

Как всё началось.

Два года назад прочитал несколько статей про «умный дом». Заинтересовало, стал более глубоко вникать в эту тему. Начал изучать какие технологические платформы (экосистемы) подойдут для меня, чтобы попроще. Остановился на Google Home. Купил на e-bay две умных колонки, Google Home и Google Home Mini, так получилось, что подавались сразу две, да
по приятной цене.

Google Home Mini (2 шт.) и Google Home (2 шт.), большие и маленькие работают в стерео-режиме.
Google Home Mini (2 шт.) и Google Home (2 шт.), большие и маленькие работают в стерео-режиме.

Параллельно купил несколько выключателей одного крупного китайского производителя для управления электроприборами и светом. Что подкупило, управлялись по wi-fi, фирменное приложение сертифицировано Google на совместимость с их приложением.

Тындекс был отвергнут в виду дороговизны самой колонки и устройств для него, а перспектива постоянных платных подписок не прельщала. А то что он постоянно подслушивал, как-то совсем сильно огорчало. Другие экосистемы были забракованы по аналогичным причинам или требовались устройства только этой экосистемы, или предъявлялись высокие требования к знаниям по настройке и управлению умными устройствами.

Первый опыт

Приложение Google Home установилось без проблем. Колонки подключились к приложению тоже. Правда приложение немного по-возмущалось, что «колонки предназначены для региона USA, но работать начали.

Настал черёд установки умных выключателей. Устройства встали и заработали с пол-оборота. Установил фирменное приложение производителя, для управления устройствами, инициализировал, всё также заработало без проблем.

С приложением GoogleHome связал приложением производителя. Теперь все устройства появились в GoogleHome и стало возможным управлять устройствами голосом. Правда пришлось помучаться с названиями выключателей на английском, так как Google ассистент не всегда понимал моё произношение. Или моё произношение сильно хромало. В общем, в перспективе всё должно было сложиться как нельзя лучше. Однако…

Первое разочарование

Google отключил поддержку русского языка. Ну и ладно. Колонки пришли, переключатели тоже. Устройства в приложении работали без проблем. Жаль только, что голосом управлять можно было только на английском языке (с другими иностранными языками не дружу). Да к тому же, приложение Google Home на русском языке было сильно «порезано» и значительно отличалось от приложения на английском. Но тоже не беда, переключил язык телефона на английский и всё заработало в полную силу.

Также сильно начало беспокоить осознание того, что как минимум две огромные компании (американская и китайская) и их аффилированные лица могут знать обо мне кое-что, что я не хотел бы что бы они это знали. Плюс зависимость от интернета, и работоспособности серверов этих компаний, так как обработка команд и хранение состояний, триггеров (скриптов) и всего остального находится там.

Развитие «умного дома» от Google Home

Так как всё работало как часы, начал докупать ещё «умные» устройства. Начал самостоятельно делать «умные» розетки и прочее, связанное с электричеством. На текущий момент их у меня теперь 23 штуки. Докупил ещё пару колонок, умный дисплей и хромкаст от Google. Всё отлично работает, приложения обновляются, функции прибавляются. Начал в Google Home изучать автоматизацию и настраивать «рутины». Аналогично в приложении производителя. Конечно больше возможностей автоматизации оказалось в производителя, оно и понятно, производитель.

Следующим шагом стала «руссификация» Google Home. Это конечно не в полном смысле этого слова, но смысл этот. То есть, например, говоришь «Turn on Коридор», включается свет в коридоре. Или «Turn of Душ», свет в ванной выключается.

Делюсь опытом. Чтобы заставить Google понимать по-русски сделал следующим образом: все имена устройств в приложении производителя написал в транслитерации, русские слова латинскими буквами. Например, «Коридор» - «Koridor», «Комната» - «Komnata», «Балкон» - «Balcon». Имена устройств в приложении Google Home – как есть, на русском.

Именование устройств в приложенииGoogle Home
Именование устройств в приложенииGoogle Home

В итоге заработало, и Google начал понимать имена устройств на русском. Всё бы хорошо, но.

Снова огорчения

Сначала не замечал, или не обращал внимания, световые индикаторы устройств иногда моргали не так, как обычно. В это время голосовое управление было недоступно, скрипты не работали. Как выяснилось в последствии – это были проблемы с серверами производителя в Европе, устройства теряли связь в «материнским кораблём» и работали только как обычные выключатели. Google Home отвечал: «Сори, устройство не доступно, попробуйте позднее» или что-то в это роде.

Следующим «ударом» стал катастрофический сбой серверов производителя, устройства «не работали» больше суток. А также, примерно в это же узнал о решениях Сяоми и Самсунг о том, что умные устройства, выпущенные более четырёх лет назад, больше этими платформами не поддерживаются.

Тут я серьёзно задумался над тем, стоит ли полностью доверяться облачным решениям какого-то производителя. Теперь уже не важно какого, с мировым именем, или без.

Эксперименты с 1С

Как-то подбирая новые умные устройства увидел в описании слова «может работать в режиме DIY» (сделай сам). То есть, при переключении в этот режим, устройство больше не связывается с «материнскими серверами», и ты можешь управлять ими сам, как тебе заблагорассудится. Правда с ограниченным набором команд, «зашитых» производителем. Но это не беда, так как их состав ненамного беднее, чем в приложении.

DIY переключатель и димер, для экспериментов.
DIY переключатель и димер, для экспериментов.

Решил купить несколько, для экспериментов. А так как программирую на 1С, и опыт обмена со сторонними системами по http протоколу, в том числе с сайтом, был, решил – «а почему бы и нет?».

По инструкции перевёл устройства в режим DIY, написал простенькую программулину. Первые эксперименты прошли более чем успешно. Вдохновленный успехами начал ваять программу посерьёзнее. В ней уже был реализован практически полный функционал по управлению умными устройствами, в том числе и голосовое управление.

В этом варианте управления, уже была полная независимость от приложения (облачного решения) производителя, наличия/отсутствия интернета для управления. Так как «управляющий сервер», в лице программы 1С, находился в локальной сети. Правда зависимость от интернета всё же была в контексте голосового управления, так как распознавание голоса и перевод его в текст, а также ответные голосовые фразы зависели от Google. Но это уже как говорится, издержки хотелок.

Первый вариант программы
Первый вариант программы

Вершиной развития моей программы на 1С стала поддержка голосового управления умными устройствами на различных языках со своим голосовым ассистентом. В настоящий момент сделал демо-программы с поддержкой Украинского, Узбекского, Болгарского языков. Можно «прикрутить» поддержку около ста языков.

Видео управления на болгарском языке.

Смарт дом на български език

На украинском

Розумний будинок Українською мовою

Плюс, для управления каждым устройством можно задать неограниченное количество управляющих фраз, и ответных фраз ассистента. А также в зависимости от языка могут быть разные голоса ассистентов, обычно два, мужской и женский. Но, например, у русского их три, два женских голоса и один мужской. У английского по пять женских и мужских. Ассистент имеет базовое имя, но можно задать своё.

Например, можно сказать «Петя, включи коридор», ассистент включит свет и ответит – «Так точно, господин полковник». Или «Гюльчатай, выключи коридор», она выключит и ответит «Да, мой господин, выключила».

Ложка дёгтя в бочке мёда

Практически всё было хорошо в этом приложении, но всё-таки были значительные минусы. Во-первых, лицензии на 1С, за них надо платить. Во-вторых, для работы программы нужен какой-никакой, хоть мини, но компьютер. К компьютеру нужен микрофон и колонки для голосового управления. В-третьих, когда далеко от микрофона, программа тебя не «слышит» и соответственно голосовое управление сходит на нет. В-четвёртых, то что это обычное приложение и есть сложности в разработке поддержки голосового управления. Встроенных инструментов для работы с микрофоном и воспроизведением звука в 1С для обычных приложений нет, поэтому приходилось интегрировать сторонние приложения. А это в свою очередь - нестабильность работы программы. В-пятых, можно управлять с планшета или смартфона через браузер, но тоже не удобно, плюс управление голосом отсутствует.

Всё это повлияло на решение начать новый этап разработки, создать мобильное приложение. Также некоторые политические события, отключение России от всяких сервисов и облачных решений. А самое главное угроза отключения моих устройств послужило главным аргументом в пользу отказа от облачных решений и ускорило переход к разработке собственного мобильного приложения.

Мобильное приложение на 1С

Все минусы, и особенно плюсы привели к решению создать своё мобильное приложение по управлению умными устройствами. Было много поисков, на каком языке программирования это приложение разрабатывать. Потратив пару месяцев на проработку этого вопроса, принял решение остаться на 1С.

Мобильное приложение "Умный свет". Часть 1 главное окно, быстрый обзор

Плюсы мобильного приложения:

1. Полная конфиденциальность персональных и иных данных. Небольшое исключение составляет перевод голоса в текст, но и оно происходит анонимно, без персонализации.

2. Приложение подходит и для планшета, и для смартфона.

3. Отсутствует централизованный «материнский/облачный» сервер/устройство/приложение по хранению обработке и т.д. команд, данных и т.п.

4. Можно использовать несколько смартфонов/планшетов в семье, на каждом будет работать независимо.

5. Возможность использования встроенного микрофона и спикеров (можно подключить внешние колонки по проводу или блютус).

6. Все плюсы, описанные выше для обычного приложения.

7. Голосовые команды и ответные фразы ассистента можно не набирать текстом, а по нажатию кнопки записи с микрофона преобразовать из голоса в текст.

8. Не надо покупать лицензии 1С.

Мобильное приложение "Умный свет". Часть 2. Краткий обзор возможностей голосовых ассистентов.

Минусы:

1. Приложение работает (пока) только на андроиде.

2. Для подачи команды голосом надо нажать кнопу записи с микрофона.

3. Генерацию голосовых ответных фраз ассистент необходимо делать «вручную».

4. Пока нет автоматического поиска устройств, IP-адрес устройства надо прописывать вручную.

Мобильное приложение "Умный свет". Часть 3. Краткий обзор управления яркостью света

Ближайшие перспективы развития.

1. Доработка интерфейсов главного и вспомогательных окон.

2. Автоматический поиск устройств.

3. Создание периодических заданий» (регламентов), для выполнения включения/выключения устройств по расписанию, таймеру или циклично.

Для кого подойдёт это приложение

1. Кому интересно облегчить свою бытовую жизнь и автоматизировать что-нибудь.

2. Пенсионерам или людям с ограниченной подвижностью.

3. Для дач или загородных домов (где нет или не нужен интернет), для имитации жизнедеятельности.

4. Всем желающим.

Вкратце как-то так.

Happy end

В общем и целом, считаю, что эволюцию я прошел более чем успешно. Фундамент и каркас дома с внутренней отделкой готовы. Осталось навести марафет на фасад, в виде, так сказать, более удобного пользовательского интерфейса.

Заключительное слово

Надеюсь вам понравилась эта статья, не забудьте поставить «лайк». Если есть вопросы, спрашивайте в комментариях. Если вас заинтересовало мобильное приложение, пишите, готов поделиться, в том числе готов написать инструкции по устройствам и мобильному приложению. Готов выслушать конструктивную критику или предложения.

На этом всё. У вас получится.

Всем здоровья, благополучия.

33
1 комментарий

Странно что нет комментов. Чел то хорошее дело сделал.Да и интересно однакож.