Я учусь создавать чат-ботов с помощью DialogFlow. В качестве примера я создал простое намерение сообщить свой текущий вес. Я построил на своем сервере конечную точку для приема данных в виде запросов выполнения и сохранения их в базе данных.
В качестве параметров данных я указал вес как @ sys.unit-weight и дату как @ sys.date. Когда я указываю дату словами «сегодня» или «завтра», часть даты анализируется правильно, но DialogFlow добавляет 12:00:00 как часть времени. Это немного странно, и я не могу понять, в чем смысл того времени. Это выглядит некорректно.
Я прилагаю скриншот выполнения намерения в консоли DialogFlow, а также полезную нагрузку запроса выполнения. Кто-нибудь знает, как получить даты без времени или с 00:00:00, если время не было указано?
Снимок экрана с запуском намерения консолью DialogFlow
{
"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"
}
Заранее благодарим за любую помощь!