開発者コンソール

Alexa.PlaybackControllerインターフェース


Alexa.PlaybackControllerインターフェース

ユーザーがトランスポートコントロールの発話(停止、早戻し、再生など)を行うと、Alexa.PlaybackControllerインターフェースはトランスポートコントロールディレクティブ(PausePlayStopResumeNextPreviousFastForwardRewindStartOver)を送信して、メディアコントロールのアクションを指示します。

トランスポートコントロールディレクティブの発話

ユーザーが以下の発話を行うと、Alexaはトランスポートコントロールディレクティブをアプリ(アプリのみの統合の場合)またはLambda(クラウド側の統合の場合)に送信します。

機能 サンプル発話 想定されるレスポンス
一時停止
認定に必須

pause

ウェブプレーヤーやリモコンで一時停止ボタンを押した場合と同様に、メディアが一時停止されます。

再生
認定に必須

Play

ウェブプレーヤーやリモコンで再生ボタンを押した場合と同様に、メディアが再生されます。

停止
認定に必須

stop

ウェブプレーヤーやリモコンで停止ボタンを押した場合と同様に、メディアが停止されます。

再開
認定に必須

Resume

ウェブプレーヤーやリモコンで再生ボタンを押した場合と同様に、メディアの再生が再開されます。

最初から再生
認定に必須

Start over

シーク位置がメディアの先頭に戻り、メディアが最初から再生されます。

早送り
認定に必須

Fast Forward

メディアが10秒早送りされます。

早戻し
認定に必須

Rewind

メディアが10秒早戻しされます。

前へ
認定に必須

Previous

前のエピソードが再生されます。それができない場合は、現在のプレイリスト内で前のエピソードに移動します。

次へ
認定に必須

Next

次のエピソードが再生されます。それができない場合は、現在のプレイリスト内で次のエピソードに移動します。

機能 サンプル発話 想定されるレスポンス
一時停止
認定に必須

pause / mets sur pause

ウェブプレーヤーやリモコンで一時停止ボタンを押した場合と同様に、メディアが一時停止されます。

再生
認定に必須

joue

ウェブプレーヤーやリモコンで再生ボタンを押した場合と同様に、メディアが再生されます。

停止
認定に必須

arrête / stop / stoppe

ウェブプレーヤーやリモコンで停止ボタンを押した場合と同様に、メディアが停止されます。

再開
認定に必須

Not supported

ウェブプレーヤーやリモコンで再生ボタンを押した場合と同様に、メディアの再生が再開されます。

最初から再生
認定に必須

recommence

シーク位置がメディアの先頭に戻り、メディアが最初から再生されます。

早送り
認定に必須

avance

fast forward

メディアが10秒早送りされます。

早戻し
認定に必須

rewind

rembobine

メディアが10秒早戻しされます。

前へ
認定に必須

précédent(e)

前のエピソードが再生されます。それができない場合は、現在のプレイリスト内で前のエピソードに移動します。

次へ
認定に必須

prochain(e)

suivant(e)

next

次のエピソードが再生されます。それができない場合は、現在のプレイリスト内で次のエピソードに移動します。

機能 サンプル発話 想定されるレスポンス
一時停止
認定に必須

pause / mets sur pause

ウェブプレーヤーやリモコンで一時停止ボタンを押した場合と同様に、メディアが一時停止されます。

再生
認定に必須

joue

ウェブプレーヤーやリモコンで再生ボタンを押した場合と同様に、メディアが再生されます。

停止
認定に必須

arrête / stop / stoppe

ウェブプレーヤーやリモコンで停止ボタンを押した場合と同様に、メディアが停止されます。

再開
認定に必須

Not supported

ウェブプレーヤーやリモコンで再生ボタンを押した場合と同様に、メディアの再生が再開されます。

最初から再生
認定に必須

recommence

シーク位置がメディアの先頭に戻り、メディアが最初から再生されます。

早送り
認定に必須

avance

メディアが10秒早送りされます。

早戻し
認定に必須

rembobine

メディアが10秒早戻しされます。

前へ
認定に必須

précédent(e)

前のエピソードが再生されます。それができない場合は、現在のプレイリスト内で前のエピソードに移動します。

次へ
認定に必須

prochain(e)

suivant(e)

next

次のエピソードが再生されます。それができない場合は、現在のプレイリスト内で次のエピソードに移動します。

機能 サンプル発話 想定されるレスポンス
一時停止
認定に必須

pause

pausier [DeviceLocation] pausier auf? [DeviceType]

