ServiceAlexa開発者フォーラムAlexaデザインガイドAlexaスキルマーケティングガイドラインAudioPlayerインターフェースのリファレンス﻿AudioPlayerインターフェースのリファレンスAudioPlayerインターフェースは、オーディオをストリーミングしたり再生状況を監視したりするディレクティブとリクエストを提供します。スキルは、ディレクティブを送信して再生を開始したり停止したりできます。AlexaサービスはAudioPlayerリクエストをスキルに送信し、トラックの終了間際や再生の開始時と停止時など、再生状況に関する情報を提供します。Alexaは、リモコンなどのハードウェアボタンや、画面付きのAlexa搭載デバイスの次へ/前へタッチコントロールに応答して、PlaybackControllerリクエストも送信します。AudioPlayerディレクティブを使用できるようにスキルを設定する再生コントロール用のビルトインインテント画面付きのAlexa搭載デバイス用AudioPlayerAudioPlayerディレクティブAudioPlayerリクエストPlayディレクティブStopディレクティブClearQueueディレクティブPlaybackStartedリクエストPlaybackFinishedリクエストPlaybackStoppedリクエストPlaybackNearlyFinishedリクエストPlaybackFailedリクエストSystem.ExceptionEncounteredリクエストサービスインターフェースのリファレンス(JSON)サンプルコードを使用して作業を開始するオーディオプレイヤースキルを解説しているコードサンプルを参照してください。SDKAudioPlayerディレクティブを使用できるようにスキルを設定するこれらのディレクティブをオーディオ再生のために使用する場合、以下を実行する必要があります。スキル設定時に、スキルがこのインターフェースを実装していることを示すこと。インターフェースに移動します。Playerオプションを有効にしてからインターフェースを保存をクリックします。モデルをビルドをクリックして対話モデルを再ビルドしてください。オーディオの一時停止や再開に必要なビルトインインテントを実装すること。AudioPlayerインターフェースをスキルに追加すると、自動的にこれらの必要なインテントがモデルに追加されます。AMAZON.PauseIntentAMAZON.ResumeIntent必須のビルトインインテントに加えて、スキルは以下に示す追加のビルトインインテントを適切に処理する必要があります。AMAZON.CancelIntentAMAZON.LoopOffIntentAMAZON.LoopOnIntentAMAZON.NextIntentAMAZON.PreviousIntentAMAZON.RepeatIntentAMAZON.ShuffleOffIntentAMAZON.ShuffleOnIntentAMAZON.StartOverIntentユーザーは、スキルの呼び出し名(下記参照)を使用せずに、これらのビルトインインテントを呼び出すことができます。スキルが現在オーディオを再生中の場合、または最後に実行した処理がオーディオの再生である場合、これらのインテントは自動的にスキルに送信されます。したインテントを想定し、エラーを返さないコードにする必要があります。これらのインテントのいずれかがスキルに適用されないものである場合には、コードで正常に処理できるようにしてください。コマンドがスキルに対して適切ではないことを示す応答を読み上げ機能で返す方法があります。具体的なメッセージは、スキルによって、また、ある時点でインテントが処理可能なものかどうかによって異なります。次のような例があげられます。「楽曲をシャッフルできません。」というメッセージを返す場合があります。「すみません、まだ曲をシャッフルできません。」と返す場合があります。スキルがAudioPlayerディレクティブを使用する場合、上記のビルトインインテントを独自のサンプル発話で拡張することはできません。再生コントロール用のビルトインインテントスキルがPlayディレクティブを送信して再生を開始すると、Alexaサービスはデバイスにオーディオストリームを送信して再生させます。セッションが正常に終了すると(たとえば、trueに設定されたshouldEndSessionフラグが応答に含まれる場合)、ユーザーが以下のいずれかを実行するまで、Alexaはスキルが再生を開始したことを記憶しています。別のスキルでオーディオ再生を呼び出すビルトインの音楽サービスやフラッシュニュースなど、オーディオをストリーミングする別のサービスを呼び出すデバイスを再起動するこの間、ユーザーはスキルの呼び出し名を使用せずに、以下の再生コントロールのビルトインインテントを呼び出すことができます。AMAZON.CancelIntentAMAZON.LoopOffIntentAMAZON.LoopOnIntentAMAZON.NextIntentAMAZON.PauseIntentAMAZON.PreviousIntentAMAZON.RepeatIntentAMAZON.ResumeIntentAMAZON.ShuffleOffIntentAMAZON.ShuffleOnIntentAMAZON.StartOverIntent例として、「マイポッドキャストプレイヤー」というカスタムスキルに関する以下のシナリオを確認してください。このスキルは、PlayLatestEpisodeインテントを「最新のエピソードを再生して」というサンプル発話にマッピングして定義しています。アレクサ、マイポッドキャストプレイヤーで最新のエピソードを再生して。Alexaはスキルの新しいセッションを開き、マイポッドキャストプレイヤースキルに通常どおりPlayLatestEpisodeインテントを送信します。マイポッドキャストプレイヤーはPlayディレクティブを送信します。スキルのセッションが終了し、オーディオの再生が開始されます。(呼び出し名がないことに注意)Alexaはスキルの新しいセッションを開き、マイポッドキャストプレイヤースキルにAMAZON.NextIntentを送信します。マイポッドキャストプレイヤーは、「次」に対して適切なアクションを実行し、スキルのセッションを終了します。アレクサ、一時停止して。(今度も呼び出し名なし)Alexaはスキルの新しいセッションを開き、スキルにAMAZON.PauseIntentを送信します。マイポッドキャストプレイヤーはStopディレクティブを送信し、スキルのセッションを終了します。オーディオは停止します。この時点でオーディオは中断され、現在実行されているセッションはありませんが、Alexaサービスは引き続きマイポッドキャストプレイヤーを、最近オーディオをストリーミングしたスキルとしてトラッキングしています。デバイスがオンのままで、ユーザーが他のオーディオストリーミングのスキルやサービスを使用しない場合、それ以降はどの時点でも以下が発生する可能性があります。(呼び出し名がないことに注意)Alexaはスキルの新しいセッションを開き、マイポッドキャストプレイヤーにAMAZON.ResumeIntentを送信します。マイポッドキャストプレイヤーは適切なアクションを実行して、以前に再生していたトラックを判断し、新しいPlayディレクティブを送信して再生を再開します。これは、ビルトインインテントの場合にのみ可能です。定義されたインテント(たとえばPlayLatestEpisodeインテントなど)は、通常の呼び出しフレーズを使用して呼び出す必要があります。上記のシナリオで、スキルのセッションがアクティブではないもののオーディオを再生している場合、またはスキルが最後にオーディオを再生したスキルである場合、「止めて」などと発話すると、AMAZON.StopIntentの代わりにAMAZON.PauseIntentがスキルに送信されます。画面付きのAlexa搭載デバイス用AudioPlayer以下のセクションでは、オーディオスキルの表示の仕方と、画面付きのAlexa搭載デバイスで使用されたときの動作について説明します。Displayインターフェースを含める必要がないことに注意してください。画面付きのデバイスは、自動的に音声再生を処理します。画面付きのAlexa搭載デバイスでは、AudioPlayerは画面表示されます。Playディレクティブを送信する際に、アルバムアート、背景画像、トラックタイトル、サブタイトルを任意に設定できます。このとき、デバイスには以下のようなメタデータが表示されます。メタデータが設定されていない場合、無地の背景とスキル名だけのデフォルトのPlayerが表示されます。設定できるメタデータの詳細については、PlayディレクティブのaudioItem.metadataプロパティを参照してください。ユーザーがデバイスの画面をタッチすると、AudioPlayerの画面にはタッチコントロール(次へ、前へ、一時停止)が表示されます。Spotの場合は以下のように表示されます。Cubeもサポートされています。Spotでは同じ背景画像を使用します)カスタムの背景画像、タイトル、サブタイトル、アルバムアートが設定されたAudioPlayer(タッチコントロールあり)カスタムのアルバムアートが設定されたAudioPlayer(タッチコントロールが表示されている間はタイトルとサブタイトルは表示されません)スキル名だけが表示されたデフォルトのAudioPlayerスキル名だけが表示されたデフォルトのAudioPlayerスキル名だけが表示されたデフォルトのAudioPlayer(タッチコントロールあり)デフォルトのAudioPlayer(タッチコントロールが表示されているときは曲名は表示されません)AudioPlayerとタッチコントロールスキルがオーディオをストリーミング中にユーザーがデバイスの画面をタッチすると、オーディオタッチコントロールが数秒間表示されます。次へ、前へ、一時停止です。次へ、前へ、再生コントローラーは、実際のリモコンのように動作し、スキルにそれぞれのリクエストを送信します。PlaybackController.NextCommandIssuedPlaybackController.PreviousCommandIssuedPlaybackController.PlayCommandIssuedこれらのリクエストをスキルで適切に処理する必要があります。一時停止コントロールは、スキルにリクエストを送信せずに自動で再生を停止します。他のデバイス(実際のリモコンなど)はこれらのリクエストを送信するため、スキルもPlaybackController.PauseCommandIssuedを処理します。AudioPlayerディレクティブAudioPlayerでは、以下のディレクティブが提供されています。Alexaにコマンドを送信して、指定されたaudioItemで識別されたオーディオファイルをストリーミングします。現在再生中のオーディオストリームを停止します。オーディオストリームのキューをすべて削除します。応答にディレクティブを含める場合、送信するディレクティブにtypeプロパティを設定します。応答のdirectives配列にディレクティブを含めます。}}}完全な応答のフォーマットについては、カスタムスキルのJSONインターフェースのリファレンスの応答の形式を参照してください。LaunchRequestまたはIntentRequestに応答する場合、応答に、AudioPlayerディレクティブ、およびoutputSpeech、card、repromptなどの標準の応答プロパティの両方を含めることができます。Playディレクティブと同じ応答にoutputSpeechを含めると、Alexaはあらかじめ用意されたテキストを読み上げてからオーディオのストリーミングを開始します。AudioPlayerリクエストに応答する場合のルールは異なるので、注意してください。テストページのAlexaシミュレーターにはオーディオ再生機能はありませんが、スキルI/Oセクションにはスキルから送信されるAudioPlayerディレクティブが表示されることに注意してください。再生されないため、Alexaシミュレーターを使用して、再生中のイベントによってトリガーされるPlaybackNearlyFinishedなどのAudioPlayerリクエストをテストすることはできません。AudioPlayerリクエストAudioPlayerは以下のリクエストを送信し、再生状況の変更についてスキルに通知します。Playディレクティブで以前に送信されたオーディオストリームの再生をAlexaが開始すると、スキルに送信されます。これにより、スキルは再生が正常に開始したことを確認できます。Alexaが再生しているストリームが終了すると、送信されます。音声リクエストやAudioPlayerディレクティブに対応して、Alexaがオーディオストリームの再生を停止したときに送信されます。現在再生中のストリームが終了間際で、デバイスが新しいストリームを受信する準備ができている場合に送信されます。ストリームを再生しようとしているときに、Alexaにエラーが発生した場合に送信されます。これらのリクエストは、スキルセッションのコンテキストで送信されないため、sessionオブジェクトを含みません。applicationIdやuserIdなどの詳細を取得するには、contextオブジェクトを使用してください。}}完全なリクエストのフォーマットについては、カスタムスキルのJSONインターフェースのリファレンスのリクエストの形式を参照してください。AudioPlayerリクエストに応答する場合、AudioPlayerディレクティブでしか応答できません。応答には、outputSpeechなどの標準のプロパティはいずれも含めることができません。Playを許可しないなど、使用できるディレクティブを制限するリクエストもあります。サポートされていないプロパティを含む応答を送信すると、エラーが発生します。各リクエストの制限については、この後に示す各リクエストタイプの詳細を参照してください。AudioPlayerリクエストに対して、サービスは応答を返す必要がないことにも注意してください。PlayディレクティブAlexaにコマンドを送信して、指定されたaudioItemで識別されたオーディオファイルをストリーミングします。playBehaviorパラメーターを使用して、ストリームの再生を今すぐ開始するか、キューに追加するかを判断します。1つのリクエストで送信できるPlayディレクティブは1つだけです。objectのshouldEndSessionフラグをtrueに設定してセッションを終了します。このフラグをfalseに設定すると、Alexaはストリームを再生するためにデバイスに送信し、その後すぐにストリームを一時停止して、ユーザーの応答を待ちます。必須typeAudioPlayer.Playに設定します。◯playBehavior再生動作を説明します。有効な値は以下のとおりです。現在のストリームおよびキューに追加されたストリームを置き換え、指定されたストリームの再生をすぐに開始します。指定されたストリームを現在のキューの最後に追加します。これにより、現在再生中のストリームが影響を受けることはありません。キューのストリームをすべて置き換えます。これにより、現在再生中のストリームが影響を受けることはありません。◯audioItem再生するオーディオストリームに関する情報を提供するオブジェクトが含まれています。オブジェクト◯audioItem.stream再生するオーディオストリームを表すオブジェクトが含まれています。オブジェクト◯audioItem.stream.urlポート443のリモートHTTPSロケーションのオーディオコンテンツの場所を特定します。詳細については、オーディオストリームの要件を参照してください。◯audioItem.stream.tokenオーディオストリームを表すopaqueトークンです。このトークンは、1024文字以内でなければなりません。このトークンはストリームを識別します。このトークンが使用された場合の例:ENQUEUEの動作を使用してる場合、ストリームを識別します。ENQUEUEの場合のプレイリストの進行状況を参照してください。画面付きのデバイスでメタデータを表示する目的で、ストリームを識別します。画面付きのAlexa搭載デバイス用画像ガイドラインを参照してください。◯audioItem.stream.expectedPreviousToken前のストリームと思われるストリームを表すopaqueなトークンです。これは前のストリームのaudioItem.stream.tokenの値と一致している必要があります。このプロパティは、playBehaviorがENQUEUEである場合にのみ追加できる必須の項目です。これは、プレイリストの進行とトラック変更のリクエストが同時に発生した場合に、発生しうる競合状態を防ぐために使用されます。詳細については、ENQUEUEの場合のプレイリストの進行状況を参照してください。offsetInMillisecondsストリームで、Alexaが再生を開始するポイントのタイムスタンプです。最初からストリームを再生する場合は0に設定します。他の値に設定すると、ストリームの指定の位置から再生を開始します。typeの2つのフィールドを持つオブジェクト。これらのフィールドを使用して、オーディオに関連したキャプションを対応デバイスの画面に表示します。キャプションは、contentとtypeの値が無いと表示されません。デバイスは機能APIを呼び出してAudioPlayerバージョン1.1以降をサポートできます。オブジェクト✕audioItem.stream.caption.typecontentフィールド内の文字列の形式。✕audioItem.stream.caption.content時刻をエンコードしたキャプションテキスト。✕audioItem.metadataオーディオに関するメタデータを設定するオブジェクトを含めて、画面付きのAlexa搭載デバイスに表示します。このメタデータはデバイスでのみ表示されることに注意してください。Alexaアプリには表示されません。このオブジェクトを含めない場合、スキルはデフォルトのオーディオ画面を使用し、スキル名とグレーの背景のみを表示します。このオブジェクトはオプションです。audioItem.metadataを含める場合は、4つすべてのmetadataプロパティ(タイトル、サブタイトル、アート、背景画像)を設定することをお勧めします。新しいメタデータ項目を、それぞれ異なるaudioItem.stream.tokenと関連付けます。画面付きのAlexa搭載デバイス用画像ガイドラインを参照してください。メタデータは、Displayインターフェースを含めているかどうかに関係なく、画面付きのデバイスで使用されることに注意してください。オブジェクト✕audioItem.metadata.title表示するタイトルテキストです。通常、これはオーディオトラックのタイトルに使用されます。✕audioItem.metadata.subtitleカテゴリーやアーティスト名など、表示するサブタイトルテキストです。✕audioItem.metadata.art表示するアルバムアートを表す画像オブジェクトです。このオブジェクトは、Displayインターフェーステンプレートで使用される画像と同じ形式を使用します。Cubeでは、小さい正方形の画像になります。Spotでは、円形にトリミングされて背景として表示されます。意図したとおりに設定するには、画像についてのガイドラインと仕様書に従ってください。画像オブジェクト✕audioItem.metadata.backgroundImage表示する背景画像を表す画像オブジェクトです。このオブジェクトは、Displayインターフェーステンプレートで使用される画像と同じ形式を使用します。Cubeでは、これは画面全体の背景画像になります。Spotでは使用されません。意図したとおりに設定するには、画像についてのガイドラインと仕様書に従ってください。typeの2つのフィールドを持つオブジェクト。これらを使用して、オーディオに関連したキャプションを生成します。captionは対応した画面付きデバイスにキャプションセットを表示します。オブジェクトは、コンテンツと共に提供されないと表示されません。デバイスは機能APIを呼び出してAudioPlayerバージョン1.1以降をサポートできます。画像オブジェクト✕caption.typecontentフィールド内の文字列の形式。✕caption.content時刻をエンコードしたキャプションテキスト。✕オーディオストリームの要件audioItem.stream.urlプロパティで指定するURLは、これらの要件を満たす必要があります。オーディオファイルは、インターネットにアクセス可能なポート443のHTTPSエンドポイント側でホスティングされる必要があります。ウェブブラウザは有効で信頼できるSSL証明書を実装している必要があります。自己署名証明書は許可されていません。これは、多くのコンテンツホスティングサービスで提供されています。S3)(アマゾンウェブサービスが提供)などのサービスでファイルをホストできます。ストリームが追加のストリームを参照するプレイリストコンテナである場合、プレイリスト内の各ストリームは、443のインターネットアクセス可能なHTTPSエンドポイントで、有効で信頼できるSSL証明書を使用してホストされている必要があります。サポートされているオーディオファイルのフォーマットは、AAC/MP4、MP3、PLS、M3U/M3U8、HLSなどです。16kbps~384kbpsENQUEUEの場合のプレイリストの進行状況audioItem.stream.expectedPreviousTokenプロパティは、プレイリストの進行とトラックの変更のリクエストが同時に発生する状況に対処するためにplayBehaviorをENQUEUEにした場合は、必須になります。audioItem.stream.expectedPreviousTokenの値は、前のストリームで提供されたaudioItem.stream.tokenプロパティと一致している必要があります。例:複数のトラックがある1つのプレイリストで、スキルがトラック2をストリーミングしています。ユーザーが「アレクサ、戻って。」と言うと、AMAZON.PreviousIntentが送信されます。同時に、トラック2が終了間際であるためAlexaがPlaybackNearlyFinishedリクエストを送信します。スキルはまずAMAZON.PreviousIntentを処理して、トラック1の新しいPlayディレクティブを送信します。するとトラック1の再生が開始されます。送信済みのPlaybackNearlyFinishedリクエストは、トラック2が再生されていることを前提としていたため、すでに古くなっています。スキルはこの古くなっているPlaybackNearlyFinishedリクエストを処理して、最初に再生していたトラック2の次のトラックであるトラック3のPlayディレクティブを送信します。このリクエストには、トラック2に設定されたexpectedPreviousTokenが含まれています。ディレクティブ内のこのexpectedPreviousTokenは、いま再生しているストリームのtokenと一致しないため、デバイスはこのディレクティブを無視します。トラック1が終了すると、AlexaはPlaybackNearlyFinishedリクエストを送信します。スキルはトラック2のPlayディレクティブで応答します。トラック1が終了すると、このトラックの再生が開始します。このチェックが行われない場合、ステップ5で送信されたディレクティブはキューにトラック3を配置し、トラック1終了時にトラック1からトラック3にオーディオがスキップされることになります。playBehaviorが他の値(REPLACE_ALLまたはREPLACE_ENQUEUED)になっている場合にaudioItem.stream.expectedPreviousTokenを含めると、エラーが発生します。画面付きのAlexa搭載デバイス用画像ガイドラインaudioItem.metadata.artプロパティとaudioItem.metadata.backgroundImageプロパティに画像を設定する場合、以下のガイドラインに注意してください。新しいメタデータを含むトラックを送信する場合は、トラックのaudioItem.stream.tokenプロパティも必ず変更してください。audioItem.metadata.artについては、正方形の画像を使用することをお勧めします。画像が正方形でない場合、デバイスに不要な黒い空白が表示されます。Spotでは画像が円形にトリミングされることに注意してください。この画像は、Displayインターフェースディレクティブで使用される画像と同じ要件に従っている必要があります。唯一の違いは、推奨されている最小サイズが下記になっていることです。下記の推奨最小サイズに設定すれば、画像が拡大されることはありません。それよりも小さい画像を設定すると、デバイスはその画像を拡大するので、画像がぼやけてしまう可能性があります。Imageオブジェクトを使用すれば、source配列に複数の画像URLを設定できます。Displayインターフェースを使用すると、デバイスでは最高解像度で画像が表示されます。Imageオブジェクトの特定の画像のsourceに関する以下のプロパティは、オーディオの背景画像とアルバムアートを表示するときには使用されないため、オブジェクトに含める必要はありません。指定されたオーディオストリームのメタデータは、Playディレクティブ内のaudioItem.stream.tokenによって識別されます。特定のaudioItem.stream.tokenに関連するメタデータは、最大5日間Alexaサービスにキャッシュされる可能性があるため、メタデータの変更(別の画像や、タイトルテキストの変更など)はすぐにデバイスに反映されない場合があることに注意してください。同じオーディオストリームについて別の画像やタイトルテキストを試しながらテストしているときに、このような現象が発生する場合があります。そのときは、別のaudioItem.stream.tokenの新しいPlayディレクティブを送信してキャッシュを削除できます。画面付きのAlexa搭載デバイスで使用される画像の推奨最小サイズは以下の表のとおりです。300に拡大され、アルバムアートとして表示されます。480に拡大され、円形にトリミングされ、不透明度70%の黒い画面で背景画像として表示されます。640に拡大され、背景画像として表示されます。Cubeにそのまま表示されるため、必要があればソース画像にフェード効果を適用してください。画像に不透明度70%の黒いレイヤーをかぶせて画像をフェードしたように見せ、テキストを目立たせることができます。Stopディレクティブ現在のオーディオ再生を停止します。◯ClearQueueディレクティブオーディオ再生のキューを削除します。このディレクティブを設定して、現在再生中のストリームを停止せずにキューを削除したり、キューを削除して現在再生中のストリームを停止したりできます。必須typeAudioPlayer.ClearQueueに設定します。◯clearBehaviorキューを削除する動作を説明します。有効な値は以下のとおりです。CLEAR_ENQUEUED:キューを削除して、現在再生中のストリームの再生を継続します。CLEAR_ALL:再生キュー全体を削除して、現在再生中のストリームを停止します(再生している場合)。◯PlaybackStartedリクエストPlayディレクティブで以前に送信されたオーディオストリームの再生をAlexaが開始すると、スキルに送信されます。これにより、スキルは再生が正常に開始したことを確認できます。このリクエストは、Alexaが音声リクエストのために再生を一時停止し、その後再開したときにも送信されます。特定のリクエストの固有IDを表します。8601形式で表された文字列で、Alexaがリクエストを送信した日時を提供します。スキルをウェブサービスとしてホスティングしているときに、リクエストを検証するために使用されます。オーディオストリームを表すopaqueトークンです。Playディレクティブを送信するときに、このトークンを提供します。PlaybackStartedリクエストが送信された時点のトラックのオフセットをミリ秒単位で指定します。ユーザーのロケールを示す文字列です。サポートされているロケールコードを参照してください。完全なリクエストのフォーマットについては、カスタムスキルのJSONインターフェースのリファレンスのリクエストの形式を参照してください。有効な応答タイプスキルは、PlaybackStartedに対してStopまたはClearQueueディレクティブで応答できます。応答に以下を含めることはできません。outputSpeech、card、repromptなどの標準のプロパティ。他の任意のAudioPlayerディレクティブ。Dialogディレクティブなど、他のインターフェースからの他のディレクティブ。PlaybackFinishedリクエストAlexaが再生しているストリームが終了すると、送信されます。スキルがStopディレクティブで再生を明示的に停止した場合、AlexaはPlaybackFinishedの代わりにPlaybackStoppedを送信します。特定のリクエストの固有IDを表します。8601形式で表された文字列で、Alexaがリクエストを送信した日時を提供します。スキルをウェブサービスとしてホスティングしているときに、リクエストを検証するために使用されます。オーディオストリームを表すopaqueトークンです。Playディレクティブを送信するときに、このトークンを提供します。PlaybackFinishedリクエストが送信された時点のトラックのオフセットをミリ秒単位で指定します。ユーザーのロケールを示す文字列です。サポートされているロケールコードを参照してください。有効な応答タイプスキルは、PlaybackFinishedに対してStopまたはClearQueueディレクティブで応答できます。応答に以下を含めることはできません。outputSpeech、card、repromptなどの標準のプロパティ。他の任意のAudioPlayerディレクティブ。Dialogディレクティブなど、他のインターフェースからの他のディレクティブ。PlaybackStoppedリクエスト以下のAudioPlayerディレクティブのいずれかに応答して、Alexaがオーディオストリームの再生を停止したときに送信されます。StopPlayとREPLACE_ALLのplayBehaviorClearQueueとCLEAR_ALLのclearBehaviorユーザーがAlexaに音声リクエストをした場合にも再生が一時停止になるので、このリクエストが送信されます。この場合、音声対話が完了すると、再生が自動的に開始されます。オーディオストリームが終わりに近づいたために再生が停止した場合、AlexaはPlaybackStoppedの代わりにPlaybackFinishedを送信します。特定のリクエストの固有IDを表します。8601形式で表された文字列で、Alexaがリクエストを送信した日時を提供します。スキルをウェブサービスとしてホスティングしているときに、リクエストを検証するために使用されます。オーディオストリームを表すopaqueトークンです。Playディレクティブを送信するときに、このトークンを提供します。PlaybackStoppedリクエストが送信された時点のトラックのオフセットをミリ秒単位で指定します。ユーザーのロケールを示す文字列です。サポートされているロケールコードを参照してください。有効な応答タイプスキルは、PlaybackStoppedに応答を返すことはできません。PlaybackNearlyFinishedリクエストデバイスが、次のストリームをキューに追加する準備ができている場合に送信されます。オーディオストリームのプレイリストを次に進めるには、このリクエストに対して次のストリームのPlayディレクティブで応答し、ENQUEUEまたはREPLACE_ENQUEUEDにplayBehaviorを設定します。これにより、現在の再生を停止することなく、キューに新しいストリームを追加できます。Alexaは、現在再生中の曲が終了すると、新しいオーディオアイテムのストリーミングを開始します。特定のリクエストの固有IDを表します。8601形式で表された文字列で、Alexaがリクエストを送信した日時を提供します。スキルをウェブサービスとしてホスティングしているときに、リクエストを検証するために使用されます。現在再生中のオーディオストリームを表すopaqueトークンです。Playディレクティブを送信するときに、このトークンを提供します。PlaybackNearlyFinishedリクエストが送信された時点のトラックのオフセットをミリ秒単位で指定します。ユーザーのロケールを示す文字列です。サポートされているロケールコードを参照してください。有効な応答タイプスキルは、PlaybackNearlyFinishedに対して、どのAudioPlayerディレクティブでも応答できます。応答に以下を含めることはできません。outputSpeech、card、repromptなどの標準のプロパティ。Dialogディレクティブなど、他のインターフェースからの他のディレクティブ。PlaybackFailedリクエストストリームを再生しようとしているときに、Alexaにエラーが発生した場合に送信されます。}}このリクエストタイプには、requestオブジェクトのプロパティと、currentPlaybackStateオブジェクトのプロパティという、2つのtokenプロパティが含まれています。request.tokenプロパティは、再生に失敗したストリームを表します。currentPlaybackState.tokenプロパティの値は、Alexaがストリームを再生していてキューの次のストリームをバッファリングしようとしたときにエラーが発生すると、異なる場合があります。この場合、currentPlaybackState.tokenは正常に再生されていたストリームを表します。特定のリクエストの固有IDを表します。8601形式で表された文字列で、Alexaがリクエストを送信した日時を提供します。スキルをウェブサービスとしてホスティングしているときに、リクエストを検証するために使用されます。Playディレクティブから提供されるopaqueトークンで、再生に失敗したストリームを表します。ユーザーのロケールを示す文字列です。サポートされているロケールコードを参照してください。エラー情報を持つオブジェクトが含まれています。特定のタイプのエラーを識別します。各エラータイプの詳細は、以下の表に記載されています。デバイスで発生したエラーの説明です。エラー発生時の再生アクティビティに関する詳細を提供するオブジェクトが含まれています。エラー発生時に再生中のオーディオストリームを表すopaqueトークンです。これは、request.tokenプロパティの値と異なる場合があることに注意してください。エラー発生時のトラックのオフセットをミリ秒単位で指定します。エラー発生時のプレーヤーのステータスを以下のように識別します。PLAYING、PAUSED、FINISHED、BUFFER_UNDERRUN、またはIDLE。不明なエラーが発生しました。リクエストが不正な形式であるとAlexaが認識しました。不正なリクエストである、認証に失敗した、アクセス権がない、該当するものがない、などがあります。AlexaがストリームのURLにアクセスできませんでした。Alexaはリクエストを受け取りましたが、適切に処理できませんでした。デバイスで内部エラーが発生しました。有効な応答タイプスキルは、PlaybackFailedに対して、どのAudioPlayerディレクティブでも応答できます。応答に以下を含めることはできません。outputSpeech、card、repromptなどの標準のプロパティ。Dialogディレクティブなど、他のインターフェースからの他のディレクティブ。System.ExceptionEncounteredリクエストAudioPlayerリクエストに対する応答が原因でエラーが発生した場合、System.ExceptionEncounteredリクエストがスキルに送信されます。応答に含まれるディレクティブはすべて無視されます。特定のリクエストの固有IDを表します。8601形式で表された文字列で、Alexaがリクエストを送信した日時を提供します。スキルをウェブサービスとしてホスティングしているときに、リクエストを検証するために使用されます。ユーザーのロケールを示す文字列です。サポートされているロケールコードを参照してください。エラー情報を持つオブジェクトが含まれています。特定のタイプのエラー(INVALID_RESPONSE、DEVICE_COMMUNICATION_ERROR、INTERNAL_ERROR)を識別します。デバイスで発生したエラーの説明です。エラーの原因となったリクエストのrequestIdです。有効な応答タイプスキルは、System.ExceptionEncounteredに応答を返すことはできません。