Устройства, созданные с помощью примера smart-home-java, всегда в автономном режиме

Я создал несколько устройств с помощью https://github.com/actions-on-google/smart-home-java пример проекта. Я также успешно связал свою учетную запись и вижу эти устройства в моем приложении Google Home. Я также могу нажать кнопку «Вкл.» Или «Выкл.» Рядом с устройством «Лампа», и я вижу изменение значения в Firestore.

Однако, когда я нажимаю на устройство, вверху отображается надпись «Не отвечает», а в середине экрана - «Не в сети». Я не вижу ошибок в логах сервера smart-home-java.

Кто-нибудь еще испытывал нечто подобное? Как мне подойти к отладке этого?


person dvim    schedule 16.08.2020    source источник
comment
Есть ли в Firestore состояние online?   -  person Nick Felker    schedule 17.08.2020
comment
Если есть какие-либо ошибки в запросах намерений из вашего проекта, они будут присутствовать в проекте журналы ошибок. Одна догадка, которую нужно проверить, - убедиться, что ключ вашей служебной учетной записи настроен правильно. Отсутствие отчета о состоянии может привести к сбою QUERY намерения.   -  person devunwired    schedule 20.08.2020
comment
Есть состояние online и установлено в true. В журналах smart-home-java ошибок нет. Запросы от Google Assistant обрабатываются с 200 кодами статуса. Однако в ресурсе журнала Google Assistant Action Project я вижу в журнале выполнения следующее: {action: {actionType: "STATE_QUERY"}, device: {deviceType: "SWITCH"}, status: {isSuccess: false, statusType: "DEVICE_OFFLINE"}. Поэтому по какой-то причине он считает, что запрос запроса не был успешным.   -  person dvim    schedule 21.08.2020


Ответы (1)


Как вкратце упоминалось в комментариях, это, вероятно, связано с тем, что ваш проект не может успешно вызвать Сообщить о состоянии. Наиболее вероятной причиной этого является то, что ваши учетные данные API Home Graph отсутствуют или неверны.

В текущий пример кода, ошибка в вызове этого метода приведет к тому, что обработчик вернет deviceOffline из QUERY. Вы также можете закомментировать или удалить эту строку, чтобы отладить проблему.

person devunwired    schedule 21.08.2020
comment
Спасибо за указатель! Это позволило мне копать еще больше, и я обнаружил, что при загрузке учетных данных в качестве ресурса возникла проблема на пути. Я создал PR с исправлением: github.com/actions- on-google / smart-home-java / pull / 20 - person dvim; 22.08.2020
comment
С исправлением, описанным выше, устройство в Google Home на короткое время будет отображаться как «В сети», но сразу же перейдет в автономный режим. Требовалось еще одно исправление, после которого все работает должным образом. PR для второго исправления: github.com/actions-on- google / smart-home-java / pull / 21 - person dvim; 22.08.2020