2017-08-17 42 views
0

我在API.ai上建立一個代理,在這裏我向用戶提出一個問題。我不希望他們回答我的經紀人的問題。不過,他們可能希望稍後通過詢問更多信息來跟進此問題。如果我按照自己的意圖結束對話,那麼他們就不能再做一些事情,比如說'告訴我更多'而不從頭開始再次調用我的動作(在這種情況下,所有的上下文都會丟失),但同樣如果他們不說任何東西,然後(在谷歌家至少)這個問題重複,因爲它期待着一個迴應。API.ai不要等待回答,但不要結束對話

反正我能做到這一點?

回答

3

除了什麼萊昂說,你也可以管理的範圍內用戶自己(而不是依賴API.AI的上下文)並關閉您在每個請求中獲得的匿名用戶標識。

通過這種方式,他們可以深入鏈接回問你一個後續問題,並且你知道「誰」正在返回,以及當你回覆時最後的談話位置。

4

行動是會話體驗。通常你的應用會提出一個問題,用戶會提供一個響應。一旦用戶退出應用程序,會話環境就會回到助理。

如果你想提供一個快速的方法來讓用戶與您的應用程序再次參與,然後再考慮實施的深層鏈接支持:https://developers.google.com/actions/apiai/define-actions#define_additional_actions

+0

感謝您的回覆。我想在我的例子中,用戶可能會詢問有關x的信息。 X有很多信息,所以我只是提供一些與選擇要求更多。我想我將不得不採用囚徒的方法並存儲userId和交互時間,以我自己的超時方式以這種方式管理上下文,只是喚醒了「告訴我更多」的意圖,它檢索相關上下文來自數據庫。謝謝回覆 – TommyBs

0

我明白,你基本上要的是創造一個意圖在什麼樣的用戶會說是不可預測的(他們可能不會說任何東西)。

在這種情況下,你可以簡單地結束與及時的響應來指定。 「...你想問一些更多」。如果用戶說「不」,則以不同的意圖結束對話。否則繼續與流量。