在帐户链接期间获取SignIn.status的未定义值

问题描述 投票:0回答:1

我正在使用“帐户关联”并在Google的“关联”类型中设置google登录。

我创建了两个意图,一个意图将调用google登录功能,第二个意图将从google帐户读取数据。例如。电子邮件ID,名称。

意图1,我已为此意图启用了webhook调用。

Intent 2,我将Event设置为actions_intent_SIGN_IN并为此意图启用了webhook调用。

尽管我的内联编辑器中的这些函数(Intents结果)已成功执行,但我仍获得SignIn.status的未定义值,下面给出了代码,请提供帮助。


'use strict';
const {dialogflow, SignIn} = require('actions-on-google');

const app = dialogflow({  
  clientId: "174911074867-tuffsr7ec28vg7brppr0ntkjutthfq8n.apps.googleusercontent.com",
}); 
const functions = require('firebase-functions');
const {WebhookClient} = require('dialogflow-fulfillment');
const {Card, Suggestion} = require('dialogflow-fulfillment');

process.env.DEBUG = 'dialogflow:debug'; // enables lib debugging statements

exports.dialogflowFirebaseFulfillment = functions.https.onRequest((request, response) => {
const agent = new WebhookClient({ request, response });

function accountlinking(agent) {      
  var signin=new SignIn('To get your account details'); 
}  
function testsignData(agent) {    
   console.log("status :"+SignIn.status); 
} 
  let intentMap = new Map();  
  intentMap.set('Intent1', accountlinking);  
  intentMap.set('Intent2', testsignData);  

  agent.handleRequest(intentMap); 
});

1)。在我进行Action通话时,它要求先关联Google帐户,而在关联过程完成后,它才继续前进。但是我需要开始行动,进行一些交谈,然后在需要时才请求链接。我需要通过我的意图打电话。怎么做?

2)。虽然我的这些函数(Intents结果)已成功执行,但我仍在获取SignIn的未定义值。

我正在使用“帐户关联”,并在Google的“关联”类型中设置google登录。我创建了两个Intent,一个Intent将调用google Sign-In功能,第二个Intent将读取......>

actions-on-google google-assistant-sdk
1个回答
0
投票

您的testSigninData()函数正在调用Signin.status,但是此函数中没有名为SignIn的任何变量,因此这是未定义的原因。尝试更改您的函数,使其接受登录期间给出的转换,参数和登录对象。

如果您查看帐户链接documentation,可以看到在帐户链接过程中提供了哪些参数。

© www.soinside.com 2019 - 2024. All rights reserved.