2017-08-07 29 views
0

我在LUIS有一個名爲ChangeFlight的意圖。當用戶最初輸入某種日期格式時,我可以提取日期實體。當用戶忘記輸入日期時,它會要求用戶輸入日期。在對話中提取實體

但是,我不想僅獲取響應的結果,而是希望它提取日期實體,如初始步驟。我有bot.dialog('askForDate'),它向用戶請求日期,但我不確定如何在對話中提取內置日期實體。

我該如何處理? 謝謝。

+0

不Nicolas的回答解決你的問題?如果您需要更多關於「Prompts.time」中的日期時間解析如何工作的信息,則SDK使用[chrono](https://github.com/wanasit/chrono)。如果用戶的日期時間仍未被正確解析,那麼您可能需要插入像LUIS.ai這樣的NLP來幫助破譯話語。 –

回答

0

您可以使用專用於時間分辨率的提示,它將允許用戶輸入時間或日期/時間。 doc是here

例如:

function (session, results, next) { 
    if (results.response) { 
     session.dialogData.name = results.response; 
     builder.Prompts.time(session, "What time would you like to set an alarm for?"); 
    } else { 
     next(); 
    } 
}, 
function (session, results) { 
    if (results.response) { 
     session.dialogData.time = builder.EntityRecognizer.resolveTime([results.response]); 
    } 

    // TO DO : add here what you want to do with the value 
}