2016-07-04 16 views
8

Ho creato un'abilità in modo che le persone possano tenere traccia di alcuni stati. Ma invece di chiedere ad alexa ogni volta di aprire l'app e interagire.Come mantenere aperta un'abilità di alexa?

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

vorrei mantenere l'abilità grocerylist aperta in modo che gli utenti possano interagire con esso fino a quando chiedono a chiudere

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

C'è un modo per farlo senza dover utilizzare alexa ask grocerylist ogni volta .

risposta

7

Questo non è possibile. È una funzione di sicurezza, quindi le terze parti non possono creare un'abilità per "ascoltare" su tutto ciò che qualcuno sta dicendo. Puoi rispondere e se non imposti il ​​flag "endSession", manterrà la sessione aperta. Ma rimarrà aperto solo per circa 8 secondi. Se hai impostato una reprompt, leggerà loro il reprompt in quel punto e rimarrà aperta per altri 8 secondi. Quindi il massimo che puoi mantenere aperto per la linea è di 16 secondi.

+1

Questa risposta inizia dicendo "non è possibile", ma poi si descrivono esattamente come fare quello che ho capito il richiedente vuole. @adamp qui sotto dà la stessa risposta. –

+0

La maggior parte delle persone che fanno questa domanda sul forum e altrove vogliono mantenere l'abilità aperta continuamente; ascoltando tutto ciò che l'utente potrebbe dire in seguito senza invocazione. Il richiedente non è esplicito sul loro scenario, quindi ho risposto alla domanda in base alla risposta che cercheranno la maggior parte delle persone che cercano. –

+0

Posso attivare la modalità di ascolto ripetuta per 8 secondi più di 2 volte? – Sunil

4

Naturalmente questo è possibile! (ma può essere limitato al massimo di circa 8 secondi per @ commento di Bill)

Nella tua risposta, quando si chiama buildSpeechletResponse, impostare 'shouldEndSession' false al fine di mantenere aperta la seduta e continua ad ascoltare musica più espressioni, senza la necessità di lanciare ancora una volta l'abilità con "Alexa chiedere MyApp ..."

vari demo mostrerà come fare questo. per esempio. Vedere il codice di esempio qui: https://github.com/amzn/alexa-skills-kit-js/blob/master/samples/savvyConsumer/src/AlexaSkill.js

+0

Questa risposta è fuorviante. I dispositivi Amazon Echo scadono dopo circa 8 secondi. Non hai la possibilità di estendere la durata del timeout. – Bill

Problemi correlati