pause auf? [DeviceLocation]? [DeviceBrand]

pausier [AppName]

pausier überall

ウェブプレーヤーやリモコンで一時停止ボタンを押した場合と同様に、メディアが一時停止されます。

再生
認定に必須

spiel auf? [DeviceBrand]

spiel auch? auf [DeviceType] [DeviceBrand]?

spiel hier auch

spiel etwas anderes

ウェブプレーヤーやリモコンで再生ボタンを押した場合と同様に、メディアが再生されます。

停止
認定に必須

stopp

halt an

hör auf

stopp [DeviceLocation]

stopp [DeviceBrand]

stopp [DeviceType]

stoppe auf dem [DeviceLocation] [DeviceBrand]

ウェブプレーヤーやリモコンで停止ボタンを押した場合と同様に、メディアが停止されます。

再開
認定に必須

fortsetzen

das fortsetzen

ウェブプレーヤーやリモコンで再生ボタンを押した場合と同様に、メディアの再生が再開されます。

最初から再生
認定に必須

neu starten

spiel vom anfang

start von vorn

von anfang an abspielen

von vorne auf [DeviceBrand] abspielen

beginne erneut

noch mal von vorne

noch einmal beginnen

シーク位置がメディアの先頭に戻り、メディアが最初から再生されます。

早送り
認定に必須

spul vor

spul auf? [AppName] vor

メディアが10秒早送りされます。

早戻し
認定に必須

spul zurück

spul [AppName] zurück

spul auf? [DeviceBrand] zurück spul [DeviceBrand] [Duration] zurück

メディアが10秒早戻しされます。

前へ
認定に必須

vorherige

vorheriges

zurück

eins zurück

geh zurück

geh zum vorherigen

vorheriges auf dem [DeviceLocation]? [DeviceBrand]

spring/geh zurück/nach hinten auf [AppName]

vorheriges auf [DeviceLocation] [DeviceType]

vorheriges video/kanal auf [DeviceLocation] [DeviceType]

überall vorheriges

auf allen [DeviceType] vorheriges

前のエピソードが再生されます。それができない場合は、現在のプレイリスト内で前のエピソードに移動します。

次へ
認定に必須

nächste

nächstes

das nächste

spring/geh vor

spring/geh vorwärts vor

überspring das

eins weiter/vorwärts

weiter

spring nach vorn

spring nach vorn auf [AppName]/[DeviceBrand]

nächstes im [DeviceLocation]

nächstes auf [DeviceLocation]? [DeviceType]/[DeviceBrand]

gib mir das nächste von [AppName]

nächstes auf allen [DeviceType]

次のエピソードが再生されます。それができない場合は、現在のプレイリスト内で次のエピソードに移動します。

機能 サンプル発話 想定されるレスポンス
一時停止
認定に必須

pause रोको एक second रुक जाओ एक second wait करना एक second pause हो जाओ ठहरना ज़रा थम जा freeze[Anaphor] को रोक दो[AppName] को pause कर दो मेरे [DeviceLocation] [Device] को pause करना मेरे [DeviceLocation]

[DeviceType] को pause करना[DeviceLocation] पे/पर Device को रोक दो ज़रा

ウェブプレーヤーやリモコンで一時停止ボタンを押した場合と同様に、メディアが一時停止されます。

再生
認定に必須

[SportsTeam] का [Event] लगा/चला दो [ActiveUserTrigger] [DeviceBrand] पर लगाओ/चलाओ [Country] में जो [SortType] है लगाओ/चलाओ [Country] से [Date] के [SortType] लगा/बजा देना [Anaphor] [Device] पर बजाएँ/लगाएँ [ListPosition] [Anaphor] लगा/बजा दीजिये [Country] के [City] में [SortType] है बजाओ/लगाओ [League] [Event] लगा/बजा दीजिये [Anaphor] play करो [ActiveUserTrigger] [Date] ही के [SortType] बजाओ [SportsTeam] versus [SportsTeamOpponent] का Event लगा दे [League] [Event] का [Version] चलाओ [Anaphor] [ActiveUserTrigger] [Device] पर लगा दो [ListPosition] बजा दो [Sport] [Event] लगाइए/बजाइए [Date] [Anaphor] play करो [DeviceLocation] पे [DeviceBrand] बजाओ/लगाओ

ウェブプレーヤーやリモコンで再生ボタンを押した場合と同様に、メディアが再生されます。

停止
認定に必須

