Alexa.RemoteVideoPlayerインターフェース: SearchAndPlay
「『ボッシュ』を見せて」や「ウォリアーズの試合を見せて」など、特定のビデオコンテンツの再生をユーザーがAlexaにリクエストすると、Alexa.RemoteVideoPlayerインターフェースはSearchAndPlayディレクティブをアプリまたはLambdaに送信します。
- 概要
- SearchAndPlayディレクティブの発話
- SearchAndPlayディレクティブの例
- ペイロードの定義
- SearchAndPlayディレクティブの処理
- レスポンスの例
- インターフェース機能に対するサポートの宣言
概要
SearchAndPlayディレクティブは、ユーザーがAlexaにアイテムの「再生」を依頼したことを通知します。SearchAndPlayでは、具体的にリクエストされたタイトル、またはリクエストされたエンティティに最も一致するタイトルが再生されます。一致するタイトルがない場合は、代わりに検索結果が返されます。
以下に、発話の例をいくつか示します。
- アレクサ、<タイトル>を見せて
- アレクサ、<タイトル>を再生して
- アレクサ、<タイトル>を流して
- アレクサ、<タイトル>を開始して
SearchAndPlayディレクティブの発話
ユーザーが以下の発話を行うと、AlexaはSearchAndPlayディレクティブをアプリ(アプリのみの統合の場合)またはLambda(クラウド側の統合の場合)に送信します。
| 機能 | サンプル発話 | 想定されるレスポンス | 
|---|---|---|
| <タイトル>を再生 認定に必須 | Watch breaking bad | リクエストされたメディアが再生されます。一致するコンテンツが複数ある場合、ユーザーは目的のメディアを選択するように求められます。 | 
| 俳優で再生 認定に必須 | Watch sean connery | リクエストされた俳優が出演しているメディアが(ユーザーへのベストマッチを選び出すアルゴリズムによって)再生されるか、検索結果リストがユーザーに表示されます。 | 
| ジャンル名で再生 認定に必須 | Watch comedy | リクエストされたジャンルからメディアが(ユーザーへのおすすめメディアを選び出すアルゴリズムによって)再生されるか、メディアの検索結果リストがユーザーに表示されます。 | 
| シリーズの<タイトル>で再生 認定に必須 | Watch star trek | リクエストされたシリーズの検索結果から最上位のおすすめが再生されるか、一致するシリーズのリストがユーザーに表示されます。 | 
| メディアタイプで再生 省略可能 | Watch a movie | タイトル以外のリクエストに一致するメディアが(ユーザーへのおすすめビデオを選び出すアルゴリズムによって)再生されるか、検索結果リストがユーザーに表示されます。 | 
| シーズン番号で<タイトル>を再生 省略可能 | Watch breaking bad season two | シリーズの最後に再生したエピソードが再生途中の場合は、そのエピソードが再生されます。再生が完了している場合は、次の未再生エピソードが再生されます。 | 
| エピソード番号で<タイトル>を再生 省略可能 | Watch breaking bad episode five | ユーザーが最後に再生したエピソードから、適切なシーズンが特定されます。シリーズの最後に再生したエピソードが再生途中の場合は、そのエピソードが再生されます。再生が完了している場合は、次の未再生エピソードが再生されます。 | 
| シーズン番号とエピソード番号で<タイトル>を再生 省略可能 | Watch breaking bad season two episode five | リクエストされたシーズンとエピソードに対応するコンテンツが再生されます。 | 
| キャラクター名で再生 省略可能 | Watch james bond | リクエストされたキャラクター名に一致するメディアが(ユーザーへのおすすめメディアを選び出すアルゴリズムによって)再生されるか、メディアの検索結果リストがユーザーに表示されます。 | 
| スポーツのチームで再生 省略可能 | Watch seahawks | リクエストされたスポーツチームに一致するメディアが(ユーザーへのおすすめメディアを選び出すアルゴリズムによって)再生されるか、メディアの検索結果リストがユーザーに表示されます。 | 
| スポーツの種類で再生 省略可能 | Watch soccer | リクエストされたスポーツの種類に一致するメディアが(ユーザーへのおすすめメディアを選び出すアルゴリズムによって)再生されるか、検索結果リストがユーザーに表示されます。 | 
| スポーツのリーグで再生 省略可能 | Watch n. b. a. league | リクエストされたスポーツリーグに一致するメディアが(ユーザーへのおすすめメディアを選び出すアルゴリズムによって)再生されるか、検索結果リストがユーザーに表示されます。 | 
| スポーツのイベントで再生 省略可能 | Watch soccer game | リクエストされたスポーツイベントに一致するメディアが(ユーザーへのおすすめメディアを選び出すアルゴリズムによって)再生されるか、検索結果リストがユーザーに表示されます。 | 
| 機能 | サンプル発話 | 想定されるレスポンス | 
|---|---|---|
| <タイトル>を再生 認定に必須 | mets / joue / lance / pars [VideoName] sur [AppName] | リクエストされたメディアが再生されます。一致するコンテンツが複数ある場合、ユーザーは目的のメディアを選択するように求められます。 | 
| 俳優で再生 認定に必須 | regarde un film avec [actor] mets un film avec [actor] joue un film avec [actor] pars un film avec [actor] | リクエストされた俳優が出演しているメディアが(ユーザーへのベストマッチを選び出すアルゴリズムによって)再生されるか、検索結果リストがユーザーに表示されます。 | 
| ジャンル名で再生 認定に必須 | regarder un [GenreName] regarder une [GenreName] mets un [GenreName] mets une [GenreName] joue un [GenreName] joue une [GenreName | リクエストされたジャンルからメディアが(ユーザーへのおすすめメディアを選び出すアルゴリズムによって)再生されるか、メディアの検索結果リストがユーザーに表示されます。 | 
| シリーズの<タイトル>で再生 認定に必須 | regarde [title] mets [title] joue [title] pars [title] | リクエストされたシリーズの検索結果から最上位のおすすめが再生されるか、一致するシリーズのリストがユーザーに表示されます。 | 
| メディアタイプで再生 省略可能 | regarde un film mets un film joue un film pars un film | タイトル以外のリクエストに一致するメディアが(ユーザーへのおすすめビデオを選び出すアルゴリズムによって)再生されるか、検索結果リストがユーザーに表示されます。 | 
| シーズン番号で<タイトル>を再生 省略可能 | regarde la saison [x] de [title] mets la saison [x] de [title] joue la saison [x] de [title] pars la saison [x] de [title] regarde [title] saison [x] mets [title] saison [x] joue [title] saison [x] pars [title] saison [x] joue la saison [x] de [title] | シリーズの最後に再生したエピソードが再生途中の場合は、そのエピソードが再生されます。再生が完了している場合は、次の未再生エピソードが再生されます。 | 
| エピソード番号で<タイトル>を再生 省略可能 | regarde l'épisode [x] de [title] mets l'épisode [x] de [title] joue l'épisode [x] de [title] pars l'épisode [x] de [title] joue [title] épisode [x] mets [title] épisode [x] | ユーザーが最後に再生したエピソードから、適切なシーズンが特定されます。シリーズの最後に再生したエピソードが再生途中の場合は、そのエピソードが再生されます。再生が完了している場合は、次の未再生エピソードが再生されます。 | 
| シーズン番号とエピソード番号で<タイトル>を再生 省略可能 | Same as fr-FR | リクエストされたシーズンとエピソードに対応するコンテンツが再生されます。 | 
| キャラクター名で再生 省略可能 | Not supported | リクエストされたキャラクター名に一致するメディアが(ユーザーへのおすすめメディアを選び出すアルゴリズムによって)再生されるか、メディアの検索結果リストがユーザーに表示されます。 | 
| スポーツのチームで再生 省略可能 | Regarde le [team] Regarde le match de [team] | リクエストされたスポーツチームに一致するメディアが(ユーザーへのおすすめメディアを選び出すアルゴリズムによって)再生されるか、メディアの検索結果リストがユーザーに表示されます。 | 
| スポーツの種類で再生 省略可能 | Not supported | リクエストされたスポーツの種類に一致するメディアが(ユーザーへのおすすめメディアを選び出すアルゴリズムによって)再生されるか、検索結果リストがユーザーに表示されます。 | 
| スポーツのリーグで再生 省略可能 | Mets [league] Joue [league] Regarde [league] | リクエストされたスポーツリーグに一致するメディアが(ユーザーへのおすすめメディアを選び出すアルゴリズムによって)再生されるか、検索結果リストがユーザーに表示されます。 | 
| スポーツのイベントで再生 省略可能 | Not supported | リクエストされたスポーツイベントに一致するメディアが(ユーザーへのおすすめメディアを選び出すアルゴリズムによって)再生されるか、検索結果リストがユーザーに表示されます。 | 
| 機能 | サンプル発話 | 想定されるレスポンス | 
|---|---|---|
| <タイトル>を再生 認定に必須 | mets / joue / lance [VideoName] sur [AppName] | リクエストされたメディアが再生されます。一致するコンテンツが複数ある場合、ユーザーは目的のメディアを選択するように求められます。 | 
| 俳優で再生 認定に必須 | regarde un film avec [actor] mets un film avec [actor] joue un film avec [actor] | リクエストされた俳優が出演しているメディアが(ユーザーへのベストマッチを選び出すアルゴリズムによって)再生されるか、検索結果リストがユーザーに表示されます。 | 
| ジャンル名で再生 認定に必須 | regarder un [GenreName] regarder une [GenreName] mets un [GenreName] mets une [GenreName] joue un [GenreName] joue une [GenreName | リクエストされたジャンルからメディアが(ユーザーへのおすすめメディアを選び出すアルゴリズムによって)再生されるか、メディアの検索結果リストがユーザーに表示されます。 | 
| シリーズの<タイトル>で再生 認定に必須 | Regarde [title] Mets [title] Joue [title] | リクエストされたシリーズの検索結果から最上位のおすすめが再生されるか、一致するシリーズのリストがユーザーに表示されます。 | 
| メディアタイプで再生 省略可能 | regarde un film mets un film joue un film | タイトル以外のリクエストに一致するメディアが(ユーザーへのおすすめビデオを選び出すアルゴリズムによって)再生されるか、検索結果リストがユーザーに表示されます。 | 
| シーズン番号で<タイトル>を再生 省略可能 | Regarde la saison [x] de [title] Mets la saison [x] de [title] Regarde [title] saison [x] Mets [title] saison [x] Joue [title] saison [x] Joue la saison [x] de [title] | シリーズの最後に再生したエピソードが再生途中の場合は、そのエピソードが再生されます。再生が完了している場合は、次の未再生エピソードが再生されます。 | 
| エピソード番号で<タイトル>を再生 省略可能 | Regarde l'épisode [x] de [title] Mets l'épisode [x] de [title] Joue l'épisode [x] de [title] Joue [title] épisode [x] | ユーザーが最後に再生したエピソードから、適切なシーズンが特定されます。シリーズの最後に再生したエピソードが再生途中の場合は、そのエピソードが再生されます。再生が完了している場合は、次の未再生エピソードが再生されます。 | 
| シーズン番号とエピソード番号で<タイトル>を再生 省略可能 | Regarde l'épisode [x] de la saison [x] de [title] Joue l'épisode [x] de la saison [x] de [title] Mets l'épisode [x] de la saison [x] de [title] | リクエストされたシーズンとエピソードに対応するコンテンツが再生されます。 | 
| キャラクター名で再生 省略可能 | Not supported | リクエストされたキャラクター名に一致するメディアが(ユーザーへのおすすめメディアを選び出すアルゴリズムによって)再生されるか、メディアの検索結果リストがユーザーに表示されます。 | 
| スポーツのチームで再生 省略可能 | Regarde le [team] Regarde le match de [team] | リクエストされたスポーツチームに一致するメディアが(ユーザーへのおすすめメディアを選び出すアルゴリズムによって)再生されるか、メディアの検索結果リストがユーザーに表示されます。 | 
| スポーツの種類で再生 省略可能 | Not supported | リクエストされたスポーツの種類に一致するメディアが(ユーザーへのおすすめメディアを選び出すアルゴリズムによって)再生されるか、検索結果リストがユーザーに表示されます。 | 
| スポーツのリーグで再生 省略可能 | Mets [league] Joue [league] Regarde [league] | リクエストされたスポーツリーグに一致するメディアが(ユーザーへのおすすめメディアを選び出すアルゴリズムによって)再生されるか、検索結果リストがユーザーに表示されます。 | 
| スポーツのイベントで再生 省略可能 | Not supported | リクエストされたスポーツイベントに一致するメディアが(ユーザーへのおすすめメディアを選び出すアルゴリズムによって)再生されるか、検索結果リストがユーザーに表示されます。 | 
| 機能 | サンプル発話 | 想定されるレスポンス | 
|---|---|---|
| <タイトル>を再生 認定に必須 | ich möchte [VideoName] gucken spiel [VideoName] spiel watchlist ab von [VideoName] | リクエストされたメディアが再生されます。一致するコンテンツが複数ある場合、ユーザーは目的のメディアを選択するように求められます。 | 
| 俳優で再生 認定に必須 | spiel [VideoName] (mit [ActorName]) auf [AppName] streame einen film mit [ActorName] auf [AppName] streame einen [ActorName] film auf [AppName] streame eine serie mit [ActorName] auf [AppName] streame eine [ActorName] serie auf [AppName] | リクエストされた俳優が出演しているメディアが(ユーザーへのベストマッチを選び出すアルゴリズムによって)再生されるか、検索結果リストがユーザーに表示されます。 | 
| ジャンル名で再生 認定に必須 | spiel eine [GenreName] [MediaType] auf [DeviceType] ab spiel eine [GenreName] [MediaType] auf [AppName] ab [GenreName] [MediaType] schauen spiel einen [GenreName] [MediaType] | リクエストされたジャンルからメディアが(ユーザーへのおすすめメディアを選び出すアルゴリズムによって)再生されるか、メディアの検索結果リストがユーザーに表示されます。 | 
| シリーズの<タイトル>で再生 認定に必須 | ich möchte [VideoName] gucken spiel [VideoName] spiel watchlist ab von [VideoName]? | リクエストされたシリーズの検索結果から最上位のおすすめが再生されるか、一致するシリーズのリストがユーザーに表示されます。 | 
| メディアタイプで再生 省略可能 | spiel einen [MediaType] spiel [MediaType] aus der/meiner watchlist streame den [MediaType] [VideoName] auf [AppName]/[Device] spiel trailer von [VideoName] spiel die neueste folge von [VideoName] | タイトル以外のリクエストに一致するメディアが(ユーザーへのおすすめビデオを選び出すアルゴリズムによって)再生されるか、検索結果リストがユーザーに表示されます。 | 
| シーズン番号で<タイトル>を再生 省略可能 | spiel [VideoName] [Season] [Season_Numer] spiel [VideoName] [Season] [Season_Numer] auf [AppName] | シリーズの最後に再生したエピソードが再生途中の場合は、そのエピソードが再生されます。再生が完了している場合は、次の未再生エピソードが再生されます。 | 
| エピソード番号で<タイトル>を再生 省略可能 | spiel die [Episode_Number] [Episode] von [VideoName] spiel [VideoName] [Episode_Number] spiel von [VideoName] [Episode] [Episode_Number] | ユーザーが最後に再生したエピソードから、適切なシーズンが特定されます。シリーズの最後に再生したエピソードが再生途中の場合は、そのエピソードが再生されます。再生が完了している場合は、次の未再生エピソードが再生されます。 | 
| シーズン番号とエピソード番号で<タイトル>を再生 省略可能 | spiel [Season] [Season_Numer] [Episode] [Episode_Number] von [VideoName] spiel [VideoName] [Season] [Season_Numer] [Episode] [Episode_Number] spiel die [VideoName] [Season] [Season_Numer] [Episode] [Episode_Number] auf [AppName] ab | リクエストされたシーズンとエピソードに対応するコンテンツが再生されます。 | 
| キャラクター名で再生 省略可能 | Not supported | リクエストされたキャラクター名に一致するメディアが(ユーザーへのおすすめメディアを選び出すアルゴリズムによって)再生されるか、メディアの検索結果リストがユーザーに表示されます。 | 
| スポーツのチームで再生 省略可能 | spiel [SportsTeam] [Event] auf [AppName] [SportsTeam] [Event] anschauen/ansehen das [SportsTeam] [Event] auf [AppName] anschauen/ansehen spiel das [SportsTeam] [Event] auf meinem [Device] | リクエストされたスポーツチームに一致するメディアが(ユーザーへのおすすめメディアを選び出すアルゴリズムによって)再生されるか、メディアの検索結果リストがユーザーに表示されます。 | 
| スポーツの種類で再生 省略可能 | spiel das [Sport] [Event] auf meinem [Device] das [Sport] [Event] ansehen | リクエストされたスポーツの種類に一致するメディアが(ユーザーへのおすすめメディアを選び出すアルゴリズムによって)再生されるか、検索結果リストがユーザーに表示されます。 | 
| スポーツのリーグで再生 省略可能 | spiel [SportsTeam] [Event] auf [AppName] [SportsTeam] [Event] anschauen | リクエストされたスポーツリーグに一致するメディアが(ユーザーへのおすすめメディアを選び出すアルゴリズムによって)再生されるか、検索結果リストがユーザーに表示されます。 | 
| スポーツのイベントで再生 省略可能 | spiel das [Sport] [Event] auf meinem [Device] das [Sport] [Event] ansehen | リクエストされたスポーツイベントに一致するメディアが(ユーザーへのおすすめメディアを選び出すアルゴリズムによって)再生されるか、検索結果リストがユーザーに表示されます。 | 
| 機能 | サンプル発話 | 想定されるレスポンス | 
|---|---|---|
| <タイトル>を再生 認定に必須 | [VideoName] चलाओ/बजाओ/लगाओ/play/देखो [AppName] पे/पर/में [VideoName] चलाओ/बजाओ/लगाओ/play | リクエストされたメディアが再生されます。一致するコンテンツが複数ある場合、ユーザーは目的のメディアを選択するように求められます。 | 
| 俳優で再生 認定に必須 | [ActorName] का/की/के movies को चलाओ/बजाओ/लगाओ/play/देखो [ActorName] का/की/के movies चलाओ/बजाओ/लगाओ/play/देखो [ActorName] का/की/के [GenreName] को चलाओ/बजाओ/लगाओ/play/देखो [ActorName] का/की/के [GenreName] चलाओ/बजाओ/लगाओ/play/देखो [ActorName] का/की/के [VideoName] को चलाओ/बजाओ/लगाओ/play/देखो [ActorName] का/की/के [VideoName] चलाओ/बजाओ/लगाओ/play/देखो [ActorName] का/की/के/वाला [GenreName] की [VideoName] को चलाओ/बजाओ/लगाओ/play/देखो [ActorName] का/की/के/वाला [GenreName] की [VideoName] चलाओ/बजाओ/लगाओ/play/देखो | リクエストされた俳優が出演しているメディアが(ユーザーへのベストマッチを選び出すアルゴリズムによって)再生されるか、検索結果リストがユーザーに表示されます。 | 
| ジャンル名で再生 認定に必須 | [GenreName] [VideoName] को चलाओ/बजाओ/लगाओ/play/देखो [GenreName] [VideoName] चलाओ/बजाओ/लगाओ/play/देखो | リクエストされたジャンルからメディアが(ユーザーへのおすすめメディアを選び出すアルゴリズムによって)再生されるか、メディアの検索結果リストがユーザーに表示されます。 | 
| シリーズの<タイトル>で再生 認定に必須 | star trek देखो/देखना/देखिए | リクエストされたシリーズの検索結果から最上位のおすすめが再生されるか、一致するシリーズのリストがユーザーに表示されます。 | 
| メディアタイプで再生 省略可能 | [VideoName] movies चलाओ/बजाओ/लगाओ/play/देखो | タイトル以外のリクエストに一致するメディアが(ユーザーへのおすすめビデオを選び出すアルゴリズムによって)再生されるか、検索結果リストがユーザーに表示されます。 | 
| シーズン番号で<タイトル>を再生 省略可能 | [VideoName] का/की/के [SeasonNumber] को चलाओ/बजाओ/लगाओ/play/देखो [VideoName] का/की/के [SeasonNumber] चलाओ/बजाओ/लगाओ/play/देखो [VideoName] का/की/के [SeasonNumber] को चलाओ/बजाओ/लगाओ/play/देखो [VideoName] का/की/के [SeasonNumber] [SeasonNumber] चलाओ/बजाओ/लगाओ/play/देखो | シリーズの最後に再生したエピソードが再生途中の場合は、そのエピソードが再生されます。再生が完了している場合は、次の未再生エピソードが再生されます。 | 
| エピソード番号で<タイトル>を再生 省略可能 | [VideoName] का/की/के [EpisodeNumber] को चलाओ/बजाओ/लगाओ/play/देखो [VideoName] का/की/के [EpisodeNumber] चलाओ/बजाओ/लगाओ/play/देखो | ユーザーが最後に再生したエピソードから、適切なシーズンが特定されます。シリーズの最後に再生したエピソードが再生途中の場合は、そのエピソードが再生されます。再生が完了している場合は、次の未再生エピソードが再生されます。 | 
| シーズン番号とエピソード番号で<タイトル>を再生 省略可能 | [VideoName] season one episode one चलाओ/बजाओ/लगाओ/play करो [VideoName] season एक का episode एक चलाओ/बजाओ/लगाओ/play करो | リクエストされたシーズンとエピソードに対応するコンテンツが再生されます。 | 
| キャラクター名で再生 省略可能 | [CharacterName] का/की/के/वाला movies चलाओ/बजाओ/लगाओ/play/देखो [CharacterName] का/की/के/वाला movies को चलाओ/बजाओ/लगाओ/play/देखो Watch [CharacterName] movie [VideoName] | リクエストされたキャラクター名に一致するメディアが(ユーザーへのおすすめメディアを選び出すアルゴリズムによって)再生されるか、メディアの検索結果リストがユーザーに表示されます。 | 
| スポーツのチームで再生 省略可能 | [Sport/League/Seam] games चलाओ/बजाओ/लगाओ/play/देखो [Sport/League/Seam] के games को चलाओ/बजाओ/लगाओ/play/देखो | リクエストされたスポーツチームに一致するメディアが(ユーザーへのおすすめメディアを選び出すアルゴリズムによって)再生されるか、メディアの検索結果リストがユーザーに表示されます。 | 
| スポーツの種類で再生 省略可能 | [Sport/League/Seam] games चलाओ/बजाओ/लगाओ/play/देखो [Sport/League/Seam] के games को चलाओ/बजाओ/लगाओ/play/देखो | リクエストされたスポーツの種類に一致するメディアが(ユーザーへのおすすめメディアを選び出すアルゴリズムによって)再生されるか、検索結果リストがユーザーに表示されます。 | 
| スポーツのリーグで再生 省略可能 | [Sport/League/Seam] games चलाओ/बजाओ/लगाओ/play/देखो [Sport/League/Seam] के games को चलाओ/बजाओ/लगाओ/play/देखो | リクエストされたスポーツリーグに一致するメディアが(ユーザーへのおすすめメディアを選び出すアルゴリズムによって)再生されるか、検索結果リストがユーザーに表示されます。 | 
| スポーツのイベントで再生 省略可能 | [Sport/League/Seam] games चलाओ/बजाओ/लगाओ/play/देखो [Sport/League/Seam] के games को चलाओ/बजाओ/लगाओ/play/देखो | リクエストされたスポーツイベントに一致するメディアが(ユーザーへのおすすめメディアを選び出すアルゴリズムによって)再生されるか、検索結果リストがユーザーに表示されます。 | 
| 機能 | サンプル発話 | 想定されるレスポンス | 
|---|---|---|
| <タイトル>を再生 認定に必須 | metti / trasmetti / riproduci / fammi guardare / fammi vedere + [VideoName] (+ da/su [DeviceName]) | リクエストされたメディアが再生されます。一致するコンテンツが複数ある場合、ユーザーは目的のメディアを選択するように求められます。 | 
| 俳優で再生 認定に必須 | guarda un film con [ActorName] metti un film con [ActorName] | リクエストされた俳優が出演しているメディアが(ユーザーへのベストマッチを選び出すアルゴリズムによって)再生されるか、検索結果リストがユーザーに表示されます。 | 
| ジャンル名で再生 認定に必須 | guarda una [GenreName] fammi vedere una commedia mostra mi una commedia metti una commedia | リクエストされたジャンルからメディアが(ユーザーへのおすすめメディアを選び出すアルゴリズムによって)再生されるか、メディアの検索結果リストがユーザーに表示されます。 | 
| シリーズの<タイトル>で再生 認定に必須 | guarda star trek fammi vedere star trek mostra star trek | リクエストされたシリーズの検索結果から最上位のおすすめが再生されるか、一致するシリーズのリストがユーザーに表示されます。 | 
| メディアタイプで再生 省略可能 | guarda un film metti un fim trasmetti un film riproduci un film | タイトル以外のリクエストに一致するメディアが(ユーザーへのおすすめビデオを選び出すアルゴリズムによって)再生されるか、検索結果リストがユーザーに表示されます。 | 
| シーズン番号で<タイトル>を再生 省略可能 | guarda [VideoName] stagione due metti [VideoName] stagione due riproduci [VideoName] stagione due | シリーズの最後に再生したエピソードが再生途中の場合は、そのエピソードが再生されます。再生が完了している場合は、次の未再生エピソードが再生されます。 | 
| エピソード番号で<タイトル>を再生 省略可能 | guarda [VideoName] episodio cinque metti [VideoName] episodio cinque riproduci [VideoName] episodio cinque | ユーザーが最後に再生したエピソードから、適切なシーズンが特定されます。シリーズの最後に再生したエピソードが再生途中の場合は、そのエピソードが再生されます。再生が完了している場合は、次の未再生エピソードが再生されます。 | 
| シーズン番号とエピソード番号で<タイトル>を再生 省略可能 | guarda [VideoName] stagione due episodio cinque metti [VideoName] stagione due episodio cinque riproduci [VideoName] stagione due episodio cinque | リクエストされたシーズンとエピソードに対応するコンテンツが再生されます。 | 
| キャラクター名で再生 省略可能 | guarda [CharacterName] fammi vedere un film con james bond mostrami un film di james bond | リクエストされたキャラクター名に一致するメディアが(ユーザーへのおすすめメディアを選び出すアルゴリズムによって)再生されるか、メディアの検索結果リストがユーザーに表示されます。 | 
| スポーツのチームで再生 省略可能 | riproduci la partita del [SportsTeam] | リクエストされたスポーツチームに一致するメディアが(ユーザーへのおすすめメディアを選び出すアルゴリズムによって)再生されるか、メディアの検索結果リストがユーザーに表示されます。 | 
| スポーツの種類で再生 省略可能 | not supported | リクエストされたスポーツの種類に一致するメディアが(ユーザーへのおすすめメディアを選び出すアルゴリズムによって)再生されるか、検索結果リストがユーザーに表示されます。 | 
| スポーツのリーグで再生 省略可能 | trasmetti la partita della [League] | リクエストされたスポーツリーグに一致するメディアが(ユーザーへのおすすめメディアを選び出すアルゴリズムによって)再生されるか、検索結果リストがユーザーに表示されます。 | 
| スポーツのイベントで再生 省略可能 | not supported | リクエストされたスポーツイベントに一致するメディアが(ユーザーへのおすすめメディアを選び出すアルゴリズムによって)再生されるか、検索結果リストがユーザーに表示されます。 | 
| 機能 | サンプル発話 | 想定されるレスポンス | 
|---|---|---|
| <タイトル>を再生 認定に必須 | [VideoName]を再生して [VideoName]を[AppName]で再生して [AppName]で[VideoName][MediaType]を再生して | リクエストされたメディアが再生されます。一致するコンテンツが複数ある場合、ユーザーは目的のメディアを選択するように求められます。 | 
| 俳優で再生 認定に必須 | [ActorNameName]が出ている[MediaType]を再生 | リクエストされた俳優が出演しているメディアが(ユーザーへのベストマッチを選び出すアルゴリズムによって)再生されるか、検索結果リストがユーザーに表示されます。 | 
| ジャンル名で再生 認定に必須 | [AppName]で[GenreNameName][MediaType]を再生[AppName]で[GenreNameName]を再生 | リクエストされたジャンルからメディアが(ユーザーへのおすすめメディアを選び出すアルゴリズムによって)再生されるか、メディアの検索結果リストがユーザーに表示されます。 | 
| シリーズの<タイトル>で再生 認定に必須 |  | リクエストされたシリーズの検索結果から最上位のおすすめが再生されるか、一致するシリーズのリストがユーザーに表示されます。 | 
| メディアタイプで再生 省略可能 | [VideoName]を再生して [VideoName]を<AppName]で再生して [AppName]で[VideoName][MediaType]を再生して [MediaType]を再生して [ActorNameName]が出ている[MediaType]を再生 [Anaphor][MediaType]を流して [AppName]で[GenreNameName][MediaType]を再生 [AppName]で[VideoName][MediaType]を再生して [ChannelName]の[MediaType]を再生 | タイトル以外のリクエストに一致するメディアが(ユーザーへのおすすめビデオを選び出すアルゴリズムによって)再生されるか、検索結果リストがユーザーに表示されます。 | 
| シーズン番号で<タイトル>を再生 省略可能 | [VideoName]の[Season][Season_Number]の | シリーズの最後に再生したエピソードが再生途中の場合は、そのエピソードが再生されます。再生が完了している場合は、次の未再生エピソードが再生されます。 | 
| エピソード番号で<タイトル>を再生 省略可能 | [Episode_Number][Episode]を再生 | ユーザーが最後に再生したエピソードから、適切なシーズンが特定されます。シリーズの最後に再生したエピソードが再生途中の場合は、そのエピソードが再生されます。再生が完了している場合は、次の未再生エピソードが再生されます。 | 
| シーズン番号とエピソード番号で<タイトル>を再生 省略可能 | [Episode_Number][Episode]を再生 [VideoName]の[Season][Season_Number]の | リクエストされたシーズンとエピソードに対応するコンテンツが再生されます。 | 
| キャラクター名で再生 省略可能 |  | リクエストされたキャラクター名に一致するメディアが(ユーザーへのおすすめメディアを選び出すアルゴリズムによって)再生されるか、メディアの検索結果リストがユーザーに表示されます。 | 
| スポーツのチームで再生 省略可能 | [SportsTeam]の[Event]を[AppName]で見せて | リクエストされたスポーツチームに一致するメディアが(ユーザーへのおすすめメディアを選び出すアルゴリズムによって)再生されるか、メディアの検索結果リストがユーザーに表示されます。 | 
| スポーツの種類で再生 省略可能 | [SportsTeam]の[Event]を[AppName]で見せて | リクエストされたスポーツの種類に一致するメディアが(ユーザーへのおすすめメディアを選び出すアルゴリズムによって)再生されるか、検索結果リストがユーザーに表示されます。 | 
| スポーツのリーグで再生 省略可能 | [SportsTeam]の[Event]を[AppName]で見せて | リクエストされたスポーツリーグに一致するメディアが(ユーザーへのおすすめメディアを選び出すアルゴリズムによって)再生されるか、検索結果リストがユーザーに表示されます。 | 
| スポーツのイベントで再生 省略可能 | [SportsTeam]の[Event]を[AppName]で見せて | リクエストされたスポーツイベントに一致するメディアが(ユーザーへのおすすめメディアを選び出すアルゴリズムによって)再生されるか、検索結果リストがユーザーに表示されます。 | 
| 機能 | サンプル発話 | 想定されるレスポンス | 
|---|---|---|
| <タイトル>を再生 認定に必須 | tocar/assistir/reproduzir [VideoName] no/na [AppName] | リクエストされたメディアが再生されます。一致するコンテンツが複数ある場合、ユーザーは目的のメディアを選択するように求められます。 | 
| 俳優で再生 認定に必須 | assistir [ator] colocar [ator] coloque filmes com [ator] encontre filmes com [ator] me mostre filmes com [ator] | リクエストされた俳優が出演しているメディアが(ユーザーへのベストマッチを選び出すアルゴリズムによって)再生されるか、検索結果リストがユーザーに表示されます。 | 
| ジャンル名で再生 認定に必須 | assitir [GenreName] assistir programas de [GenreName] programas de [GenreName] colocar [GenreName] por favor reproduzir [GenreName] reproduzir programas de [GenreName] colocar um programa de [GenreName] | リクエストされたジャンルからメディアが(ユーザーへのおすすめメディアを選び出すアルゴリズムによって)再生されるか、メディアの検索結果リストがユーザーに表示されます。 | 
| シリーズの<タイトル>で再生 認定に必須 | assitir jornada nas estrelas colocar jornada nas estrelas reproduzir jornada nas estrelas você pode passsar jornada nas estrelas por favor reproduzir jornada nas estrelas | リクエストされたシリーズの検索結果から最上位のおすすめが再生されるか、一致するシリーズのリストがユーザーに表示されます。 | 
| メディアタイプで再生 省略可能 | assistir um filme colocar um filme nós podemos assistir um filme ver um filme | タイトル以外のリクエストに一致するメディアが(ユーザーへのおすすめビデオを選び出すアルゴリズムによって)再生されるか、検索結果リストがユーザーに表示されます。 | 
| シーズン番号で<タイトル>を再生 省略可能 | assistir [title] temporada [x] colocar [title] temporada [x] reproduzir [title] temporada [x] | シリーズの最後に再生したエピソードが再生途中の場合は、そのエピソードが再生されます。再生が完了している場合は、次の未再生エピソードが再生されます。 | 
| エピソード番号で<タイトル>を再生 省略可能 | assistir [title] episódio [x] colocar [title] episódio [x] reproduzir [title] episódio [x] reproduzir o [title] episódio [x] | ユーザーが最後に再生したエピソードから、適切なシーズンが特定されます。シリーズの最後に再生したエピソードが再生途中の場合は、そのエピソードが再生されます。再生が完了している場合は、次の未再生エピソードが再生されます。 | 
| シーズン番号とエピソード番号で<タイトル>を再生 省略可能 | assistir [title] temporada [x] episódio [x] colocar [title] temporada [x] episódio [x] reproduzir [title] temporada [x] episódio [x] | リクエストされたシーズンとエピソードに対応するコンテンツが再生されます。 | 
| キャラクター名で再生 省略可能 | Not Supported | リクエストされたキャラクター名に一致するメディアが(ユーザーへのおすすめメディアを選び出すアルゴリズムによって)再生されるか、メディアの検索結果リストがユーザーに表示されます。 | 
| スポーツのチームで再生 省略可能 | assisitr [SportTeam] assitir o/a [SportTeam] colocar no/na [SportTeam] colocar o jogo do/da [SportTeam] me mostre o jogo do/da [SportTeam] mostre o jogo do/da [SportTeam] | リクエストされたスポーツチームに一致するメディアが(ユーザーへのおすすめメディアを選び出すアルゴリズムによって)再生されるか、メディアの検索結果リストがユーザーに表示されます。 | 
| スポーツの種類で再生 省略可能 | assistir [Sport] | リクエストされたスポーツの種類に一致するメディアが(ユーザーへのおすすめメディアを選び出すアルゴリズムによって)再生されるか、検索結果リストがユーザーに表示されます。 | 
| スポーツのリーグで再生 省略可能 | assistir [League] colocar [League] | リクエストされたスポーツリーグに一致するメディアが(ユーザーへのおすすめメディアを選び出すアルゴリズムによって)再生されるか、検索結果リストがユーザーに表示されます。 | 
| スポーツのイベントで再生 省略可能 | not supported | リクエストされたスポーツイベントに一致するメディアが(ユーザーへのおすすめメディアを選び出すアルゴリズムによって)再生されるか、検索結果リストがユーザーに表示されます。 | 
| 機能 | サンプル発話 | 想定されるレスポンス | 
|---|---|---|
| <タイトル>を再生 認定に必須 | pon interstellar reproduce interstellar ver interstellar | リクエストされたメディアが再生されます。一致するコンテンツが複数ある場合、ユーザーは目的のメディアを選択するように求められます。 | 
| 俳優で再生 認定に必須 | pon salma hayek reproduce salma hayek | リクエストされた俳優が出演しているメディアが(ユーザーへのベストマッチを選び出すアルゴリズムによって)再生されるか、検索結果リストがユーザーに表示されます。 | 
| ジャンル名で再生 認定に必須 | pon comedia en netflix (Not supported without AppName) | リクエストされたジャンルからメディアが(ユーザーへのおすすめメディアを選び出すアルゴリズムによって)再生されるか、メディアの検索結果リストがユーザーに表示されます。 | 
| シリーズの<タイトル>で再生 認定に必須 | pon star wars reproduce star wars | リクエストされたシリーズの検索結果から最上位のおすすめが再生されるか、一致するシリーズのリストがユーザーに表示されます。 | 
| メディアタイプで再生 省略可能 | pon la película* reproduce la película* Note: Not supported in es-ES or es-US | タイトル以外のリクエストに一致するメディアが(ユーザーへのおすすめビデオを選び出すアルゴリズムによって)再生されるか、検索結果リストがユーザーに表示されます。 | 
| シーズン番号で<タイトル>を再生 省略可能 | empieza la segunda temporada de los rompecorazones comienza la segunda temporada de los rompecorazones reproduce la segunda temporada de los rompecorazones | シリーズの最後に再生したエピソードが再生途中の場合は、そのエピソードが再生されます。再生が完了している場合は、次の未再生エピソードが再生されます。 | 
| エピソード番号で<タイトル>を再生 省略可能 | pon el capítulo final de los serrano | ユーザーが最後に再生したエピソードから、適切なシーズンが特定されます。シリーズの最後に再生したエピソードが再生途中の場合は、そのエピソードが再生されます。再生が完了している場合は、次の未再生エピソードが再生されます。 | 
| シーズン番号とエピソード番号で<タイトル>を再生 省略可能 | pon el segundo episodio de la primera temporada de anabel reproduce el cuarto episodio de la temporada tres de águila roja | リクエストされたシーズンとエピソードに対応するコンテンツが再生されます。 | 
| キャラクター名で再生 省略可能 | reproduce algo con james bond | リクエストされたキャラクター名に一致するメディアが(ユーザーへのおすすめメディアを選び出すアルゴリズムによって)再生されるか、メディアの検索結果リストがユーザーに表示されます。 | 
| スポーツのチームで再生 省略可能 | ver el partido del real madrid | リクエストされたスポーツチームに一致するメディアが(ユーザーへのおすすめメディアを選び出すアルゴリズムによって)再生されるか、メディアの検索結果リストがユーザーに表示されます。 | 
| スポーツの種類で再生 省略可能 | reproduce el partido de fútbol en mi televisor ver el partido de fútbol en mi tele ver el partido de fútbol | リクエストされたスポーツの種類に一致するメディアが(ユーザーへのおすすめメディアを選び出すアルゴリズムによって)再生されるか、検索結果リストがユーザーに表示されます。 | 
| スポーツのリーグで再生 省略可能 | pon el partido de la a. c. b. en mi tele ver el partido de la a. c. b. en mi televisor | リクエストされたスポーツリーグに一致するメディアが(ユーザーへのおすすめメディアを選び出すアルゴリズムによって)再生されるか、検索結果リストがユーザーに表示されます。 | 
| スポーツのイベントで再生 省略可能 | ver el partido de fútbol | リクエストされたスポーツイベントに一致するメディアが(ユーザーへのおすすめメディアを選び出すアルゴリズムによって)再生されるか、検索結果リストがユーザーに表示されます。 | 
SearchAndPlayディレクティブの例
以下は、SearchAndPlayディレクティブの例です。これは、ユーザーが「マンチェスター・バイ・ザ・シー」の再生をリクエストした場合に、Alexaからレスポンスとして送信されるディレクティブです。
EXTRA_DIRECTIVE_NAMESPACE: Alexa.RemoteVideoPlayer EXTRA_DIRECTIVE_NAME: SearchAndPlay EXTRA_DIRECTIVE_PAYLOAD_VERSION: 3 EXTRA_DIRECTIVE_PAYLOAD: payload
payloadの内容は以下のとおりです。
{
    "payload": {
      "experience": {
            "mode": "VOICE_OPTIMIZED",
            },
      "entities": [
          {
              "externalIds": {
                  "imdb": "tt4574334"
              },
              "type": "Video",
              "uri": "entity://provider/show/manchesterbythesea",
              "value": "マンチェスター・バイ・ザ・シー"
          }
      ],
      "searchText": [
          {
              "transcribed": "マンチェスター・バイ・ザ・シー"
          }
      ],
      "timeWindow": {
          "end": "2016-09-07T23:59:00+00:00",
          "start": "2016-09-01T00:00:00+00:00"
      }
  }
}
{
    "directive": {
        "endpoint": {
            "cookie": {},
            "endpointId": "<ターゲットエンドポイントの識別子>",
            "scope": {
                "token": "<OAuth2ベアラートークン>",
                "type": "BearerToken"
            }
        },
        "header": {
            "correlationToken": "dFMb0z+PgpgdDmluhJ1LddFvSqZ/jCc8ptlAKulUj90jSqg==",
            "messageId": "e7f9c31f-cb90-4003-9795-c6fb9f487945",
            "name": "SearchAndPlay",
            "namespace": "Alexa.RemoteVideoPlayer",
            "payloadVersion": "3"
        },
        "payload": {
           "experience": {
               "mode": "VOICE_OPTIMIZED",
                },
            "entities": [
                {
                    "externalIds": {
                        "imdb": "tt4574334"
                    },
                    "type": "Video",
                    "uri": "entity://provider/show/manchesterbythesea",
                    "value": "マンチェスター・バイ・ザ・シー"
                }
            ],
            "searchText": [
                {
                    "transcribed": "マンチェスター・バイ・ザ・シー"
                }
            ],
            "timeWindow": {
                "end": "2016-09-07T23:59:00+00:00",
                "start": "2016-09-01T00:00:00+00:00"
            }
        }
    }
}
ペイロードの定義
| フィールド | 説明 | データ型 | 
|---|---|---|
| entities(省略可能) | タイトル、シリーズ、俳優、チーム、メディアタイプなど、再生するエンティティオブジェクトの配列です。エンティティタイプと値の詳細については、エンティティタイプを参照してください。 | 配列 | 
| experience(省略可能) | 検索結果の表示を最適化するオブジェクトです。 experienceオブジェクトを使用すると、ユーザーが検索に使用したデバイスに基づいて、検索結果の表示方法を変更できます。experienceオブジェクトとその値の詳細については、エクスペリエンスタイプを参照してください。 | modeを含むオブジェクト | 
| searchText(省略可能) | ユーザーの検索クエリをテキストに変換したものが transcribedフィールドの文字列値として格納されます。詳細については、実際のユーザーリクエストの表示を参照してください。 | transcribeを含むオブジェクト | 
| transcribed(省略可能) | ユーザーの発話をテキストに変換したものを提供します。詳細については、searchTextオブジェクトを参照してください。 例: | 文字列 | 
| timeWindow(省略可能) | ユーザーが再生したいコンテンツのタイムウィンドウを指定します。たとえば、先週のエピソードを再生したい場合、タイムウィンドウには前の週を指定します。 | startとendの時間を含むオブジェクト | 
| end(省略可能) | タイムウィンドウの終了時刻。 例:  | ISO 8601形式の文字列 | 
| start(省略可能) | タイムウィンドウの開始時刻。 例:  | ISO 8601形式の文字列 | 
エンティティタイプ
entitiesオブジェクトは、オブジェクトのリストで構成されています。それぞれのオブジェクトには、タイプ(type)や値のほか、外部IDなどのその他のデータが含まれます。type値として使用できる値は、 Actor、App、Channel、Character、Director、Episode、Event、Franchise、Genre、League、MediaType、ProductionCompany、Season、Sport、SportsTeam、Video、Popularity、Recency、VideoResolutionです。以下のセクションでは、各エンティティタイプのペイロードの詳細について説明します。
Actor
Actorは、ビデオメディアコンテンツに出演している俳優を表します。たとえば、俳優の「ケイシー・アフレック」の場合は、以下のようなフィールドが含まれます。
| Actorペイロードのフィールド | 説明 | 型 | 例 | 
|---|---|---|---|
| externalIds | このエンティティの外部識別子のマップです。キーはプロバイダー、値はIDです。 | オブジェクト | — | 
| └─ ASIN | このエンティティの外部ASINです。 | 文字列 | B01LTHZVKG | 
| └─ imdb | 俳優のIMDB識別子です。 | 文字列 | tt4034228 | 
| uri | 俳優/女優へのURIマッピングです。 | URI | entity://provider/actor/caseyaffleck  | 
| value | 俳優の名前です。 | 文字列 | ケイシー・アフレック | 
App
Appは、ユーザーが発話で指定した明示的なアプリ名を表します。たとえば、「Amazonプライム・ビデオの『マンチェスター・バイ・ザ・シー』」の場合は、以下のようなフィールドが含まれます。
| Appペイロードのフィールド | 説明 | 型 | 例 | 
|---|---|---|---|
| externalIds | このエンティティの外部識別子のマップです。キーはプロバイダー、値はIDです。 | オブジェクト | — | 
| └─ ENTITY_ID | アプリのリストに含まれるアプリ識別子です。 | 文字列 | amzn1.alexa-ask-target.app.72095 | 
| value | アプリの名前です。 | 文字列 | Amazonプライム・ビデオ | 
Channel
Channelは、テレビチャンネルの識別データを表します。たとえば、「PBS」には以下のようなフィールドが含まれます。
| Channelペイロードのフィールド | 説明 | 型 | 例 | 
|---|---|---|---|
| externalIds | このエンティティの外部識別子のマップです。キーはプロバイダー、値はIDです。 | オブジェクト | — | 
| └─ imdb | 外部IMDB識別子です。 | 文字列 | tt4034228 | 
| entityMetadata | チャンネルに関連付けられたメタデータのマップです。 | オブジェクト | — | 
| └─ channelNumber | チャンネル番号です。 | 整数 | 1234 | 
| └─ channelCallSign | チャンネルのコールサインです。 | 文字列 | KBTC | 
| uri | チャンネルのURIです。 | URI | entity://provider/channel/1234  | 
| value | チャンネルの名前です。 | 文字列 | PBS | 
Character
Characterは、ビデオメディアコンテンツのキャラクターを表します。
| Characterペイロードのフィールド | 説明 | 型 | 例 | 
|---|---|---|---|
| externalIds | このエンティティの外部識別子のマップです。キーはプロバイダー、値はIDです。 | オブジェクト | — | 
| └─ ASIN | このエンティティのASIN(Amazon Standard Identification Number)です。 | 文字列 | B00DT55P3K | 
| └─ imdb | キャラクターのIMDB識別子です。 | 文字列 | character id | 
| uri | キャラクターへのURIマッピングです。 | URI | entity://provider/character/snowwhite  | 
| value | キャラクターの名前です。 | 文字列 | 白雪姫 | 
Director
Directorは、ビデオメディアコンテンツの監督名を表します。たとえば、「ケネス・ロナーガン」の場合は、以下のようなフィールドが含まれます。
| Directorペイロードのフィールド | 説明 | 型 | 例 | 
|---|---|---|---|
| externalIds | このエンティティの外部識別子のマップです。キーはプロバイダー、値はIDです。 | オブジェクト | — | 
| └─ imdb | 外部IMDB識別子です。 | 文字列 | tt4034228 | 
| uri | 監督へのURIマッピングです。 | URI | entity://provider/director/kennethlonergan | 
| value | 監督の名前です。 | 文字列 | ケネス・ロナーガン | 
Episode
Episodeは、TV番組などの連続コンテンツのエピソード番号を表します。たとえば、「トランスペアレント」第8話のエピソード番号は「8」になります。
| Episodeペイロードのフィールド | 説明 | 型 | 例 | 
|---|---|---|---|
| value | エピソード番号です。 | 整数 | 8 | 
Event
Eventは、イベントタイプへの参照です。これには、スポーツ、音楽、その他のタイプのイベントが含まれます。たとえば、「フットボールの試合」を検索する場合、「試合」というイベントエンティティと「フットボール」というスポーツエンティティが検索されます。
| Eventペイロードのフィールド | 説明 | 型 | 例 | 
|---|---|---|---|
| externalIds | このエンティティの外部識別子のマップです。キーはプロバイダー、値はIDです。 | オブジェクト | — | 
| └─ imdb | イベントのIMDB識別子です。 | 文字列 | tt4034228 | 
| uri | イベントへのURIマッピングです。 | URI | entity://amazon/events/games  | 
| value | イベントタイプの名前です。 | 文字列 | 試合 | 
Franchise
Franchiseは、映画やTV番組など、複数のビデオエンティティを表すビデオエンティティです。たとえば、「宇宙大戦争」というSFシリーズの場合、映画シリーズのほか、アニメと実写のTV番組もあります。このエンティティタイプを使用すると、たとえばユーザーが「『宇宙大戦争』の映画を探して」とリクエストした場合、1つのタイトルだけでなく、MediaTypeがMOVIEである「宇宙大戦争」の全コンテンツを検索できます。
| Franchiseペイロードのフィールド | 説明 | 型 | 例 | 
|---|---|---|---|
| externalIds | このエンティティの外部識別子のマップです。キーはプロバイダー、値はIDです。 | オブジェクト | — | 
| └─ imdb | 外部IMDB識別子です。 | 文字列 | tt4034228 | 
| uri | シリーズへのURIマッピングです。 | イベントへのURIマッピングです。 | entity://amazon/franchise/intergalacticwars | 
| value | ジャンルの名前です。 | 文字列 | 宇宙大戦争 | 
Genre
Genreは、アクション、ドラマ、コメディといった、ビデオメディアコンテンツのジャンルを表します。たとえば、アクションのジャンルの場合は、以下のようなフィールドが含まれます。
| Genreペイロードのフィールド | 説明 | 型 | 例 | 
|---|---|---|---|
| externalIds | このエンティティの外部識別子のマップです。キーはプロバイダー、値はIDです。 | オブジェクト | — | 
| └─ imdb | 外部IMDB識別子です。 | 文字列 | tt4034228 | 
| uri | ジャンルへのURIマッピングです。 | URI | entity://provider/genre/action | 
| value | ジャンルの名前です。 | 文字列 | アクション | 
League
Leagueは、スポーツリーグのカテゴリー情報を表します。たとえば、NCAAというリーグの場合は、以下のようなフィールドが含まれます。
| Leagueペイロードのフィールド | 説明 | 型 | 例 | 
|---|---|---|---|
| externalIds | このエンティティの外部識別子のマップです。キーはプロバイダー、値はIDです。 | オブジェクト | — | 
| └─ imdb | リーグのIMDB識別子です。 | 文字列 | tt4034228 | 
| uri | リーグへのURIマッピングです。 | URI | entity://amazon/league/ncaa | 
| value | リーグの名前です。 | 文字列 | NCAA | 
MediaType
MediaTypeは、特定のコンテンツのメディアタイプカテゴリーを表します。たとえば、「マンチェスター・バイ・ザ・シー」という映画の場合、MediaTypeはMOVIEになります。
| MediaTypeペイロードのフィールド | 説明 | 型 | 例 | 
|---|---|---|---|
| value | メディアタイプです。有効な値は、 MOVIE、VIDEO、TV_SHOWです。 | 列挙型 | MOVIE | 
ProductionCompany
ProductionCompanyは、ビデオメディアコンテンツの制作会社名を表します(例:Marvels、Disney)。
| ProductionCompanyペイロードのフィールド | 説明 | 型 | 例 | 
|---|---|---|---|
| value | 制作会社の名前です。 | 文字列 | Marvel | 
Season
Seasonは、TV番組などの連続コンテンツのシーズン番号を表します。たとえば、「トランスペアレント」シーズン2のシーズン番号は「2」になります。
| Seasonペイロードのフィールド | 説明 | 型 | 例 | 
|---|---|---|---|
| value | シーズン番号です。 | 整数 | 2 | 
Sport
Sportは、スポーツのカテゴリー情報を表します。たとえば、フットボールの場合は、以下のようなフィールドが含まれます。
| Sportペイロードのフィールド | 説明 | 型 | 例 | 
|---|---|---|---|
| externalIds | このエンティティの外部識別子のマップです。キーはプロバイダー、値はIDです。 | オブジェクト | — | 
| └─ imdb | スポーツのIMDB識別子です。 | 文字列 | tt4034228 | 
| uri | スポーツへのURIマッピングです。 | URI | entity://amazon/sport/football  | 
| value | スポーツの名前です。 | 文字列 | フットボール | 
SportsTeam
SportsTeamは、プロスポーツチームのカテゴリー情報を表します。たとえば、「ワシントン大学ハスキーズ」というスポーツチームの場合は、以下のようなフィールドが含まれます。
| SportsTeamペイロードのフィールド | 説明 | 型 | 例 | 
|---|---|---|---|
| externalIds | このエンティティの外部識別子のマップです。キーはプロバイダー、値はIDです。 | オブジェクト | — | 
| └─ imdb | このチームのIMDB識別子です。 | 文字列 | tt4034228 | 
| uri | スポーツチームへのURIマッピングです。 | URI | entity://amazon/sportsteam/huskies | 
| value | スポーツチームの名前です。 | 文字列 | ワシントン大学ハスキーズ | 
Video
Videoは、ビデオコンテンツの識別データを表します。たとえば、「マンチェスター・バイ・ザ・シー」という映画の場合は、以下のようなフィールドが含まれます。
| Videoペイロードのフィールド | 説明 | 型 | 例 | 
|---|---|---|---|
| externalIds | このエンティティの外部識別子のマップです。キーはプロバイダー、値はIDです。 | オブジェクト | — | 
| ASIN | このエンティティの外部ASINです。 | 文字列 | B01LTHZVKG | 
| └─ imdb | IMDB識別子です。 | 文字列 | tt4034228 | 
| userConfirmations | アイテムのユーザー確認に関する情報を含むオブジェクトです。 | オブジェクト | |
| └─ entitlementVoiceActivation | 視聴期間または視聴権限の音声有効化に成功したかどうかをパートナーに通知するフラグです。有効な値 - CONFIRMED(省略可能)。 | 列挙型(デフォルトポリシー:認識されない値は無視) | CONFIRMED | 
| uri | ビデオへのURIマッピングです。 | URI | entity://provider/movie/manchesterbythesea | 
| value | ビデオの名前です。 | 文字列 | マンチェスター・バイ・ザ・シー | 
Popularity
Popularityは、ユーザーが人気コンテンツを求めているかどうかを示します。
| Popularityペイロードのフィールド | 説明 | 型 | 例 | 
|---|---|---|---|
| value | ユーザーが人気コンテンツを検索したことをプロバイダーに示します。 | 文字列 | TRUE | 
Recency
Recencyの解決済みの値は、ユーザーが新しいコンテンツを求めているか、古いコンテンツを求めているかを示します。
| Recencyペイロードのフィールド | 説明 | 型 | 例 | 
|---|---|---|---|
| value | ユーザーが新しいコンテンツと古いコンテンツのどちらを検索するかを示します。有効な値は、 NEW、OLDのいずれかです。 | 列挙型 | NEW | 
VideoResolution
VideoResolutionは、リクエストされたビデオ解像度を次のいずれかの規格で表します。
- SD (480p)
- HD (720p-1080p)
- 4k (2160p)
- 8k (4320p)
| VideoResolutionペイロードのフィールド | 説明 | 型 | 例 | 
|---|---|---|---|
| value | ビデオ解像度です。有効な値は、 SD、HD、4k、8kです。 | 列挙型 | HD | 
エクスペリエンスタイプ
experienceオブジェクトを使用すると、検索に使用されたデバイスに基づいて、検索結果の表示を最適化できます。たとえば、ユーザーがFire TVリモコンを使用して検索した場合、ユーザーはリモコンを使用して結果を閲覧できるため、experienceオブジェクトによって多数の検索結果が表示されます。一方、Fire TVとペアリングされたEchoを使用して検索リクエストが行われた場合は、experienceオブジェクトによって表示される結果の数と表示方法が制限され、ユーザーはリモコンを使用せずに結果を確認できます。
experienceオブジェクトは、検索結果の表示方法を決定するmodeオブジェクトで構成されています。modeオブジェクトは、 VOICE_OPTIMIZEDとDEFAULTの2つの値を取ります。
- 
    VOICE_OPTIMIZED: 音声専用デバイス向けに最適化された表示方法です。リモコンを使用せずに音声で操作できる検索結果のリストが表示されます。
- 
    DEFAULT: 検索に使用されたデバイスに関係なく、すべての検索結果をリスト形式で表示する、デフォルトの表示方法です。
上位互換性を確保するため、modeで不明な値を受け取った場合は、失敗とするのではなく、DEFAULTにフォールバックするようにしてください。
SearchAndPlayディレクティブの処理
SearchAndPlayディレクティブには、メディアを再生するための命令が含まれています。このディレクティブでは、対象となるメディアオブジェクトと取得したURIがエンティティとして記述されます。このディレクティブには、検索および再生対象を指定するエンティティの配列が含まれます
(SearchAndPlayディレクティブは、マルチモーダル実装用ビデオスキルのGetPlayableItemsと似ています)。
以下のセクションでは、さまざまなリクエストに対してSearchAndPlayディレクティブを処理するためのガイダンスを提供します。
タイトルでの再生
「アレクサ、『インターステラー』を見せて」など、ユーザーがAlexa搭載デバイスに特定のタイトルの再生を依頼した場合、アプリまたはLambdaはSearchAndPlayディレクティブを受け取ります。
SearchAndPlayディレクティブには、externalIdsセクションが含まれています。このセクションで、カタログに対応するフィールドを探す必要があります。このフィールドには、カタログ統合で使用したID値が含まれるため、ユーザーがどの番組を再生したいかを正確に知ることができます。これを使用してメディアを再生することで、ユーザーのリクエストを満たすことができます。
同じカタログ内でディレクティブに複数のID値が含まれている場合は、ユーザーがリクエストしたタイトルに一致する番組をAlexaがカタログ内で複数特定した可能性があります。その場合は、ユーザーに最適な再生コンテンツを選択する必要があります。ユーザーに合ったコンテンツを選び出すためのアルゴリズムを活用してください。
確実にアプリにあるコンテンツの再生をAlexaにリクエストしているにもかかわらず、externalIdsフィールドにカタログのID値が見つからない場合は、Amazonの担当者に問い合わせてサポートを依頼してください。
タイトル、エピソード、シーズンでの再生
ユーザーが「アレクサ、『インターステラー』シーズン2エピソード2を見せて」と話しかけた場合は、ユーザーが「アレクサ、『インターステラー』を見せて」と話しかけた場合と似たディレクティブを受け取ります。 ただし、重要な違いとして、このディレクティブには次のJSONが含まれます。
{
  "type": "Episode",
  "value": "2"
},
{
  "type": "Season",
  "value": "2"
}
このJSONは、ユーザーがリクエストしたシーズン番号とエピソード番号を示します。これを基に、ユーザーの希望するシーズンやエピソードを再生する必要があります。受け取るカタログIDには、シーズン/エピソードIDではなく、トップレベルの番組のカタログIDのみが含まれます。ただし、正しいコンテンツを再生するには、番組のカタログIDと一緒にシーズン番号やエピソード番号を使用できる必要があります。
また、ユーザーがエピソードではなくシーズンだけを指定したり、シーズンではなくエピソードだけを指定する可能性も考慮して、ユーザーのリクエストを満たす必要があります。正しいコンテンツを特定するには、次のガイダンスに従ってください。
- ユーザーがTVシリーズのシーズンでタイトルを再生するよう依頼していて(「アレクサ、『ボッシュ』シーズン3を見せて」など)、希望するエピソードが不明な場合は、最後に再生したエピソードを表示します。最後に再生したエピソードの再生が完了している場合は、それ以降の次の未再生エピソードを表示します。または、シーズンのエピソードリストを表示します。
- ユーザーがエピソードでタイトルを再生するよう依頼していて(「アレクサ、『ボッシュ』エピソード5を見せて」など)、複数のシーズンが考えられる場合は、ユーザーが最後に再生したエピソードを確認して、正しいシーズンを特定します。最後に再生したエピソードがシーズン2のものである場合は、シーズン2のエピソード5を再生します。または、シーズンのエピソードリストを表示します。
シリーズでの再生
ユーザーが希望するコンテンツを明確に特定できないような発話もあります。たとえば、ユーザーが「アレクサ、『ジュラシックパーク』を見せて」と話しかけたとします。 こういったシナリオでは、ユーザーが「ジュラシックパーク 1」「ジュラシックパーク 2」「ジュラシックパーク 3」のどれを指しているのかがわかりません。このように複数のバリエーションがあるメディアは「シリーズ物」と呼ばれます。 シリーズ物のシナリオは、シーズンやエピソードのモデルにはうまく当てはまらないため、「シリーズで再生」で処理します。
ユーザーが「シリーズで再生」のリクエストを行うと、ユーザーがリクエストしたシリーズ物(この例の場合は「ジュラシックパーク」)をディレクティブで受け取りますが、このディレクティブにカタログIDは含まれません。このようなディレクティブの場合、カタログ内でこのコンテンツの検索を実行し、検索最上位のタイトルを再生することが望ましい動作です。それができない場合は、少なくともアプリでユーザーに検索結果を表示し、ユーザーがリモコンを使用して希望のコンテンツを見つけられるようにする必要があります。ディレクティブを単に無視することはしないでください。
シリーズ物のリストは、シリーズ物リストで確認することができます。
ジャンル、スポーツ、チーム、リーグ、その他のあいまいな再生ディレクティブでの再生
Alexaは、「アレクサ、コメディを見せて」や「アレクサ、バスケットボールを見せて」などのフレーズもサポートしています。 このように汎用的なシナリオの場合は、ユーザーに検索結果を表示するか、その特定ジャンルまたは適切なエンティティの詳細ページを表示するかを選択します。
たとえば、多くのアプリには、コメディ、アクション映画、シチュエーションコメディなどの専用ページがありますが、これは単純な検索結果とは異なります。このジャンルページは、そのトピックに関連するメディアを厳選したものです。ユーザーからのあいまいなリクエストを受信したときは、必要に応じて、こうした関連するジャンルページに移動することができます。最悪の場合でも、少なくともアプリでユーザーに検索結果を表示する必要があります。ディレクティブを単に無視することはしないでください。
ディレクティブで受け取る可能性のあるジャンルのリストは、ジャンルリストで確認することができます。
あいまいなリクエストの処理
SearchAndDisplayResultsと同様に、SearchAndPlayでは、コンテンツタイトル、シリーズ名、俳優、監督、スポーツチーム、メディアタイプなど、複数のエンティティタイプをサポートしています。したがって、これらのディレクティブには、あいまいなエンティティリクエストが含まれる可能性があります。
たとえば、ユーザーが「アレクサ、人気のコメディを見せて」や「アレクサ、ビリー・ボブ・ソーントンが出ている映画を見せて」のようなリクエストを行った場合、 あいまいさがあっても、リクエストをどのように処理するかは開発者が決定できます。たとえば、以下のように処理できます。
- 人気のコメディやボブ・ソーントンの映画の再生を開始する
- コメディやビリー・ボブ・ソーントンの映画の上位10件のリストを生成し、ユーザーが繰り返し処理を行わずに済むよう、ランダムに1つを選択する
- あいまいなエンティティの検索結果をそのまま表示する
応答の方法は選択できますが、可能な限りユーザーのリクエストに対応することをお勧めします。
実際のユーザーリクエストの表示
ご承知のとおり、クラウドのAlexaサービスは、ユーザーのリクエストの解釈、インテントの確認、ディレクティブへのパッケージ化を行っています。開発者が(Alexaが解釈した結果ではなく)実際のユーザーのリクエストを確認したい場合には、ユーザーの実際のリクエストを取得することができます。
ユーザーの検索リクエストは、ディレクティブのpayloadに含まれているsearchTextオブジェクトで確認できます。searchTextオブジェクトの中のtranscribed値が、ユーザーのインテントを表す文字列です。このtranscribed値は、ユーザーの発話から必要な要素を抜き出したものです。たとえば、「アレクサ、HDで人気のコメディTV番組を見せて」とリクエストした場合のtranscribed値は、次のようになります。
{
    "searchText": {
        "transcribed": "h.d. 人気のコメディTV番組"
    }
}
このように、transcribedプロパティは、リクエストを編集してまとめたものであり、リクエストの主要な語句が抜き出されています。searchTextオブジェクトには、次のような制限事項があります。
- 語順の保証はありません。 同じ発話でも、searchTextが次のように、異なる順序でtranscribed値を返すことがあります。- 「h. d.朝鮮戦争のドキュメンタリー映画」
- 「朝鮮戦争のドキュメンタリーh. d.映画」
 
- searchTextの内容は、時間の経過やディレクティブによって変わることがあります。 同じ発話でも、時によって- searchTextが返す- transcribed値が次のように異なることがあります。- 「トップテンコメディ」
- 「トップ10コメディ」
 
- アクションの動詞は省略されます。 transcribed値では、ユーザーのリクエストで使用されていたアクションの動詞は確認できません。
searchTextには、(ユーザーのリクエストに含まれていれば)コンテンツプロバイダー名が含まれる場合があることに注意してください。以下に例をいくつか挙げます。
- 「アレクサ、<コンテンツプロバイダー>の映画を検索して」というリクエストでは、transcribed値として「<コンテンツプロバイダー>の映画」が返されます。
- 「アレクサ、<コンテンツプロバイダー>のコメディ番組を検索して」というリクエストでは、transcribed値として「<コンテンツプロバイダー>のコメディ番組」が返されます。
searchTextは、検索ペイロードのほかの値のフォールバックとしてのみ使用してください。searchTextフィールドは省略可能であり、受信したディレクティブには含まれていない場合があります。実装では、ディレクティブにsearchText値が含まれていない場合でも、レスポンスを返す必要があります。キーワード検索(全文検索など)に重点を置く場合は、searchTextを使用します。エンティティは解決されたカタログ値に依存することに注意してください。特定の値に関連する専門カタログ(映画カタログやジャンルカタログなど)がある場合や、構造化クエリを容易にする何らかのデータモデルを使用している場合は、これらのエンティティを使用します。
レスポンスの例
アプリでディレクティブが正常に処理された場合、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クラスを参照してください。
SearchAndPlayResultsディレクティブが正常に完了した場合、アプリまたはLambdaはAlexa.Responseメッセージで応答する必要があります。
{
   "context": {
       "properties": []
   },
   "event": {
       "header": {
           "correlationToken": "dFMb0z+PgpgdDmluhJ1LddFvSqZ/jCc8ptlAKulUj90jSqg==",
           "messageId": "1d8749ce-2805-4781-bb34-c5c59ce71f6a",
           "name": "Response",
           "namespace": "Alexa",
           "payloadVersion": "3"
       },
       "payload": {}
   }
}
payloadの内容は不要です。Fire TV対応アプリのビデオスキルでは、Alexaへのレスポンスは最小限で、空のpayloadが返されます。これは、必要な命令をADM経由でFire TV対応アプリに送信しているためです。
何らかの理由でユーザーのリクエストを完了できない場合は、エラーレスポンスを返す必要があります。詳細については、エラー処理を参照してください。
インターフェース機能に対するサポートの宣言
RemoteVideoPlayerインターフェースからのSearchAndDisplayResultsディレクティブをアプリで受け取るには、機能を宣言する際に、このインターフェースのサポートを明示する必要があります。アプリのみの統合で機能を宣言する方法の詳細については、以下を参照してください。
ビデオスキルがAlexa.RemoteVideoPlayerインターフェースのSearchAndPlayディレクティブをサポートしていることを示すには、Alexa.Discoveryインターフェースを介して送信されたDiscoverディレクティブへのレスポンスで、そのサポートを明示する必要があります。詳細については、Discoveryインターフェースを参照してください。

