2016-12-05 10 views
1

Node.jsでalexa-sdkを使用しています。私は、DynamoDBに4つの異なる状態を保持したAlexaスキルを持っています。各インタラクションの終わりに、状態をREADY状態に変更する必要があります。各ハンドラの最後に、私は次のように私は私の状態を設定SessionEndedRequestを持っている:スキルがREADY状態で起動するとAlexaスキルの状態がSessionEndedRequestで変更されない

this.state = States.READY; 
this.emit(':saveState', true); 

は、私が使用した状態への状態からジャンプ:

this.handler.state = States.COMM; 
this.emitWithState('NewSession'); 

私は各ハンドラにNewSessionを持つ。

私の問題は、ユーザーがスキルの使用をやめると状態がリセットされないことです。 READYに戻るには、それが必要です。

これを達成するために私が何をする必要があるか教えていただけますか?ありがとう。

+0

私は、SessionEndedRequestがユーザーが何も言わないときにのみ起動されると思います。その場合、ユーザーの応答後に状態を設定する必要があります。私が間違っているなら私を訂正してください。 – froinds

答えて

2

あなたがここにあるコード:状態キーはハンドラ・オブジェクトに存在するため

this.state = States.READY; 
this.emit(':saveState', true); 

はAlexaのアプリの状態を設定しません、あなたは

this.handler.state = States.READY; 
this.emit(':saveState', true); 

が私にしてみましょう行う必要がありますこれがあなたの問題を解決するかどうかを知ってください。ありがとう。

関連する問題