चुप हो जाओ/बस कर/quiet/चुप/शांत/शांति/shush/मुँह बंद करो stop [Anaphor] बंद करो/रोको [Anaphor] [Anaphor] stop/बंद करो/रोको [Anaphor] [MediaType] बंद करना stop [AppName] [AppName] बंद stop [Device] [Device] रोको stop [LocationNonSpecificQuantity] [LocationNonSpecificQuantity] stop/रोको stop [DeviceLocation] [DeviceLocation] stop/रोको stop [MediaType] [MediaType] stop/रोको

ウェブプレーヤーやリモコンで停止ボタンを押した場合と同様に、メディアが停止されます。

再開
認定に必須

जारी रखो

resume करो

ウェブプレーヤーやリモコンで再生ボタンを押した場合と同様に、メディアの再生が再開されます。

最初から再生
認定に必須

फिर से चलाओ

फिर से शुरू करो

シーク位置がメディアの先頭に戻り、メディアが最初から再生されます。

早送り
認定に必須

[AppName] पर थोड़ा आगे कर दो[AppName] में fast forward करें[Anaphor] आगे/forward करनाfast forward करो[Anaphor] आगे करना ज़रा[Anaphor] वाले को आगे बढ़ाओ

メディアが10秒早送りされます。

早戻し
認定に必須

थोड़ा reverse/rewind/पीछे करोrewind[AppName] को rewind करो[Anaphor] reverse/rewind/पीछे करो[DeviceLocation] के [Device] को rewind करना

メディアが10秒早戻しされます。

前へ
認定に必須

previous/पीछे/पिछला/पिछलीprevious/पीछे/पिछला/पिछली वाली recipe [VisualModeTrigger][Anaphor] वापस जाओprevious/पीछे/पिछला/पिछली [Anaphor] पर वापिस जाओ पिछला वाला [Episode][Anaphor] पहला वाला [Episode] पर जानाprevious [LocationNonSpecificQuantity][LocationNonSpecificQuantity] previous/पीछे/पिछला/पिछली वाला लगाओ[DeviceBrand] पे पिछलाprevious/पीछे/पिछला/पिछली वाला [DeviceBrand][Anaphor] [DeviceBrand] पर previous/पीछे/पिछला/पिछली वाला[DeviceLocation] के [DeviceBrand] पर पिछला वाला[AppName] में पिछली वाली पर वापस जाओprevious/पीछे/पिछला/पिछली वाला [AppName] पर जा[ActiveUserTrigger] [Quantifier] [DeviceType] में पीछे जाओ पिछला [MediaType] play करो

前のエピソードが再生されます。それができない場合は、現在のプレイリスト内で前のエピソードに移動します。

次へ
認定に必須

[GroupDeviceBrand] [HomeAutomationType] पर अगला लगाओ[GroupDeviceBrand] पर अगला लगाओ[GroupDeviceBrand] वाले [HomeAutomationType] पर अगला चलाना[AppName] पर इसके बाद वाला दो[AppName] पर मुझे next वाला दे देनाnext recipe अगली recipe[DeviceLocation] पर इसके बाद वाला दो[LocationNonSpecificQuantity] अगला चलाओ अगला/next [Episode] play करो[DeviceLocation] पर DeviceBrand अगला वाला दो

次のエピソードが再生されます。それができない場合は、現在のプレイリスト内で次のエピソードに移動します。

機能 サンプル発話 想定されるレスポンス
一時停止
認定に必須

metti in pausa / voglio mettere in pausa / posso mettere in pausa

ウェブプレーヤーやリモコンで一時停止ボタンを押した場合と同様に、メディアが一時停止されます。

再生
認定に必須
riproduci /metti / fai partire

ウェブプレーヤーやリモコンで再生ボタンを押した場合と同様に、メディアが再生されます。

停止
認定に必須

stop / ferma / spegni / smetti / basta / stoppa 

ウェブプレーヤーやリモコンで停止ボタンを押した場合と同様に、メディアが停止されます。

再開
認定に必須

riprendi

ウェブプレーヤーやリモコンで再生ボタンを押した場合と同様に、メディアの再生が再開されます。

最初から再生
認定に必須

ricomincia

シーク位置がメディアの先頭に戻り、メディアが最初から再生されます。

早送り
認定に必須

manda avanti / vai avanti / avanti veloce

メディアが10秒早送りされます。

早戻し
認定に必須

vai indietro / mandalo indietro / indietro veloce / torna indietro

メディアが10秒早戻しされます。

前へ
認定に必須

ritorna al precedente / vai indietro di uno / precedente / torna indietro / indietro

