javascript - 如何将上下文参数发送到 webhook/fulfilments DialogFlow v2
问题描述
我正在阅读此链接的官方文档: https ://cloud.google.com/dialogflow-enterprise/docs/reference/rest/v2beta1/QueryParameters但我无法使用以下代码将上下文参数传递到我的请求中:
var query = req.body.query;
const request = {
session: sessionPath,
queryInput: {
text: {
text: query,
languageCode: 'en-US',
},
},
queryParameters: {
contexts: ['Question-followup']
},
};
// Send request and log result
sessionClient
.detectIntent(request)
.then(responses => {
const result = responses[0].queryResult;
console.log(result);
res.json(result);
if (result.intent) {
console.log(` Intent: ${result.intent.displayName}`);
} else {
console.log(` No intent matchede.`);
}
})
.catch(err => {
console.error('ERROR:', err);
});
在文档中它说我应该有类似的东西:
"contexts": [
{
object(Context)
}
],
我想要这个的原因是有时 DialogFlow 无法检测到 Intent,所以我认为通过将上下文传递给参数将有助于 dialogflow 找到正确的意图!
解决方案
该contexts
数组需要是Context对象的数组,而不仅仅是带有上下文名称的字符串。
上下文对象看起来像
{
"name": "projects/<Project ID>/agent/sessions/<Session ID>/contexts/<Context Name>",
"lifespanCount": 1,
"parameters": {
"anyParameterName": "parameterValue"
}
}
推荐阅读
- sass - SCSS 从两个数组生成类
- javascript - 如何读取nodejs中的pem文件?
- python - 如何使用熊猫对数据框进行子集化?
- linux - 启动 mongod.service 失败:在 Ubuntu 20.04 上找不到单元 mongod.service
- javascript - Textillate JS-JQuery 动画不是选中的(而且总是一样的)
- image - 阅读许多视频并将它们转换为图像
- ios - 如何使用 RxWebKit 测试 WKWebView?
- python - 为什么在微调时需要冻结 Batch Normalization 层的所有内部状态
- angular - Leaflet + Angular is it possible to draw semicircles?
- c++ - 编译后出现异常 0x00000004 (sfml-graphics-2.dll)