6

私はオーディオストリーミング用のアプリを開発しています。私がこのアーティストのために曲を演奏するためにアレクサを言っているなら、アレクサはすべての曲を演奏しています。しかし、別のアーティストに切り替えるために、間にリッスンしていません。 Alexaはアーティストのためにすべての曲を完成させてから停止し、別のアーティストの曲を聴くためにもう一度アプリを起動する必要があります。どのように私は曲の間に別のアーティストを呼び出すのですか?ここalexaアプリでplayディレクティブからアプリに戻る方法は?

は、最初の曲

$speech  = "playing songs of $artistName"; 

$card = '"card": { 
       "type": "Simple", 
       "title": "Play Audio", 
       "content": "" 
     }'; 
$response = '{ 
     "version" : "1.0", 
     "response" : { 
      "outputSpeech": { 
       "type": "PlainText", 
       "text": "'.$speech.'" 
      }, 
      '.$card.', 
      "directives": [ 
       { 
       "type": "AudioPlayer.Play", 
       "playBehavior": "REPLACE_ALL", 
       "audioItem": { 
        "stream": { 
       "token": "FirstSong", 
       "url": "myUrl", 
       "offsetInMilliseconds": 0 
        } 
       } 
       } 
      ], 
      "shouldEndSession" : true 
     } 
    }'; 

    echo $response; 

そしてENQUEUEにplayBehaviourを交換することにより、それにオーディオを追加するための私のコードです。曲が追加されて、すべての曲が適切に再生されているが、私のアプリに関連するコマンドを言っているなら、いつでも、いつでも... alexaは応答しておらず、アプリを起動しなければならないので、再び私のアプリでアレクサを動作させるために曲が演奏されています。あなたは、オーディオプレーヤーのイベントを処理する必要が

答えて

1

hereを説明しました。具体的には、AudioPlayer.PlaybackNearlyFinishedイベントでは、次のオーディオファイルをエンキューできます。他のイベントの多くは、適切なユーザーエクスペリエンスのために実装する必要があります。

+0

それは曲の追加についてではありません...曲が追加取得されますが、私は私のアプリでアレクサ何かを求めて開始したい場合はプレイディレクティブがセッションを残したので...それは起きていません。とにかくセッションを保持するには? –

+0

いいえ、ユーザーはスキルを再トリガする必要があります。 –

関連する問題