【发布时间】:2020-10-29 21:49:23
【问题描述】:
我正在学习使用 DialogFlow 构建聊天机器人。作为一个例子,我创建了简单的意图来报告我当前的体重。我在我的服务器上构建了端点来接收数据作为履行请求,以将其保存到数据库中。
作为数据参数,我将权重指定为@sys.unit-weight,将日期指定为@sys.date。当我通过“今天”或“明天”指定日期时,日期部分被正确解析,但 DialogFlow 将 12:00:00 添加为时间部分。这有点奇怪,我真的不明白那个时候有什么意义。看起来不正确。
我附上了在 DialogFlow 的控制台中执行意图的屏幕截图以及履行请求负载。如果没有提供时间,有人知道如何在没有时间的情况下获取日期或 00:00:00 的日期吗?
Screen shot of triggering intent by DialogFlow's console
{
"responseId": "518945f5-33bf-43a8-86ce-42e422033e6c-425db6e2",
"queryResult": {
"queryText": "yes",
"action": "TrackWeight",
"parameters": {},
"allRequiredParamsPresent": true,
"fulfillmentText": "Your weight log was saved. Do you want anything else?",
"fulfillmentMessages": [
{
"text": {
"text": [
"Your weight log was saved. Do you want anything else?"
]
}
}
],
"outputContexts": [
{
"name": "projects/chatbot-59dda/agent/sessions/414dfa61-4850-eb27-804a-afea25516ab8/contexts/trackweight-followup",
"parameters": {
"weight": {
"amount": 50,
"unit": "kg"
},
"weight.original": "50 kg",
"date": "2020-07-09T12:00:00+03:00",
"date.original": "today"
}
},
{
"name": "projects/chatbot-59dda/agent/sessions/414dfa61-4850-eb27-804a-afea25516ab8/contexts/__system_counters__",
"parameters": {
"no-input": 0,
"no-match": 0
}
}
],
"intent": {
"name": "projects/chatbot-59dda/agent/intents/c8bafb9d-1c44-401c-877f-9929d4fc23c2",
"displayName": "Track Weight - yes"
},
"intentDetectionConfidence": 1,
"languageCode": "en"
},
"originalDetectIntentRequest": {
"payload": {}
},
"session": "projects/chatbot-59dda/agent/sessions/414dfa61-4850-eb27-804a-afea25516ab8"
}
提前感谢您的帮助!
【问题讨论】:
标签: dialogflow-es dialogflow-es-fulfillment