2017-04-12 73 views
0


我正在爲網站實施Alexa搜索技巧。我的問題是,存在某種可能性來給意圖提供某種範圍,因此可以重用Intent中構建的範圍。
我的意思是,例如。 AMAZON.YestIntent在不同情況下具有不同的功能。
關於Alexa技能的意圖範圍

回答

2

您可以在您的意圖處理程序中處理此問題。如果您使用的是會話或數據庫,則可以保存上下文信息。然後在意圖處理程序中,測試會話或DB數據以確定要採取的響應。

例如,在Who's On First? Baseball Skit技能,用戶和Alexa之間的對話長度約爲85行。用戶可以說「誰?」在對話框中的幾個不同的地方,Alexa需要根據他們所在的對話的哪一行做出不同的響應。爲了解決這個問題,我只需在會話中保存行號。然後,當一個意圖被調用時,意圖處理程序獲取行號會話變量,用它來選擇適當的響應,並遞增它並在會話中傳遞給下一行。

0

這真的取決於你的技能的複雜性,被接受的答案是一個完全正確的實現一個簡單的流程,它開始解決保持與會話相關的狀態。

如果你的技能是比較複雜的,你正在使用Node.js的,我會建議使用官方的SDK可以提供這樣的功能開箱: https://github.com/alexa/alexa-skills-kit-sdk-for-nodejs

狀態管理,您可以定義哪些意圖應該在每個狀態下處理,其餘的可以傳遞給特定於上下文的處理程序。更多的信息在這裏: https://github.com/alexa/alexa-skills-kit-sdk-for-nodejs#making-skill-state-management-simpler

狀態管理需要一點時間適應,但一旦你使用它,你將不會回去,因爲它提供了你的經驗控制。