gpt4 book ai didi

node.js - 为什么名称权限不起作用?

转载 作者:太空宇宙 更新时间:2023-11-03 23:18:23 24 4
gpt4 key购买 nike

我尝试在 Google Assistant 中授予权限,但模拟器在询问姓名时仅要求“重复答案”。这是权限代码。

app.intent('Default Welcome Intent', (conv) => {
conv.ask(new Permission({
context: 'Hi there, to get to know you better',
permissions: 'NAME'
}));
});

通过 Firebase 部署代码时,不会引发任何错误。

提前致谢。

最佳答案

在您的代理中,默认欢迎意图是请求NAME权限的意图。您将必须实现另一个意图来处理此权限。我们称之为 user_info 意图。

因此,当 Actions On Google 提出问题并且用户回答"is"或“否”(同意或拒绝)时;然后,Actions On Google 将向 DialogFlow 发送一个名为“actions_intent_PERMISSION”的事件。我们将使用该事件来触发这个特定的意图。一旦意图被触发,我们将确保将“user_info”操作发送到我们的应用程序。

enter image description here

在应用程序中,我们将注册“user_info”操作,并确保检查用户是否授予或拒绝了权限。为此,我们调用 isPermissionGranted 辅助方法。

app.intent('user_info', (conv, params, permissionGranted) => {

if (!permissionGranted) {
throw new Error('Permission not granted');
}

const {requestedPermission} = conv.data;

if (requestedPermission === 'NAME') {
conv.user.storage.name = conv.user.name.display;
return conv.close(responses.sayName(conv.user.storage.name));
}

throw new Error('Unrecognized permission');

});

关于node.js - 为什么名称权限不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52581224/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com