Мы рекомендуем вам создать локальное приложение для выполнения заказов, выполнив действия, описанные ранее, а затем протестировать интеграцию умного дома в собственной среде хостинга, выполнив следующие действия:
В вашей собственной среде хостинга разместите HTML-страницу, на которой работает ваше локальное приложение для выполнения заказов. В следующем фрагменте показан пример статического HTML-файла, в котором запускается ваше локальное приложение для выполнения заказов.
<html>
<head>
<!-- Local Home SDK -->
<script src="//www.gstatic.com/eureka/smarthome/smarthome_sdk.js"></script>
<!-- Local app under development -->
<script src="local_execution.js"></script>
</head>
</html>
Отладка из Chrome . Используйте точки останова и журналы для устранения неполадок в интеграции.
Измените и скомпилируйте свой код TypeScript, затем повторите эти шаги.
Повторив этот процесс сборки и тестирования, вы сможете быстро увидеть изменения в действии, что поможет вам отладить проблемы с вашим кодом.
Контроль испытательного устройства
В Google Home Developer Console вам необходимо указать URL-адрес вашего веб-приложения, которое обслуживает HTML-код, загружаемый на устройство Google Home или Google Nest во время локального выполнения.
Чтобы протестировать управление устройствами с локальным выполнением, выполните следующие действия:
Дополнительные сведения о том, какая среда выполнения используется вашим устройством, см. в разделе Поддерживаемые устройства .
Отладка из Chrome
Вы можете отладить свое локальное приложение для выполнения заказов с помощью Chrome DevTools . Прежде чем приступить к отладке, убедитесь, что ваша среда настроена правильно:
Вы установили URL-адрес разработки в консоли как URL-адрес, доступный для устройства Google Home или Google Nest (либо по локальной сети, либо через Интернет).
Ваше устройство подключено к той же локальной сети, что и тестируемое устройство Google Home или Google Nest.
Ваша сеть не блокирует пакеты между устройствами.
Вы вошли в систему с одной и той же учетной записью Google в Google Home Developer Console и на устройстве Google Home или Google Nest.
Некоторые дополнительные вещи, которые следует учитывать во время отладки, включают:
Не подключайте несколько устройств Google Home или Google Nest к своей тестовой учетной записи в одной локальной сети. Вы не сможете контролировать, какое устройство Google Home или Google Nest предназначено для локальных команд выполнения.
Обновите страницу в Chrome DevTools, чтобы перезагрузить контейнер локального приложения для выполнения последней версии кода с URL-адреса разработки. Это не сбрасывает локальную домашнюю платформу, которая может потребоваться для повторного запуска намерений платформы (например, IDENTIFY ) в вашем местном приложении выполнения. Чтобы сбросить платформу Local Home, перезагрузите устройство Google Home или Google Nest.
Убедитесь, что ваше приложение JavaScript загружается без ошибок. Для этого проверьте раздел консоли на странице DevTools. Если возникнет проблема, вы увидите такое сообщение: «Необнаруженная ошибка типа: невозможно прочитать свойство «open» со значением null».
verificationId из ответа IDENTIFY должен совпадать с одним из otherDeviceIds из ответа SYNC .
Что касается обработчика EXECUTE , убедитесь, что ваши команды HTTP, TCP или UDP могут быть получены вашим устройством и работают должным образом.
Ошибки, возникающие в вашем местном приложении выполнения, будут отображаться в журналах ошибок вашего проекта.
Подготовить и запустить в производство
Когда вы будете готовы запустить действие «Умный дом», выполните следующие действия:
Откройте терминал. В каталоге вашего проекта выполните команду npm run build . Эта команда создает следующие пакеты JavaScript для вашего приложения в каталоге dist :
На странице настройки и конфигурацииGoogle Home Developer Console прокрутите до пункта «Локальное выполнение» и включите этот параметр.
С помощью кнопок «Загрузить JavaScript» загрузите ранее созданные файлы пакета. Рисунок 3. Загрузите приложение JavaScript. Обязательно загрузите обе версии файлов пакета (Node, Web), чтобы ваше действие было настроено для правильной работы во всех средах выполнения, которые поддерживают локальное выполнение.
Загрузите свой JavaScript, ориентированный на Node.js. Загрузите файл bundle.js из каталога dist/node .
Загрузите свой JavaScript для Chrome (браузер) . Загрузите файл bundle.js из каталога dist/web .
Проверьте свое действие на устройстве с поддержкой Ассистента, чтобы убедиться, что оно ведет себя должным образом в производственной среде. Чтобы узнать больше, см. «Протестируйте и поделитесь своим умным домом. Действие» .
Когда вы будете удовлетворены тем, как работает ваше действие, отправьте его в Google для производственного развертывания, следуя инструкциям в разделе «Запуск действия умного дома» . Это включает в себя выполнение шагов самотестирования и запроса на сертификацию.