2017-01-05 7 views
3

Я разрабатываю интеграцию учетных записей для интеграции «Действия в Google» с API.AI для использования с Google Домой. Когда я проверить это средство в тренажере (https://developers.google.com/actions/tools/web-simulator)redirect_uri_mismatch при подключении учетной записи OAuth2 от Google Home Simulator

Как и следовало ожидать, это мой ответ:

{ 
    "response": "It looks like your conference manager account is not linked yet. You can link conference manager to your Google Account from the Google Home app.", 
    "audioResponse": "//NExAARC..."content_copy, 
    "debugInfo": { 
     "sharedDebugInfo": [ 
      { 
       "name": "Account Linking Url", 
       "debugInfo": "https://assistant.google.com/services/auth/handoffs/auth/start?provider={project-id}_dev&return_url=https://www.google.com/" 
      } 
     ] 
    } 
} 

Однако, когда я по ссылке

res.debugInfo.sharedDebugInfo[0].debugInfo 

, я получаю стандартный redirect_uri_mismatch страница с ошибкой, с деталями:

редиректа URI в запросе, https://oauth-redirect.googleusercontent.com/r/моего-проект-идентификатор, не совпадает с тем, санкционированными для клиента OAuth. Посетите https://console.developers.google.com/apis/credentials/oauthclient/my-client-id? Project = my-client-id для обновления разрешенных URI редиректа.

Это, конечно, невозможно, чтобы добавить домен в googleusercontent к редиректам, и это не редирект я указал в моем API.AI действия на Google ИНТЕГРАЦИЮ.

На API.AI стороне моей URL аутентификации является стандартом Google один: https://accounts.google.com/o/oauth2/v2/auth

и мой маркер URL является: https://myendpoint.com/google-home-token-endpoint с Скоупсом заполняется в calendar

На гугле Консоль разработчика, у меня есть токен, установленный так же, как и в API.AI, а id id проекта - тот же, что и ссылка в запросах.

Это известная проблема? Я могу попытаться предпринять дополнительные усилия по отладке?

+0

В настоящий момент вы можете использовать OAuth только с действиями для API, которыми вы владеете. –

+0

@ LeonNicholls Я думаю, что понимаю ... что мы не можем связать учетную запись пользователя Google для интеграции «Действия в Google» с API.AI на данный момент? –

+0

Да, это правильно. –

ответ

0

См. Комментарий Леона к моему первоначальному вопросу.

В настоящее время невозможно связать учетную запись с действиями для API, которыми вы не являетесь.

1

Леон, можете ли вы расширить свой ответ немного больше? что это значит для разработчиков Actions? как разработчик действий google, можем ли мы вообще связать учетные записи?

+0

https://developers.google.com/actions/develop/identity/account-linking – user1365063

1

Я тоже не понимаю, почему вы не можете использовать ссылку для действий в Google с помощью Google.

Однако, я сделал эту работу, используя Вход с Amazon, вот как:

  1. В api.ai выберите интеграции -> действия на Google.
  2. Выберите имя призывание создать проект в google developers console
  3. Введите соответствующий Google идентификатор проекта
  4. Пикап ваш приветствовать намерение
  5. Перейти к the amazon developers console under login with amazon
  6. При разрешенных происхождения, положить https://accounts.google.com/
  7. Под Разрешенные URL-Возвращаемые , введите https://oauth-redirect.googleusercontent.com/r/my-project-id (с ваш идентификатор проекта google за каждый)
  8. В раскрывающемся списке Действия в Google введите идентификатор клиента и секрет клиента, созданный на консоли разработчика Amazon.
  9. Установить тип гранта = неявное
  10. Set URL авторизации = https://www.amazon.com/ap/oa

  11. набор Прицелы = профиль

  12. Авторизоваться и предварительный просмотр, и по-прежнему, как описано в вопросе с наклеивать в связи с res.debugInfo .sharedDebugInfo [0] .debugInfo для сеанса браузера. Он будет успешно связываться со связанной учетной записью Amazon.

Вопрос в том, почему я могу использовать Amazon в качестве поставщика удостоверений с OAuth2, используя федерацию веб-идентификации, но не Google при настройке связи аккаунта с действиями в Google?

Смежные вопросы