でbacklend。何も大きなものではなく、学習のためだけです。 私はスキルが始まるとすぐにいくつかの音楽を再生したい:私は何をしたいかAudioPlayer.stop - アレクサは、私は私のAlexaのスキルのためのPHPのバックエンドを開発しようとしているPHP
。私は次のように解決しました。
if ($RequestMessageType == "LaunchRequest") {
$ReturnValue = '
{
"version": "1.0",
"sessionAttributes": {},
"response": {
"outputSpeech": {
"type": "PlainText",
"text": null
},
"card": {
"type": "Simple",
"title": "Play Audio",
"content": ""
},
"reprompt": {
"outputSpeech": {
"type": "PlainText",
"text": null
}
},
"directives": [
{
"type": "AudioPlayer.Play",
"playBehavior": "REPLACE_ALL",
"audioItem": {
"stream": {
"token": "33|fdd9052a-717f-414f-a438-1072a64d0f49|831",
"url": "hereismyurl",
"offsetInMilliseconds": 0
}
}
}
],
"shouldEndSession": true
}
}';
}
これはうまくいきます。 「アレクサは、停止」:私が言う場合
とは別に、私はスキルが音楽の再生を停止します。それはうまくいかないようです。私は以下を試しました:
if ($RequestMessageType == "AMAZON.StopIntent") {
$ReturnValue = '{
"card": {
"type": "Simple",
"title": "Stop Audio",
"content": "Bla bla"
},
"directives": [
{
"type": "AudioPlayer.Stop",
}
],
"shouldEndSession": true
} }';
}
if ($RequestMessageType == "AMAZON.CancelIntent"){
$ReturnValue = '{
"card": {
"type": "Simple",
"title": "Stop Audio",
"content": "Bla bla"
},
"directives": [
{
"type": "AudioPlayer.Stop",
}
],
"shouldEndSession": true
} }';
}
私はいつも "悪い応答"を得ます:スキルが無効な応答を返しました。
私SessionEndedRequestは、次のようになります。
if ($RequestMessageType == "SessionEndedRequest") {
$ReturnValue = '{
"type": "SessionEndedRequest",
"requestId": "$RequestId",
"timestamp": "' . date("c") . '",
"reason": "USER_INITIATED "
}';
}
誰でもAudioPlayer正しい方法を停止する方法を知っていますか?