DialogFlow实现会抛出“未为设备定义任何响应”

时间:2019-06-14 10:13:47

标签: dialogflow

我正在使用dialogflow-fulfillment npm软件包,其中包括:

"dialogflow-fulfillment": "github:dialogflow/dialogflow-fulfillment-nodejs"

我必须这样做,因为Google似乎无法设法将0.6.2版本上传到NPM。 (据称可以解决此错误,但不能)。

显然,DialogFlow似乎无法意识到它已经在控制台中定义了“响应”。当我致电agent.setContext()agent.context.set()而未通过agent.add()添加响应时,出现了实现错误:

  

未为设备定义任何响应:[SOME DEVICE]

即使我定义了静态响应。 agent.setFollowupEvent()也是如此,但是我只能在其中添加一个空的响应agent.add(' '),因为它无论如何都不会执行。但是,当我使用.setContext()进行操作时,空的Response会中继给用户,而不是静态的Response。

agent.setFollowupEvent()的问题似乎在0.6.2中已解决,但我没有进行广泛的测试。

1 个答案:

答案 0 :(得分:0)

在反复迷失方向之后,我不得不再次简单地添加控制台中定义的所有Responses。我通过遍历consoleMessages并添加它们来做到这一点。

for (let response of agent.consoleMessages) agent.add(response);

这似乎适用于所有Intent,尽管可能需要进一步测试。