開発者コンソール

Alexa.PlaybackControllerインターフェース


Alexa.PlaybackControllerインターフェース

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

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

ユーザーが以下の発話を行うと、AlexaはLambdaにトランスポートコントロールディレクティブを送信します。

機能 サンプル発話 想定されるレスポンス バージョン
一時停止

pause

pause

pausier <DeviceLocation> pausier auf? <DeviceType>

pause auf? <DeviceLocation>? <DeviceBrand>

pausier <AppName>

pausier überall

pause / mets sur pause

pause / mets sur pause

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

pausa

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

pausar/interromper

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

<DeviceType> को pause करना<DeviceLocation> पे/पर Device को रोक दो ज़रा

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

1.0

再生

Play

spiel auf? <DeviceBrand>

spiel auch? auf <DeviceType> <DeviceBrand>?

spiel hier auch

spiel etwas anderes

joue

joue

riproduci /metti / fai partire

pon

reproduce

<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>で流して

tocar/assistir/reproduzir 

<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> बजाओ/लगाओ

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

1.0

停止

stop

stopp

halt an

hör auf

stopp <DeviceLocation>

stopp <DeviceBrand>

stopp <DeviceType>

stoppe auf dem <DeviceLocation> <DeviceBrand>

arrête / stop / stoppe

arrête / stop / stoppe

stop / ferma / spegni / smetti / basta / stoppa 

para

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

parar

चुप हो जाओ/बस कर/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/रोको

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

1.0

再開

Resume

fortsetzen

das fortsetzen

Not supported

Not supported

riprendi

continúa

再開して

continuar/ continue/continua

जारी रखो

resume करो

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

1.0

最初から再生

Start over

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

recommence

recommence

ricomincia

empieza de nuevo

vuelve a empezar

comienza de nuevo

vuelve a iniciar

vuelve a comenzar

最初から始めて

começar/começa/comece de novo

फिर से चलाओ

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

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

1.0

早送り

Fast Forward

spul vor

spul auf? <AppName> vor

avance

avance

fast forward

manda avanti / vai avanti / avanti veloce

adelanta

<AppName>早送り<MediaType>を早送りして

avançar/ ir para frente

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

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

1.0

巻き戻し

Rewind

spul zurück

spul <AppName> zurück

spul auf? <DeviceBrand> zurück spul <DeviceBrand> <Duration> zurück

rembobine

rewind

rembobine

vai indietro / mandalo indietro / indietro veloce / torna indietro

rebobina

巻き戻して

<AppName>巻き戻して<MediaType>巻き戻し

<DeviceLocation>の<DeviceType>巻き戻し

voltar/retroceder/rebobinar

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

メディアが10秒巻き戻されます。

1.0

前へ

Previous

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

précédent(e)

précédent(e)

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

anterior

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 करो

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

1.0

次へ

Next

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>

prochain(e)

suivant(e)

next

prochain(e)

suivant(e)

next

prossima / seguente / avanti / salta / successivo

siguiente

salta

muestra el siguiente

siguiente en el sonos

próxima en el jardín

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

próximo/próxima

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

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

1.0

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

PlaybackControllerディレクティブの処理

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

Pauseディレクティブ

「アレクサ、『インターステラー』を見せて」と言った後で、「アレクサ、一時停止して」と言います。 これにより、Lambdaでこのディレクティブを確認できます。ユーザーがリモコンの「一時停止」ボタンを押したときと同じアクションを実行する必要があります。

{
  "directive": {
    "header": {
      "namespace": "Alexa.PlaybackController",
      "name": "Pause",
      "messageId": "abc-123-def-456",
      "payloadVersion": "3"
    },
    "endpoint": {
      "scope": {
        "type": "BearerToken",
        "token": "access-token-from-skill"
      },
      "endpointId": "VSKTV",
      "cookie": {

      }
    },
    "payload": {}
  }
}

Playディレクティブ

「アレクサ、『インターステラー』を見せて」と言った後で、「アレクサ、一時停止して」と言います。 その後、「アレクサ、再生して」と言います。 これにより、Lambdaでこのディレクティブを確認できます。ユーザーがリモコンの「再生」ボタンを押したときと同じアクションを実行する必要があります。