前のエピソードが再生されます。それができない場合は、現在のプレイリスト内で前のエピソードに移動します。

次へ
認定に必須

prossima / seguente / avanti / salta / successivo

次のエピソードが再生されます。それができない場合は、現在のプレイリスト内で次のエピソードに移動します。

機能 サンプル発話 想定されるレスポンス
一時停止
認定に必須

ポーズ 一旦停止 一旦止めて[Anaphor]で一時停止[AppName]を一旦停止[DeviceLocation]の[DeviceBrand]をポーズして[DeviceLocation]の[DeviceType]を一時停止[DeviceBrand]をポーズして[DeviceType]を一旦停止して

ウェブプレーヤーやリモコンで一時停止ボタンを押した場合と同様に、メディアが一時停止されます。

再生
認定に必須

[SportsTeam]の[Event]を再生して[Country]で[SortType]のやつかけて[Country]で[Date][SortType]のやつ流して[ListPosition]の[Anaphor]再生[Country]の[City]で[SortType]のやつストリームして[City]で[SortType]のやつ再生して[League]の[Event]かけて[MediaPlayer]で[AppName]を再生して[ActiveUserTrigger][SortType]を再生して[SportsTeam]対[SportsTeamOpponent]の[Event]をかけて[Version]の[League]の[Event]をストリームして[Sport]の[Event]を再生して[ActiveUserTrigger][DeviceBrand]でストリームして[DeviceBrand]でかけて[DeviceLocation]の[DeviceBrand]で流して

ウェブプレーヤーやリモコンで再生ボタンを押した場合と同様に、メディアが再生されます。

停止
認定に必須

ストップ/して とめて 停止して もういい もういいや もういいよ もういいです 黙れ 中止 中止して 終了/して/[Quantifier]止めて[DeviceLocation]での再生を止めて[DeviceLocation]の[DeviceBrand]での再生をストップ[DeviceBrand]の再生止めて[DeviceType]をとめて[AppName]を終了[Anaphor]止めて

ウェブプレーヤーやリモコンで停止ボタンを押した場合と同様に、メディアが停止されます。

再開
認定に必須

再開して

ウェブプレーヤーやリモコンで再生ボタンを押した場合と同様に、メディアの再生が再開されます。

最初から再生
認定に必須

最初から始めて

シーク位置がメディアの先頭に戻り、メディアが最初から再生されます。

早送り
認定に必須

[AppName]早送り[MediaType]を早送りして

メディアが10秒早送りされます。

早戻し
認定に必須

巻き戻して

[AppName]巻き戻して[MediaType]巻き戻し

[DeviceLocation]の[DeviceType]巻き戻し

メディアが10秒早戻しされます。

前へ
認定に必須

前のエピソードが再生されます。それができない場合は、現在のプレイリスト内で前のエピソードに移動します。

次へ
認定に必須

次 スキップ 次に行って[DeviceLocation]で次に行って[DeviceLocation]の[DeviceBrand]で次に行って[LocationNonSpecificQuantity]で次を再生[Episode]を再生して[VideoName]の[Episode]を再生[DeviceBrand]で再生

次のエピソードが再生されます。それができない場合は、現在のプレイリスト内で次のエピソードに移動します。

機能 サンプル発話 想定されるレスポンス
一時停止
認定に必須

pausar/interromper

ウェブプレーヤーやリモコンで一時停止ボタンを押した場合と同様に、メディアが一時停止されます。

再生
認定に必須
tocar/assistir/reproduzir 

ウェブプレーヤーやリモコンで再生ボタンを押した場合と同様に、メディアが再生されます。

停止
認定に必須

parar

ウェブプレーヤーやリモコンで停止ボタンを押した場合と同様に、メディアが停止されます。

再開
認定に必須

continuar/ continue/continua

ウェブプレーヤーやリモコンで再生ボタンを押した場合と同様に、メディアの再生が再開されます。

最初から再生
認定に必須

começar/começa/comece de novo

シーク位置がメディアの先頭に戻り、メディアが最初から再生されます。

早送り
認定に必須

avançar/ ir para frente

メディアが10秒早送りされます。

早戻し
認定に必須

voltar/retroceder/rebobinar

メディアが10秒早戻しされます。

前へ
認定に必須

前のエピソードが再生されます。それができない場合は、現在のプレイリスト内で前のエピソードに移動します。

次へ
認定に必須

próximo/próxima

次のエピソードが再生されます。それができない場合は、現在のプレイリスト内で次のエピソードに移動します。

