是否可以根据隐含的调用意图触发帐户链接? (不是第一个触发的意图的人。)
使用上述设置将代理发布到Google上的操作时,如果我触发了选定的意图,我不会收到链接我的帐户的请求。 如果我将要求的登录更改为默认的欢迎意图,那么我会收到请求。
帐户是否链接了除主要意图以外的其他意图或 我需要为此进行具体更改吗?
谢谢!
答案 0 :(得分:0)
是的,这是可能的,这就是大多数应用程序所做的事情,它显示欢迎消息并进行简单的对话,而无需链接帐户,并且当用户要使用服务时才请求链接。
您需要照常设置帐户链接,请查看此doc。
答案 1 :(得分:0)
我们通过使用注册intenthandler中的google上的操作实施自己的登录来解决此问题。像这样:
CheckAccountLinking: async function(conv, input) {
if (!hasAccountLinked(conv)) {
conv.ask(new actionsOnGoogle.SignIn());
return;
}
conv.ask(`Continue message`);
}
const hasAccountLinked = function(conv)
{
console.log(`checking if account is linked`);
console.log("Payload user:", conv.body.originalDetectIntentRequest.payload.user);
const isLinked = conv.body.originalDetectIntentRequest.payload.user !== undefined && conv.body.originalDetectIntentRequest.payload.user.accessToken !== undefined;
console.log("Has account linked", isLinked);
return isLinked;
}