dcs*_*san 0 dialogflow-es dialogflow-es-fulfillment dialogflow-cx
使用谷歌新的可视化 DialogFlow CX 构建器,我将参数传递给 Flow。模拟器显示参数已设置,我可以访问它,$session.params.anger
但想知道如何设置会话/页面/意图参数。
还有这些条件块的语法是什么。似乎有一些奇怪的类似 bash 的语法。它似乎if/else/endif有效并且具有基本的语法突出显示,但我只是通过反复试验发现了这一点。有没有这方面的文件?也许它是 ES 的一个共同特征?
https://cloud.google.com/dialogflow/cx/docs/concept/parameter
关于如何为Dialogflow CX定义和设置参数有不同的方法。您可以查看以下示例以获取更多信息。
意图参数
一世。如上图所示,注释训练短语所使用的任何参数都将从用户查询中捕获,并由 Dialogflow 设置为 Intent 参数 ( $intent.params.parameter-name )。
ii. 通过使用参数预设

表单参数或页面参数
一世。从上面的屏幕截图中看到的任何表单/页面参数都将从用户查询中捕获,并由 Dialogflow 设置为页面参数 ( $page.params.parameter-name )。
ii. 通过使用参数预设(例如参考 1.b.ii)
三、通过在Webhook 响应中设置pageInfo.formInfo.parameterInfo字段
{
"pageInfo": {
"formInfo": {
"parameterInfo": {
"displayName": "geo-city",
"value": "New York",
"state": "FILLED"
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
会话参数
一种。在运行时设置
一世。捕获的 Intent 和 Page 参数也作为会话参数 ( $session.params.parameter-name )写入 Dialogflow 的会话。
ii. 通过使用参数预设(例如参考 1.b.ii)
三、通过在 Webhook 响应中设置sessionInfo.parameters字段
{
"sessionInfo": {
"parameters": {
"city": "New York"
}
}
}
Run Code Online (Sandbox Code Playgroud)
四、通过在使用 API 时在detectIntent请求中为 Session 类型设置queryParams.parameters请求字段(下面的示例是使用detectIntent for REST API)
curl \
-X POST \
-H "Authorization: Bearer "$(gcloud auth application-default print-access-token) \
-H "Content-Type: application/json; charset=utf-8" \
--data "{
'queryInput': {
'text': {
'text': 'howdy'
},
'languageCode': 'en'
},
'queryParams': {
'timeZone': 'America/Los_Angeles',
'parameters': {
'displayName': 'geo-city',
'value': 'New York'
}
}
}" \
"https://dialogflow.googleapis.com/v3beta1/projects/<project-id>/locations/global/agents/<agent-id>/sessions/1234567890:detectIntent"
Run Code Online (Sandbox Code Playgroud)
对于条件响应,我也尝试过这种类型的响应,以下语法对我有用:
if <condition>
<block> //response to be returned
elif <condition>
<block>
elif <condition>
<block>
else
<block>
endif
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1433 次 |
| 最近记录: |