问题标签 [dialogflow-es-fulfillment]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
219 浏览

firebase - Dialogflow firebase 实现在本地反应应用程序中不起作用

我正在尝试在本地应用程序中设置聊天机器人(使用 react 开发的本地应用程序,请在参考链接上找到更多详细信息)。在我所做的步骤下面。

  1. 在开发人员帐户中创建了对话流代理和一些意图。
  2. 使用 Dialogflow webhook 内联编辑器启用并部署在 firebase 中。

在在线对话流控制台中对此进行测试时,它在正确的履行响应下工作正常。

但是,在本地应用程序中尝试执行相同的意图查询时,它不起作用。

我不确定是否不允许从对话流控制台外部自由地使用 firebase 或 dialogflow 实现服务。还是我错过了什么?

请指导我在本地进行测试。

此外,对于在我们的服务器中开发和托管履行,我是否有任何限制和指导方针。

参考 https://pusher.com/tutorials/weather-chatbot-react-dialogflow

0 投票
1 回答
228 浏览

node.js - 集成 Skype 和 facebook Messenger 没有用fulfillmenttext 响应

除了谷歌助手应用程序之外,我所有的集成都使用静态默认响应而不是我在服务器上托管的自定义实现进行响应。我已经检查了从对话流到我的服务器的请求和响应 json,它们很好......当我从 Skype 发出请求时,来自我的服务器的响应确实有自定义的履行消息,但是 Skype 显示我写的 Skype 的静态响应我的意图的默认短信选项卡。请让我知道我需要做什么。谢谢

预期通过(Skype)进行的对话用户:一些英语单词代理(来自 Fulfillment):英语,这是针对英语的响应

我得到的实际对话:用户:英语代理中的一些单词(来自对话流静态文本响应):你好..我是来自Skype的默认响应

请注意,这只发生在 facebook messenger、skype(这些是我启用的唯一集成)中,而不是在 dialogflow 模拟器和谷歌模拟器上的操作中。

我认为这个问题来自对话流结束,因为 facebook messenger 和 skype 产生相同的行为

0 投票
1 回答
1100 浏览

dialogflow-es-fulfillment - 无法在 Dialogflow Fulfillment 中跨意图传递数据

在 Dialogflow Fulfillment 中,我只想使用 conv.user.storage 将数据从 Welcome Intent 传递到 help Intent,如下面的代码所示。我可以将它添加到欢迎意图中,但是当我尝试在帮助意图中检索它时,它始终是未定义的,这意味着数据不会传递给帮助意图。我花了几个小时做一些我认为直截了当的事情,但没有成功。我真的很感激一个真实世界的例子,说明如何解决它并理解我做错了什么。

0 投票
1 回答
313 浏览

dialogflow-es - 无法获取 conv.data 以在 Actions on Google 中保存参数

如您所见: SaveLocation 中的控制台日志 - AskLocationPermission 它不会将location_type保存到conv.data. 虽然用户存储效果很好,但我想正确使用conv.dataconv.user.storage. 您可以在对话示例中看到参数已完成,但未保存到conv.data.

它应该如何工作是当用户说他想将此位置保存为他的家或工作时,它应该调查conv.user.storage他是否完成了家或工作。如果不请求他的位置许可并添加它,否则它应该询问他是否确定要覆盖它。

存储文件:

我如何想象这个意图的对话流程

0 投票
0 回答
281 浏览

dialogflow-es - Dialogflow 返回置信度得分低于 ml 分类阈值的答案

我正在使用对话流训练一个聊天机器人,并且我将 ml 阈值分类设置为 0.7,但是当置信度分数低于分类阈值时,ai 仍然检测到误报。这是一个错误还是我误解了 ml 阈值的工作原理?

0 投票
1 回答
30 浏览

dialogflow-es - Action-on-google V1 迁移截止日期

我在我的 dialogflow nodejs 实现 webhook 中使用“Action on Google”V1 npm 包。我在弃用日期迷路了。我要在 10 月 23 日之前迁移吗?

0 投票
1 回答
679 浏览

firebase - 如何在实时 Firebase 数据库中存储 DialogFlow 的所有参数值?