{
  "directive": {
    "header": {
      "namespace": "Alexa.PlaybackController",
      "name": "Play",
      "messageId": "abc-123-def-456",
      "payloadVersion": "3"
    },
    "endpoint": {
      "scope": {
        "type": "BearerToken",
        "token": "access-token-from-skill"
      },
      "endpointId": "VSKTV",
      "cookie": {
      }
    },
    "payload": {
    }
  }
}

Stopディレクティブ

オーディオまたはビデオコンテンツの再生を停止するようリクエストします。

{
  "directive": {
    "header": {
      "namespace": "Alexa.PlaybackController",
      "name": "Stop",
      "messageId": "abc-123-def-456",
      "payloadVersion": "3"
    },
    "endpoint": {
      "scope": {
        "type": "BearerToken",
        "token": "access-token-from-skill"
      },
      "endpointId": "VSKTV",
      "cookie": {

      }
    },
    "payload": {
    }
  }
}

Resumeディレクティブ

「アレクサ、『インターステラー』を見せて」と言った後で、「アレクサ、一時停止して」と言います。 その後、「アレクサ、再開して」と言います。 これにより、Lambdaでこのディレクティブを確認できます。ユーザーがリモコンで再生の一時停止を解除した場合(つまり、再生が既に一時停止されている状態で「再生」ボタンを押した場合)と同じアクションを実行する必要があります。

Nextディレクティブ

コンテンツの視聴中に、「アレクサ、次」と言います。 このコマンドが使用された場合は、次のエピソードに移る必要があります。できない場合は、開発者が選択した次の関連ビデオコンテンツ(または開発者が選択したプレイリストの次の項目)をユーザーに表示する必要があります。

{
  "directive": {
    "header": {
      "namespace": "Alexa.PlaybackController",
      "name": "Next",
      "messageId": "abc-123-def-456",
      "payloadVersion": "3"
    },
    "endpoint": {
      "scope": {
        "type": "BearerToken",
        "token": "access-token-from-skill"
      },
      "endpointId": "VSKTV",
      "cookie": {

      }
    },
    "payload": {
    }
  }
}

Previousディレクティブ

コンテンツの視聴中に、「アレクサ、前」と言います。 このコマンドが使用された場合は、前のエピソードに移る必要があります。できない場合は、開発者が選択したプレイリストの前の項目をユーザーに表示する必要があります。

{
  "directive": {
    "header": {
      "namespace": "Alexa.PlaybackController",
      "name": "Previous",
      "messageId": "abc-123-def-456",
      "payloadVersion": "3"
    },
    "endpoint": {
      "scope": {
        "type": "BearerToken",
        "token": "access-token-from-skill"
      },
      "endpointId": "VSKTV",
      "cookie": {

      }
    },
    "payload": {
    }
  }
}

FastForwardディレクティブ

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

{
  "directive": {
    "header": {
      "namespace": "Alexa.PlaybackController",
      "name": "FastForward",
      "messageId": "abc-123-def-456",
      "payloadVersion": "3"
    },
    "endpoint": {
      "scope": {
        "type": "BearerToken",
        "token": "access-token-from-skill"
      },
      "endpointId": "VSKTV",
      "cookie": {

      }
    },
    "payload": {
    }
  }
}

Rewindディレクティブ

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

{
  "directive": {
    "header": {
      "namespace": "Alexa.PlaybackController",
      "name": "Rewind",
      "messageId": "c8d53423-b49b-48ee-9181-f50acedf2870",
      "payloadVersion": "3"
    },
    "endpoint": {
      "scope": {
        "type": "BearerToken",
        "token": "access-token-from-skill"
      },
      "endpointId": "VSKTV",
      "cookie": {

      }
    },
    "payload": {
    }
  }
}

StartOverディレクティブ

オーディオまたはビジュアルコンテンツの最初から再生を開始するリクエストです。

{
  "directive": {
    "header": {
      "namespace": "Alexa.PlaybackController",
      "name": "StartOver",
      "messageId": "abc-123-def-456",
      "payloadVersion": "3"
    },
    "endpoint": {
      "scope": {
        "type": "BearerToken",
        "token": "access-token-from-skill"
      },
      "endpointId": "VSKTV",
      "cookie": {

      },
      "payload": {}
    }
  }
}

レスポンスの例

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

レスポンスの例

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

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

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

エラーレスポンス

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

その他のサンプルコード

AlexaスマートホームGitHubリポジトリの PlaybackController