【问题标题】:DialogFlow v2 Helper intents throw Reference ErrorsDialogFlow v2 Helper 意图抛出参考错误
【发布时间】:2018-05-31 15:48:25
【问题描述】:

我正在尝试使用 Actions on Google Library(用于 DialogFlow v2)中提供的 Helper Intent,但到目前为止没有任何运气。代码编译得非常好,但在执行时(在移动设备和模拟器上),调用会引发引用错误。我已经搜索了互联网地球,但到目前为止还没有运气。有什么建议吗?

我的代码(基于 https://developers.google.com/actions/assistant/helpers#confirmation 并且几乎相同)

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

...

app.intent('program', conv => {
   if (somestatement) { 
     const parameters =  somedata;
     conv.contexts.set(contextVariable, 1, parameters);
     return conv.ask(new Confirmation('prompt!')); 
   }
});

抛出的错误:

ReferenceError: Confirmation is not defined
    at app.intent.conv (/user_code/index.js:161:25)
    at Function.<anonymous> (/user_code/node_modules/actions-on-google/dist/service/dialogflow/dialogflow.js:146:23)
    at next (native)
    at /user_code/node_modules/actions-on-google/dist/service/dialogflow/dialogflow.js:22:71
    at __awaiter (/user_code/node_modules/actions-on-google/dist/service/dialogflow/dialogflow.js:18:12)
    at Function.handler (/user_code/node_modules/actions-on-google/dist/service/dialogflow/dialogflow.js:84:16)
    at Object.<anonymous> (/user_code/node_modules/actions-on-google/dist/assistant.js:55:32)
    at next (native)
    at /user_code/node_modules/actions-on-google/dist/assistant.js:22:71
    at __awaiter (/user_code/node_modules/actions-on-google/dist/assistant.js:18:12)

我也在使用最新的 actions-on-google 依赖项:

"dependencies": {
     "actions-on-google": "^2.1.2",
     "firebase-admin": "^5.12.1",
     "firebase-functions": "^1.0.3",
     "sprintf-js": "^1.1.1"
}

我什至将新的 Confirmation() 助手更改为任何其他助手,但没有运气。在 DialogFlow 方面,我有上面相同文档链接所要求的意图。

非常感谢任何帮助!

【问题讨论】:

    标签: node.js actions-on-google dialogflow-es


    【解决方案1】:

    您需要加载 Confirmation 对象,因此将您的第一行替换为类似这样的内容应该可以:

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

    【讨论】:

    • 该死的。工作!我一直在寻找如何使用它的文档,但是我忽略了它吗?你知道在哪里寻找参考资料吗?这里的指南上没有说developers.google.com/actions/assistant/helpers#confirmation
    • 相信我 - 你没有忽略它。
    • 所以,再次打扰您。我已经耕耘了好几个小时才收到这个确认的结果。正如文件所示,我已经制作了一个 Dialogflow Intent,它应该将结果返回给我的完整内容。但是我既不能用 Intent 名称捕捉响应,也不能用 Confirmation 事件名称的任何变体捕捉到响应。它不断导致无意图的响应。有什么想法吗?
    • 几个,但最好的办法是创建一个关于 SO 的新问题,并尽可能多地发布信息,包括您认为应该获得的意图的屏幕截图结果,您如何处理它,以及屏幕截图或任何 JSON 日志。如果您知道从 webhook 发回的内容,包括这将有所帮助。
    猜你喜欢
    • 2020-06-04
    • 2012-06-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-10-24
    相关资源
    最近更新 更多