Перенаправление привязки аккаунта в Действиях на симуляторе Google - PullRequest
0 голосов
/ 20 февраля 2019

Я создаю приложение, используя новое действие на Google Java API .Как я понимаю из работы со связыванием аккаунта в Alexa, начальный поток (когда userId в запросе JSON равен null ) должен перенаправить на форму входа, чтобы получить согласие пользователя:

    @ForIntent("RawText")
    public ActionResponse launchRequestHandler(ActionRequest request) {

       String userId = request.getAppRequest().getUser().getUserId();
       String queryText = request.getWebhookRequest().getQueryResult().getQueryText();

       String speech = null;

            ResponseBuilder responseBuilder = getResponseBuilder(request);

            if (isBlank(userId) || GREETING.equalsIgnoreCase(queryText)) {

                speech = "I've sent a link to your Google Assistant app that will get you started and set up in just several simple steps.";

                responseBuilder.add(
                    new SignIn()
                        .setContext(speech));
                //...
                return responseBuilder.build();

Однако при тестировании в симуляторе AoG перенаправление не выполняется.Я вижу следующую ошибку:

enter image description here

Настройка привязки моей учетной записи:

enter image description here

, где URL-адрес авторизации перенаправляется в локальную службу фиктивной аутентификации, которая должна отображать форму входа.Он доступен (как через localhost, так и через туннель ssh, предоставляемый в этом случае обратным прокси serveo.net).Почему Google не перенаправляет меня туда?

Может кто-нибудь подсказать мне, как выполнить это первоначальное рукопожатие в потоке ссылок аккаунта и где я могу увидеть форму, которую представляет собой намерение входа, отправленное из веб-хукадолжен сработать?

Я бы предпочел не использовать свой телефон, поскольку, как представляется, предлагается сообщение об ошибке, поскольку учетная запись, под которой я тестирую в симуляторе AoG, отличается от моего идентификатора пользователя на телефоне.

Что подразумевается под использованием Simulator as a Speaker?Чего не хватает в моей настройке?

Есть ли другое приложение Google, которое лучше имитирует физическое устройство, аналогично симулятору Алексы ?

1 Ответ

0 голосов
/ 20 февраля 2019

Как правило, вы можете смоделировать привязку учетной записи, выбрав вкладку «Отладка», там вы найдете URL-адрес, скопируйте его на другую вкладку и сможете связать свою учетную запись.Как только связь будет установлена, перейдите в симулятор и введите «отмена» или «остановка», а затем «Поговорите с речевым банком».

!Не нажимайте «Сбросить» или «Изменить версию», или вам нужно заново связать ваше приложение

Но недавно Google удалил этот URL-адрес со вкладки отладки, и я нигде не могу его найти ...

Simulator as a Speaker, для раскрывающегося меню Поверхность установлено значение Телефон, вам необходимо выбрать Динамик ,

, но при попытке этого вы получите эту ошибку ...

Invocation Error
You cannot use standard Google Assistant features in the Simulator. If you want to try them, use Google Assistant on your phone or other compatible devices. 

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

ОБНОВЛЕНИЕ 2019-03-05:

Google добавил привязку аккаунта в симуляторе, который теперь легче тестировать.enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...