2017-08-29 48 views
0

當前我正在使用Bot框架和節點來處理我的聊天機器人,並將API AI用作我的自然語言處理。NLP時區問題

我的問題是,比方說用戶回覆「昨天」或「今天」或「明天」,它是基於服務器時間。現在,如果一個澳大利亞人今天早上6點說今天上午他們的時間仍然是前一天,並且這給出了錯誤的日期,那就會出錯。

我可以提供關於如何解決這個時區問題的建議嗎?

+0

所以你。問題基本上是[如何獲得客戶當地時間](https:// sta ckoverflow.com/questions/10659523/how-to-get-the-exact-local-time-of-client)? – lenz

+0

不,因爲日期是API AI中的實體,所以當我檢索它時,如何確保實體是「昨天」,「今天」或「明天」日期?例如,我告訴chatbot「今天早上6點...」服務器仍然會從昨天檢索日期,當我從NodeJS檢索實體時,它仍然是昨天的日期。 – coffeeman

+0

另外,我需要檢查實體是否存在之前我檢索日期,因此,如果實體存在,我只能檢索服務器響應的日期基礎 – coffeeman

回答

1

每個API.AI代理都有一個默認的時區設置,可以在您的代理設置中更改(documentation here),該設置將用於確定用戶日期/時間查詢的含義,如「明天」和「昨天」和「下午3點「:

enter image description here

如果您使用API.AI's /query API你可以請求JSON發送timezone參數來表示要發送代表的請求的用戶是在什麼時區

+0

我可以知道你在Node JS中如何做到這一點?我能舉一些例子嗎?謝謝 – coffeeman

+0

你在找什麼樣的例子? – matthewayne

+0

例如,用戶在chatbot中輸入「yesterday」或「today」或「tomorrow」,我將如何發送時區參數以請求JSON查找用戶時區? – coffeeman