Actions on google 登录未定义google操作

Actions on google 登录未定义google操作,actions-on-google,Actions On Google,我正在尝试使用以下指南请求用户登录详细信息: ] 我正在google library上使用node js操作,并复制了该指南,因此我有以下fufilliment代码: const app = dialogflow({debug: true, clientId:'*.apps.googleusercontent.com'}); var firebase = require('firebase'); const {dialogflow} = require('actions-on-google');

我正在尝试使用以下指南请求用户登录详细信息:

]

我正在google library上使用node js操作,并复制了该指南,因此我有以下fufilliment代码:

const app = dialogflow({debug: true, clientId:'*.apps.googleusercontent.com'});
var firebase = require('firebase');
const {dialogflow} = require('actions-on-google');
const functions = require('firebase-functions');

app.intent('Default Welcome Intent',(conv) =>{
conv.ask(new SignIn('To get your account details'));
});

app.intent('Get Signin', (conv, signin) => {
  if (signin.status === 'OK') {
    const payload = conv.user.profile.payload
    conv.ask(`I got your account details, ${payload.name}. What do you want to do next?`)
  } else {
    conv.ask(`I won't be able to save your data, but what do you want to do next?`)
  }
});
当我在模拟器中播放动作时,它会说“必须设置最终响应”。我在firebase函数中检查了日志,发现以下错误:

ReferenceError: SignIn is not defined
    at app.intent (/srv/index.js:167:15)
    at Function.<anonymous> (/srv/node_modules/actions-on-google/dist/service/dialogflow/dialogflow.js:149:23)
    at Generator.next (<anonymous>)
    at /srv/node_modules/actions-on-google/dist/service/dialogflow/dialogflow.js:22:71
    at new Promise (<anonymous>)
    at __awaiter (/srv/node_modules/actions-on-google/dist/service/dialogflow/dialogflow.js:18:12)
    at Function.handler (/srv/node_modules/actions-on-google/dist/service/dialogflow/dialogflow.js:84:16)
    at Object.<anonymous> (/srv/node_modules/actions-on-google/dist/assistant.js:55:32)
    at Generator.next (<anonymous>)
    at /srv/node_modules/actions-on-google/dist/assistant.js:22:71
ReferenceError:未定义登录
在app.intent(/srv/index.js:167:15)
在功能上。(/srv/node_modules/actions on google/dist/service/dialogflow/dialogflow.js:149:23)
在Generator.next()处
在/srv/node_modules/actions on google/dist/service/dialogflow/dialogflow.js:22:71
在新的承诺()
在等待者(/srv/node_modules/actions on google/dist/service/dialogflow/dialogflow.js:18:12)
位于Function.handler(/srv/node_modules/actions on google/dist/service/dialogflow/dialogflow.js:84:16)
反对。(/srv/node_modules/actions on google/dist/assistant.js:55:32)
在Generator.next()处
google/dist/assistant.js:22:71上的at/srv/node_modules/actions

您需要从google library上的操作导入
登录
对象,方法与导入
对话框流
方法相同。你可以用它来做这个

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

在您使用这些物品之前找到。

非常感谢!然而,我已经意识到,这种登录方法只适用于具有actions.capability.SCREEN\u输出表面能力的设备。这是一个问题,因为我希望能够使用没有屏幕的google home执行此功能。有什么办法可以解决这个问题吗?如果这个答案有帮助的话,我们会感谢你的支持和/或接受它。听起来你在问一个不同的问题,最好用一个新的问题来处理。