Перенаправление привязки аккаунта в Действиях на симуляторе Google
Я создаю приложение с использованием нового Action на 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 Simulator перенаправление не выполняется. Я вижу следующую ошибку:
Настройка привязки моей учетной записи:
где URL авторизации перенаправляет на локальную службу аутентификации, которая должна отображать форму входа. Это доступно (как через localhost
и через туннель ssh, предоставленный serveo.net
обратный прокси в этом случае). Почему Google не перенаправляет меня туда?
Может, кто-нибудь подскажет мне, как выполнить это первоначальное рукопожатие в потоке связывания аккаунтов и где я могу увидеть форму, которую должен вызвать намерение входа, отправленное из веб-хука?
Я бы предпочел не использовать свой телефон, как кажется из сообщения об ошибке, поскольку учетная запись, под которой я тестирую в симуляторе AoG, отличается от моего идентификатора пользователя на телефоне.
Что подразумевается под использованием Simulator as a Speaker
? Чего не хватает в моей настройке?
Есть ли другое приложение Google, которое лучше имитирует физическое устройство, похожее на симулятор Alexa?
1 ответ
Обычно вы можете смоделировать привязку учетной записи, выбрав вкладку "Отладка", там вы найдете URL, скопируйте и вставьте его на другую вкладку, и вы можете связать свою учетную запись. Как только связь будет установлена, перейдите в симулятор и введите "отмена" или "стоп", а затем "Поговорите с речевым банком".
! Не нажимайте "Сбросить" или "Изменить версию", иначе вам придется заново связать приложение
Но недавно Google удалил этот URL из вкладки отладки, и я нигде не могу его найти...
Simulator as a Speaker
, Поверхность Dropdown установлена на Телефон, вам нужно выбрать Динамик,
но когда вы попробуете это, вы получите эту ошибку...
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.
Поэтому на данный момент вы не можете протестировать действие, которое требует привязки аккаунта, с помощью симулятора. Вы можете сделать это со своим смартфоном...