2016-07-04 80 views
8

我已經創建了一項技能,以便人們可以跟蹤某些狀態。但不要每次都要求alexa打開應用程序並進行交互。如何保持alexa技能的公開?

alexa ask grocerylist to add 2 eggs 
alexa ask grocerylist to add bread 

我想保持grocerylist技能開放,使用戶可以直到他們要求它關閉

alexa open grocerylist 
.... 2 mins later 
add 2 eggs 
.... 1 min later 
add bread 

與它交互是有辦法做到這一點,而不必使用alexa ask grocerylist每次。

回答

7

這是不可能的。這是一項安全功能,因此第三方無法創建技能來「聆聽」某人所說的所有內容。你可以迴應,如果你沒有設置「endSession」標誌,它會保持會話打開。但它只會保持大約8秒。如果你已經設置了重新提示,它會在當時讀取重新提示並保持打開8秒。所以你可以保持線路的最大時間是16秒左右。

+1

這個迴應開始說「不可能」,但然後你準確地描述瞭如何做我理解提問者想要的。下面的@adamp給出了相同的答案。 –

+0

大多數人在論壇和其他地方問這個問題的人都希望不斷開放技能;監聽用戶以後可能會說的任何內容而不用調用。提問者在這裏並不清楚他們的情況,所以我根據答案回答了這個問題,大多數人都在尋找這個問題。 –

+0

我可以觸發重複8秒以上的聆聽模式嗎? – Sunil

4

當然這是可能的!

在回信中(但可以在最大的約8每秒@比爾的評論封頂),呼籲buildSpeechletResponse時,爲了保持該會話開放,繼續聽更多的話語沒有設置「shouldEndSession」爲假需要使用「alexa ask MyApp」再次啓動該技能......「

各種演示會顯示如何執行此操作。例如看到示例代碼在這裏:https://github.com/amzn/alexa-skills-kit-js/blob/master/samples/savvyConsumer/src/AlexaSkill.js

+0

這個答案有誤導性。 Amazon Echo設備將在約8秒後超時。您無法延長超時時間。 – Bill