2017-09-22 80 views
0

有沒有辦法找出LUIS中以前的用戶輸入是什麼?例如:如何獲取LUIS機器人中的上一個查詢或用戶輸入

用戶:給我我的航班信息 機器人:您的電子郵件地址是? 用戶:你爲什麼需要它?

在這種情況下,我需要它來訪問用戶的航班的詳細信息,所以,我希望能夠處理這個問題,仍然回到原來的線程,就像本例中,檢索航班信息。

回答

1

所有堆棧中的機器人應用工作的對話框,所以如果你問用戶問題(爲前。電子郵件),您在同一個對話結束。我假設你也在使用BotFramework。如果您致電:

context.Call(new EmailDialog(), ResumeAfterEmail) 

ResumeAfterEmail方法將盡快EmailDialog完成調用,並且當前對話框中的局部變量將在那裏爲好,這樣你就可以與任何動作不斷,其所有數據。

如果你要堅持跨多個對話框中的數據,可以使用UserDataConversationData這樣的:

context.UserData.SetValue<some_type>(string key, some_type value)

和:

context.UserData.GetValue<some_type>(string key)

這將持續存在一段時間,取決於你使用哪個(...)Data

綜上所述 - 保存通話數據不LUIS的一部分,你必須在你的應用程序邏輯的事情。如果你想要從LUIS確切的查詢或結果,只是將它們保存在本地變量或context.(...)Data

相關問題