问题标签 [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 回答
147 浏览

dialogflow-es - 我不明白为什么 BasicCard 丰富的响应没有显示在对话流测试模拟器中使用 webhook 实现

使用事件时会出现此问题。比如说,在特定事件“A”发生后,调用意图“X”。'X' 具有实现 webhook,它尝试呈现 SimpleResponse 响应和 BasicCard 响应。但是,在模拟器中,只能看到 SimpleResponse 而看不到 BasicCard。模拟器中也没有报告错误。以下是 JSON 响应:

现在令人惊讶的是,当另一个意图“Y​​”被其中一个语句调用时,相同的 JSON 响应会同时呈现 SimpleResponse 和 BasicCard 响应。'Y' 也与 webhook 实现相关联。有什么理由吗?

0 投票
2 回答
780 浏览

node.js - 将 DialogflowConversation 与 Fulfillment SDK 集成时出现异常

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

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

但是服务器因以下异常而失败:

我目前正在使用这个库:

我究竟做错了什么?

谢谢

0 投票
1 回答
582 浏览

node.js - Firebase 唯一 ID 来查询我的数据以从孩子那里获取值

我正在尝试使用 firebase 提供的唯一 ID 从孩子那里获取数据值。我可以通过对唯一 ID 进行硬编码来从孩子那里获取数据值。但是数据库将存储多个,我想获取最新的存储数据。

我曾尝试使用 pushId 但它使孩子回来为空

0 投票
2 回答
808 浏览

firebase - 使用 Dialogflow-fulfillment 获取设备位置,而不是使用 Google Actions

我在这里要做的是,假设一家提供某些设施的医院在该国有几个中心(地点)。现在当用户请求这样的医院时,机器人应该能够向他输出附近医院的位置。我确实有 Firebase 实时数据库中所有此类医院的列表,其中包含各自的经度和纬度。

我的方法是获取用户的位置并将其与数据库中的可用位置进行比较以获得附近位置?

在此链接上,讨论了如何使用“Google Actions”获取用户的位置。我想使用 Dialogflow 上的内联编辑器中的 dialogflow-fulfullment (WebhookClient({ request, response });) 做同样的事情(获取用户的精确位置),以便我可以使用 Firebase 的实时数据库。

我的动机是让它也包容大多数其他平台。鉴于 Google Actions 仅对 Google Assistant 有效。

PS:对此的任何建议都将是非常可观的。如果需要,我很乐意提供更多说明。

0 投票
2 回答
935 浏览

dialogflow-es - DialogFlow Fulfillment - 如何获取参数的原始值和默认值

我试图从 $time 和 $time.original 的意图中获取时间值。我需要 $time 值对其进行一些处理,并且我需要 $time.original 将输出显示给用户。

例如,如果用户说“你明天营业吗?”,我想回答“是的,我们明天营业吗?” 但在后端,我需要日期“明天”的值来进行处理。

任何帮助,将不胜感激。

0 投票
1 回答
113 浏览

node.js - 在谷歌助手上播放指定时间的媒体对象

有没有办法使用 nodejs actions sdk 在指定时间段内播放媒体对象?

例如在下面的代码中,文件下面的代码是 1 分 42 秒。但是假设我有一个 60 分钟长的文件,我希望能够将一个参数传递给将指定播放持续时间的对象,该持续时间将小于总持续时间。

0 投票
1 回答
938 浏览

python - 重复 Dialogflow Intent 直到满足条件

我正在使用 Python 和 Dialogflow V2 API。我想知道如何使用 Python Flask 作为实现来重新提示意图,直到满足条件。我正在填充插槽,然后运行 ​​SQL 查询来验证用户的身份。如果查询返回 false(数据库中不存在身份),那么我想重新运行意图,直到满足条件(找到 userId)。

我试过查看 JS 文档,但找不到任何 Python 文档来完成这一壮举。

0 投票
1 回答
442 浏览

node.js - How do you address given name parameter in fulfillment code?

I have created an intent in Dialogflow web interface. It auto detected a parameter called given-name, which lists it as $given-name in the web interface. I am trying to address $given-name in the fulfillment inline editor provided by the web interface, but I am not having any success.

I've tried changing the parameter name to camel case, and also alternatively to using an underscore to replace the hyphen but neither seemed to work.

Here is the code snippet from the dialogflow fulfillment inline editor:

I want to know the correct way to address the given name parameter in the code section app.intent('run demo', (conv ...);

0 投票
1 回答
367 浏览

node.js - Parse values from the JSON returned by URL of Google Place API

I am creating a bot using dialogflow-fulfillment, and I am using Google Place API to pull additional information about hospitals.

I have made a dummy response, for the sake of example, that is returned by Google Place API, here is the link: http://www.mocky.io/v2/5c2b9f9e3000007000abafe3

I need to parse values of my choice from the JSON returned by Google Place API. For example, If I had to parse value of 'name' from the JSON above using Python, I would do this:

Above code for the job is lucid and works perfectly. Considering my inexperience in Nodejs, would you please let me know something similar in Nodejs to parse the value, for instance, the value of 'name'?

Your valuable reply will encourage me.

P.S: Humbly, the question involves first making a call to Google Place API and then parsing values from the returned JSON. Please follow the steps given in Python code above for better understanding.

0 投票
0 回答
197 浏览

node.js - 如何在 dialogflow 内联填充编辑器中使用 node8?

我想使用节点 8 使用内联编辑器(!)在对话框流填充中使用异步/等待。

我添加"engines": { "node": "8" }package.json(并在那里使用了足够高的版本firebase-adminfirebase-functions但是在部署过程中async仍然出现语法错误,并且 firebase 功能仪表板仍然显示节点 6。

有人知道如何解决这个问题吗?