機能 サンプル発話 想定されるレスポンス
一時停止
認定に必須

pausa

ウェブプレーヤーやリモコンで一時停止ボタンを押した場合と同様に、メディアが一時停止されます。

再生
認定に必須

pon

reproduce

ウェブプレーヤーやリモコンで再生ボタンを押した場合と同様に、メディアが再生されます。

停止
認定に必須

para

ウェブプレーヤーやリモコンで停止ボタンを押した場合と同様に、メディアが停止されます。

再開
認定に必須

continúa

ウェブプレーヤーやリモコンで再生ボタンを押した場合と同様に、メディアの再生が再開されます。

最初から再生
認定に必須

empieza de nuevo

vuelve a empezar

comienza de nuevo

vuelve a iniciar

vuelve a comenzar

シーク位置がメディアの先頭に戻り、メディアが最初から再生されます。

早送り
認定に必須

adelanta

メディアが10秒早送りされます。

早戻し
認定に必須

rebobina

メディアが10秒早戻しされます。

前へ
認定に必須

anterior

前のエピソードが再生されます。それができない場合は、現在のプレイリスト内で前のエピソードに移動します。

次へ
認定に必須

siguiente

salta

muestra el siguiente

siguiente en el sonos

próxima en el jardín

次のエピソードが再生されます。それができない場合は、現在のプレイリスト内で次のエピソードに移動します。

ほかのディレクティブの場合と同様に、Discoverディレクティブを受信したら、ビデオスキルでサポートしているPlaybackController機能を指定する必要があります。

PlaybackControllerディレクティブの処理

PlaybackControllerインターフェースから送信されるディレクティブには、いくつかのタイプがあります。それぞれについて以下の各セクションで説明します。

リクエストの例

EXTRA_DIRECTIVE_NAMESPACE: Alexa.PlaybackController
EXTRA_DIRECTIVE_NAME: <トランスポートコントロールコマンド>
EXTRA_DIRECTIVE_PAYLOAD_VERSION: 3
EXTRA_DIRECTIVE_PAYLOAD: payload

payloadにはオプションのフィールドが1つ含まれます。

"payload": {
  "experience": {
        "mode": "VOICE_OPTIMIZED",
        }
    }

<トランスポートコントロールコマンド>の値は以下のいずれかになります。

  • pause
  • play
  • stop
  • resume
  • rewind
  • fastForward
  • previous
  • next
  • startOver

payloadには空のオブジェクト({})が格納されます。

{
  "directive": {
    "header": {
      "namespace": "Alexa.PlaybackController",
      "name": "<トランスポートコントロールコマンド>",
      "messageId": "abc-123-def-456",
      "payloadVersion": "3"
    },
    "endpoint": {
      "scope": {
        "type": "BearerToken",
        "token": "access-token-from-skill"
      },
      "endpointId": "VSKTV",
      "cookie": {

      }
    },
    "payload": {
         "experience": {
               "mode": "VOICE_OPTIMIZED",
               }
           }
     }
   }

<トランスポートコントロールコマンド>の値は以下のいずれかになります。

  • pause
  • play
  • stop
  • resume
  • rewind
  • fastForward
  • previous
  • next
  • startOver

payloadには空のオブジェクト({})が格納されます。

エクスペリエンスタイプ

ペイロードには、オプションのフィールドとして、experienceオブジェクトが含まれます。experienceオブジェクトを使用すると、検索に使用されたデバイスに基づいて、検索結果の表示を最適化できます。たとえば、ユーザーがFire TVリモコンを使用して検索した場合、ユーザーはリモコンを使用して結果を閲覧できるため、experienceオブジェクトによって多数の検索結果が表示されます。一方、Fire TVとペアリングされたEchoを使用して検索リクエストが行われた場合は、experienceオブジェクトによって表示される結果の数と表示方法が制限され、ユーザーはリモコンを使用せずに結果を確認できます。

experienceオブジェクトは、検索結果の表示方法を決定するmodeオブジェクトで構成されています。modeオブジェクトは、 VOICE_OPTIMIZEDDEFAULTの2つの値を取ります。

  • VOICE_OPTIMIZED: 音声専用デバイス向けに最適化された表示方法です。リモコンを使用せずに音声で操作できる検索結果のリストが表示されます。

  • DEFAULT: 検索に使用されたデバイスに関係なく、すべての検索結果をリスト形式で表示する、デフォルトの表示方法です。

