【问题标题】:Exception when intergrating DialogflowConversation with Fulfillment SDK将 DialogflowConversation 与 Fulfillment SDK 集成时出现异常
【发布时间】:2018-12-20 07:36:10
【问题描述】:

我正在使用 Node.js Fulfillment SDK (https://github.com/dialogflow/dialogflow-fulfillment-nodejs),我想集成 de DialogflowConversation 以便访问用户存储。

我正在尝试使用这个简单的代码:

let conv = agent.conv();
conv.ask("HEY");
agent.add(conv);

但服务器因此异常而失败:

Error: No responses defined for platform: ACTIONS_ON_GOOGLE
    at V2Agent.sendResponses_ (/srv/node_modules/dialogflow-fulfillment/src/v2-agent.js:243:13)
    at WebhookClient.send_ (/srv/node_modules/dialogflow-fulfillment/src/dialogflow-fulfillment.js:505:17)
    at promise.then (/srv/node_modules/dialogflow-fulfillment/src/dialogflow-fulfillment.js:316:38)
    at <anonymous>
    at process._tickDomainCallback (internal/process/next_tick.js:228:7)

我目前正在使用这个库:

"dependencies": {
    "firebase-admin": "^5.13.1",
    "firebase-functions": "^2.0.2",
    "dialogflow-fulfillment": "^0.6.1",
    "actions-on-google": "^2.5.0",
    "i18n": "^0.8.3"
  }

我做错了什么?

谢谢

【问题讨论】:

  • 您能否发布您的整个意图处理程序,以便我们查看返回的内容?

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


【解决方案1】:

我猜this 是您正在做的事情,导致所述错误。尝试仅使用 actions-on-google。

这应该可以解决您的错误:

agent.add("HEY");

要访问 user storage,请使用如下所示的 actions-on-google 库:

'use strict';
const {
  dialogflow,
} = require('actions-on-google'); // Import the firebase-functions package for deployment.
const functions = require('firebase-functions'); // Instantiate the Dialogflow client.
const app = dialogflow({
  debug: true
});

app.intent('WELCOME', (conv) => {

  conv.data.count = 1;
  conv.ask('Hi there, what can I help you with today?');

});

【讨论】:

  • 最后我决定迁移到 Google SDK 上的 Actions,现在一切正常。谢谢
【解决方案2】:

在 dialogflow-fulfillment-nodejs github 存储库中检查类似的问题 #151#160。它似乎正在解决您的问题。或许您可以插话并提供见解或暂时使用可能已解决您的问题的分支:https://github.com/dialogflow/dialogflow-fulfillment-nodejs/commit/c5f1555e05d4abbc20dd9b39f6edf88249fe4aa1(在PR #179 中提及)

npm install --save dialogflow/dialogflow-fulfillment-nodejs#c5f155

如果您只打算将 Google 助理作为集成来支持,最好使用 actions-on-google SDK。它对响应和交互有更丰富的支持。

【讨论】:

  • 这些问题是关于跟进意图的,这不是我的情况。无论如何,我决定迁移到 Google SDK 上的 Actions,现在一切正常。谢谢
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-01-27
  • 2017-03-26
  • 1970-01-01
  • 2012-10-09
相关资源
最近更新 更多