2017-07-06 65 views
0

我知道標題可能會讓人困惑,所以我舉個例子。Alexa技能工具包:基於用戶響應,在意圖中間詢問用戶,然後在相同意圖的範圍內繼續?

'GetDataIntent': function(){ 

    var body = ""; 
    var url = "someAPI.com"; 

    https.get(url, (response) =>{ 
     response.on('data', (chunk) => { 
      body+=chunk; 
     }); 
     response.on('end', (chunk) => { 
      var data = JSON.parse(body); 
      /* Do Some Stuff */ 


      this.emit(":ask", "Would you like more info?"); 

      //The Concept I am trying to describe 
      Alexa.registerHandlers(innerHandlers); 
      var innerHandlers = { 
       'AMAZON.YesIntent': function(){ 
        this.emit(":tell", "More info"); 
        /* then destroy the temp handlers */ 
       }, 
       'AMAZON.NoIntent': function(){ 
        this.emit(":tell", "Goodbye!"); 
        /* Destroy the temp handlers */ 
       } 
      }; 
     }); 
}); 
} 

從文檔我看了一下ASK,看來,你將不得不在節目的開始登記處理,但顯而易見的原因,我不能這樣做。我希望能夠製作臨時處理程序,類似於我所展示的方式,因此它不會跳轉到任何隨機意圖,而是基於用戶響應而保持在當前意圖的範圍內。

回答

0

您應該在您的端點處理程序中處理此事務,並在會話對象上保留一個狀態

相關問題