上位互換性を確保するため、modeで不明な値を受け取った場合は、失敗とするのではなく、DEFAULTにフォールバックするようにしてください。

PlaybackControllerディレクティブの処理

PlaybackControllerディレクティブには、メディアの再生中に使用されるトランスポートコントロールコマンドが含まれています。アクションの多くは、ユーザーがリモコンの同等のボタンを押したときに実行されるアクションと同様です。以下のセクションでは、さまざまなPlaybackControllerディレクティブの処理に関して想定されるガイダンスを提供します。

Pauseディレクティブ

pauseでは、ユーザーがリモコンの「一時停止」ボタンを押したときと同じアクションを実行する必要があります。

Playディレクティブ

playでは、ユーザーがリモコンの「再生」ボタンを押したときと同じアクションを実行する必要があります。

Stopディレクティブ

stopでは、オーディオまたはビデオコンテンツの再生を停止するようリクエストする必要があります。

Resumeディレクティブ

resumeでは、ユーザーがリモコンで再生の一時停止を解除した場合(つまり、再生が既に一時停止されている状態で「再生」ボタンを押した場合)と同じアクションを実行する必要があります。

Nextディレクティブ

nextでは、次のエピソードに移る必要があります。できない場合は、開発者が選択した次の関連ビデオコンテンツ(または開発者が選択したプレイリストの次の項目)をユーザーに表示する必要があります。

Previousディレクティブ

previousでは、前のエピソードに移る必要があります。できない場合は、開発者が選択したプレイリストの前の項目をユーザーに表示する必要があります。

FastForwardディレクティブ

fastForwardでは、再生を30秒早送りする必要があります。早送り時の画面表示は、リモコンで早送りするときのようにカーソルがゆっくりと動く画面にはしないでください。また、ユーザーが音声で早送りをリクエストした後、「アレクサ、再生して」と言う必要がないようにしてください。ユーザーがこのコマンドを使用した場合、30秒早送りして自動的に再生が再開されることがユーザーにとって好ましい動作です。さらに早送りしたい場合は、SeekControllerディレクティブを使用できます。

Rewindディレクティブ

rewindでは、再生を30秒早戻しする必要があります。早戻し時の画面表示は、リモコンで早戻しするときのようにカーソルがゆっくりと動く画面にはしないでください。また、ユーザーが音声で早戻しをリクエストした後、「アレクサ、再生して」と言う必要がないようにしてください。ユーザーがこのコマンドを使用した場合、30秒早戻しして自動的に再生が再開されることがユーザーにとって好ましい動作です。さらに早戻しする場合は、SeekControllerディレクティブを使用できます。

StartOverディレクティブ

startOverでは、オーディオまたはビジュアルコンテンツの最初から再生を開始する必要があります。

レスポンスの例

アプリでディレクティブが正常に処理された場合、BroadcastReceiverクラスは、次のように、成功ステータスを含む成功のインテントを返送します。

if (response != null && sendResponse) {
  Intent success = new Intent().putExtra(VSKIntentConstants.EXTRA_DIRECTIVE_STATUS, didSucceed);
  try {
    response.send(context, 0, success);
  } catch(PendingIntent.CanceledException e) {
    // 応答に時間がかかりすぎているため、ログにエラーを出力します
  }
}

詳細については、手順7: BroadcastReceiverを追加するを参照してください。また、具体的なコードの例については、サンプルアプリAlexaDirectiveReceiverクラスを参照してください。

PlaybackControllerインターフェースからトランスポートコントロールディレクティブを受信したら、Alexaにレスポンスを送り返します。

{
 "context": {
   "properties": []
 },
 "event": {
   "header": {
     "messageId": "abc-123-def-456",
     "namespace": "Alexa",
     "name": "Response",
     "payloadVersion": "3"
   },
   "endpoint":{
      "endpointId":"VSKTV"
   },
   "payload":{ }
}
}

何らかの理由でユーザーのリクエストを完了できない場合は、エラーレスポンスを返す必要があります。詳細については、エラー処理を参照してください。

インターフェース機能に対するサポートの宣言

アプリでPlaybackControllerを受け取るには、機能を宣言する際にこのインターフェースのサポートを明示する必要があります。アプリのみの統合での機能の宣言の詳細については、以下を参照してください。

AlexaからLambdaにPlaybackControllerディレクティブが送信されるようにするには、Alexa.Discoveryインターフェースを介して送信されたDiscoverディレクティブへのレスポンスで、そのサポートを明示する必要があります。詳細については、Discoveryインターフェースを参照してください。