Как легко настроить Oauth для навыка Amazon Alexa Connected Home?

Я пытаюсь создать прототип навыка Alexa Connected Home, и одним из требований является привязка учетной записи пользователя с использованием Oauth 2.0. Поскольку я просто создаю прототип и у меня нет запущенного и работающего сервера Oauth, какой самый простой способ удовлетворить требования Amazon Oauth?

Я пытался следовать инструкциям на странице Советы по использованию входа с Amazon в Alexa Connected Home CoHo Skills, но это не помогло с неинформативным сообщением об ошибке, что бы я ни пытался.

  • Кто-нибудь получил вход в Amazon для работы с Alexa Connected Home?
  • Есть ли простой в использовании провайдер Oauth, который я мог бы использовать?

person Alex Q    schedule 29.05.2016    source источник


Ответы (1)


tl;dr

Войти с помощью консоли Amazon:

Allowed Origins: https://amazon.com
Allowed Return URLs: <copied from "Redirect URL" in the Alexa Developer Console>

Консоль разработчика Alexa:

Authorization URL: https://www.amazon.com/ap/oa
Access Token URI: https://api.amazon.com/auth/o2/token
Scope: profile:user_id
Client Id: <copied from "Client Id" in the Login With Amazon Console. eg. amzn1.application-oa2-client.xxxxxxxxxxx >
Client Secret: <copied from "Client Secret" in the Login With Amazon Console.>

Я смог использовать Login with Amazon в качестве провайдера Oauth. Я следил за документацией в Войдите с помощью Руководства веб-разработчика Amazon и найдите конфигурацию, которую мне не хватало.

Чтобы заставить Login With Amazon работать, я сделал следующее:

  • Откройте консоль разработчика Amazon Alexa и перейдите на вкладку конфигурации вашего навыка (страница с информацией о привязке учетных записей.

  • Задайте для URL авторизации значение https://www.amazon.com/ap/oa.

  • Установите для параметра Область значение profile:user_id.

  • Задайте для URI токена доступа значение https://api.amazon.com/auth/o2/token.

  • скопируйте URL-адрес перенаправления с этой страницы для входа в конфигурацию Amazon (пример URL-адреса перенаправления: https://pitangui.amazon.com/api/skill/link/xxxxxxxxx).

  • Выполните шаги 1, 2 и большинство из 3 из Советы по использованию входа с Amazon в Alexa Connected Home CoHo Skills для «Использования входа с Amazon в качестве поставщика OAuth».

Шаг 1. Создайте новый профиль безопасности

Чтобы создать новый профиль безопасности при входе в Amazon, перейдите в консоль разработчика и перейдите к пункту «Войти в Amazon», нажав «Приложения и службы». Перейдя на страницу входа в консоль разработчика Amazon, нажмите кнопку «Создать новый профиль безопасности».

https://cdn.amazonblogs.com/developer_blog/images/lwa5.png

Заполните необходимую информацию и нажмите Сохранить.

https://cdn.amazonblogs.com/developer_blog/images/lwa6.png

Шаг 2. Получите учетные данные OAuth

Ваш недавно созданный профиль безопасности теперь будет доступен в списке входа с помощью конфигураций Amazon.

https://cdn.amazonblogs.com/developer_blog/images/lwa7.png

Вы получите идентификатор клиента и секрет клиента. Включите эту информацию при отправке адаптера навыков для подготовки к тестированию.

https://cdn.amazonblogs.com/developer_blog/images/lwa8.png

Щелкните Показать.

Шаг 3. Внесите в белый список навыки Alexa Connected Home

Затем нам нужно внести в белый список конечные точки навыка Alexa Connected Home в вашем профиле безопасности «Вход с Amazon». Сначала войдите в веб-настройки вашего профиля безопасности:

https://cdn.amazonblogs.com/developer_blog/images/lwa9.png Затем нажмите "Изменить" на странице и введите следующие данные:

  • Именно тогда я перестал следовать инструкциям из этого сообщения в блоге. Теперь я установил Разрешенные источники и Разрешенные URL возврата. Разрешенные источники должны быть https://amazon.com, а Разрешенные URL-адреса возврата должны быть URL-адресами перенаправления, скопированными со страницы привязки учетной записи из консоли разработчика Alexa.

  • Скопируйте Идентификатор клиента и Секрет клиента из консоли входа в систему Amazon и вставьте их в поля Идентификатор клиента и Секрет клиента<. /strong> поля Alexa Developer Console.

person Alex Q    schedule 30.05.2016
comment
была ли у вас проблема, что после успешного связывания и закрытия связывающих страниц кнопка «Включить навык» не изменилась, и по-прежнему появляется сообщение «Требуется привязка учетной записи»? Устройства не найдены после обнаружения - person rightaway717; 19.07.2016
comment
Да, я получил много бесполезных сообщений об ошибках при настройке oauth. Но как только oauth был настроен, навык Alexa заработал. - person Alex Q; 20.07.2016
comment
Мне удалось заставить его работать. На самом деле, я все еще вижу это поведение — кнопка «Включить навык» не обновляется после успешной привязки к учетной записи Amazon, пока я не щелкну другую вкладку в приложении и не вернусь обратно. Это может быть ошибка приложения. Обнаружение устройства было еще одной проблемой. Все было правильно, мне просто нужно было воссоздать лямбда-функцию, чтобы она заработала. Все это мне кажется довольно глючным. - person rightaway717; 20.07.2016
comment
Отлично, сработало. Документы для этого совсем не интуитивны, IMO, так что большое спасибо. Вы обязательно должны отметить свой ответ как принятый. - person jotadepicas; 21.11.2016
comment
Привет, Алекс, я настроил навык таким же образом, но при привязке учетной записи я получил следующую ошибку. Пожалуйста, помогите мне [Настройка навыков]: i.stack.imgur.com/L4kuB.png [Привязка аккаунта]] : i.stack.imgur.com/JLVUo.png [Ошибка Alexa]: i.stack.imgur.com/84clt.png - person Chandan Prakash Sharma; 01.11.2017