Главная страница Google "Не удалось обновить настройки. Проверьте подключение." - PullRequest
0 голосов
/ 07 декабря 2018

Таким образом, об этом типе ошибок сообщалось на многих форумах сообщества в течение прошлого года, и мы не смогли найти приемлемого ответа.Мы только начали нашу интеграцию с Google Home и создали действие Home Automation Action, и мы получаем аналогичную ошибку…

{
 insertId:  "10wvnj2fyb1thy"  
 logName:  "projects/bitdog-home-f69bd/logs/actions.googleapis.com%2Factions"
Show matching entries
Hide matching entries
Add field to summary line

 receiveTimestamp:  "2018-12-06T13:28:13.939975519Z"  
 resource: {
  labels: {
   action_id:  "SMART_HOME_SYNC"    
   project_id:  "bitdog-home-f69bd"    
   version_id:  ""    
  }
  type:  "assistant_action"   
 }
 severity:  "ERROR"  
 textPayload:  "SYNC: Request ID 742344561631232315 failed with code: OPEN_AUTH_FAILURE"  
 timestamp:  "2018-12-06T13:28:13.931998358Z"  
}

Это отображается в приложении Google Home как «Не удалось обновить настройки, проверьте вашconnection "

Журналы службы OAuth показывают успешное связывание учетной записи и успешный запрос refresh_token.Google не пытается вызвать SYNC-обработчик Action из того, что мы можем сказать.

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

Мы также пытались использовать приложение Google Home на Android и iOS.Мы попытались изменить браузер по умолчанию с Chrome на Firefox.Ничто не изменило результат.Мы также убедились, что наш access_token был в формате JWT, чтобы увидеть, чувствителен ли Google к размеру или формату токена и ничего не работает.Мы даже убедились, что пользователь приложения Google Home соответствует пользователю, вошедшему в браузер.

Справка!

Ответы [ 2 ]

0 голосов
/ 07 марта 2019

Всем, у кого возникла эта проблема -

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

  1. Согласно поддержке Google:

    Измените реализацию привязки своего аккаунта с неявного на поток кода проверки подлинности, затем выполните тест снова.

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

Я использую Действия в библиотеке Google Node.js .Просматривая документацию , я обнаружил, что:

[Выполнение запроса SYNC] должно возвращать действительный ответ или Обещание, которое разрешается в действительный ответ.

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


Надеюсь, это поможет всем, кто застрял в этой повторяющейся проблеме! По сути, проверьте ваш поток аутентификации и убедитесь, что SYNC своевременно возвращает действительный объект JS.

0 голосов
/ 09 декабря 2018

Я все заработал.Он уже работал с навыком Amazon Echo, но кажется, что реализация Google (OpenAuth) немного более строгая.Я изменил свой access_token с проприетарного зашифрованного формата токена на законный подписанный токен JWT.Я также удалил expires_in из ответа, и он начал работать, не уверенный, был ли это формат токена access_token JWT или удаление expires_in.Я счастлив, что могу двигаться дальше.Если у меня будет шанс, я проверю, какие изменения сделали его работающим, и прокомментирую снова.

Спасибо.

...