我正在为 Google Home 执行操作。这是关于餐厅预订的,所以我必须从用户那里获取一些信息,例如:

  1. 您想为多少位客人预订餐桌?
  2. 哪个日期?
  3. 什么时候?

然后我必须将它存储在 Firebase 实时数据库中。对于guests参数,它将值写入数据库,但日期和时间参数未显示在数据库中。

在数据库中存储客人的时间和日期的代码是什么?

0 投票
2 回答
473 浏览

dialogflow-es - Actions on Google - 在不关闭应用的情况下关闭麦克风或解决方法建议

是否可以在不关闭应用程序的情况下关闭麦克风?

或者非常欢迎对以下解释的情况提出任何建议:

我发现一些帖子已经要求这个,但他们已经有大约一年的历史了,所以我想知道是否有新的东西。

我正在使用conv.close('some message not prompting');. 这会关闭麦克风,但也会关闭应用程序,这不是我需要的。

我需要的功能与 AOG 在显示浏览轮播时默认采用的功能相同:它会自动关闭麦克风(但不是应用程序),用户可以重新打开麦克风或点击建议芯片与您的应用程序交互直接,无需再次调用它。

有人建议我What else can I do for you?在每次回复后添加一条不提示用户输入新信息的尾巴,这样我就可以保持麦克风打开,但这听起来很不自然,我真的认为它会扼杀试图让声音听起来自然的目的机器人。

在许多情况下,您可以期望用户说些什么,即使您没有要求任何东西。一个简单的例子是讲笑话时:您可以期望用户笑、批评、要求另一个笑话或发表任何评论。在这种情况下,关闭麦克风(和应用程序)是无稽之谈,并且Do you want to hear another joke?在开玩笑之后添加尾巴听起来不太好,特别是如果您一个接一个地讲。

此处的目的不是因为我没有打开麦克风而被 AOG 审核团队拒绝。

欢迎任何想法。提前致谢。

0 投票
0 回答
765 浏览

dialogflow-es - 如何使用 python 从 webhook 修改参数的值 - Dialogflow 聊天机器人

我正在为拼图创建一个机器人。用户将看到一个谜题,然后如果他们需要提示,机器人将一次提供一个。我决定用两个意图来建模——“Supply_puzzle”和后续意图“Supply_puzzle – get_a_hint”。当用户请求拼图时,Supply_puzzle 将联系 webhook 并提供拼图。随后的提示请求将通过调用 webhook 由后续意图处理。由于多个用户可能同时玩同一个谜题,因此我们跟踪每个会话的提示索引很重要。此外,如果我添加一个参数,比如hint_index,那么每次 webhook 收到来自后续意图的请求时,webhook 都会获取最后一个 hint_index。然后 webhook 可以提供下一个提示,也可以修改参数值,以便从这个意图进行下一次调用,先前设置的值 hint_index 返回到 webhook。希望这为我的查询提供上下文。

当前代码:我目前正在使用 lifespan

寻找示例 python 代码 - 非常感谢任何帮助。更具体地说,我想将“hint_index”参数值(见下文)修改为另一个值并返回给机器人。

PS 除了后续意图,我们可以在顶层使用该意图,并且仍然可以通过设置适当的输入上下文来链接。但是,仍然需要使用参数并能够从 webhook 修改它。

0 投票
1 回答
771 浏览

dialogflow-es - 处理“取消插槽填充对话框”

我正在构建一个包含 Slot Filling 方法的机器人,并且我想在向机器人输入退出短语后从 webhook 提供丰富的消息。

我正在构建一个包含 Slot Filling 方法的机器人。我通过链接https://dialogflow.com/docs/concepts/slot-filling#canceling_slot_filling_dialog的文档中的“取消插槽填充对话框”遇到了

当我尝试它时,我发现不仅文档中提到的话语,还有更多类似的退出短语。例如:没有,中止。

我找不到任何意图/设置来配置/更改此行为。

  1. 有没有办法找出所有的退出短语?
  2. 有没有办法更改用户说出退出短语时显示的输出消息?
  3. 在用户说出退出短语以提供自定义的丰富响应后,我们可以连接 webhook 吗?

附件是我在插槽填充时对机器人说退出短语时得到的响应