SearchAndPlayディレクティブ


SearchAndPlayディレクティブ

SearchAndPlayディレクティブは、ユーザーがAlexaに「『ボッシュ』を再生して」や「ウォリアーズの試合を見せて」などと依頼した場合に使用されます。

SearchAndPlayディレクティブの発話

ユーザーが以下の発話を行うと、AlexaはLambdaにSearchAndPlayディレクティブを送信します。

機能 サンプル発話 想定される結果
タイトルを再生

Watch Breaking Bad

Play Interstellar

Spiele {title}

Öffne {title}

Gebe {title} wieder

Starte {title}

Zeige {title}

<Breaking Bad>

Mets Breaking Bad

Lance Breaking Bad

Mets/joue/fais jouer breaking bad

Fai partire breaking bad

Metti breaking bad

<House, The Office, Sneaky Pete>

Pon breaking bad

(quiero) ver breaking bad

Pon breaking bad

Ponme breaking bad

Pon me breaking bad

(quiero) ver breaking bad

{title}再生して

{title}見せて

{title}流して

{title}かけて

{title}見たい

{title}をお願い

リクエストされたメディアが再生されます。一致するコンテンツが複数ある場合、ユーザーは目的のメディアを選択するように求められます。

メディアタイプで再生

Watch movies

Spiele Filme

Spiele einen Film

Mets un film

Mets les films

Je veux voir un film

Je veux voir des films

Je veux regarder un film

Je veux regarder des films

Mets-moi un film

Mets/joue/fais jouer un film

Je veux écouter/regarder/voir un film

fai partire un film

metti un film

fammi vedere un film

pon una película

pon películas

(quiero) ver una película

(quiero) ver películas

pon una película

pon una peli

pon películas

ponme una película

ponme una peli

ponme películas

pon me una película

pon me una peli

pon me películas

(quiero) ver una película

(quiero) ver una peli

(quiero) ver películas

{media type}を再生して

{media type}を見せて

{media type}を流して

{media type}をかけて

{media type}見たい

{media type}をお願い

タイトル以外のリクエストに一致するメディアが(ユーザーへのおすすめビデオを選び出すアルゴリズムによって)再生されるか、検索結果リストがユーザーに表示されます。

俳優で再生

Watch Sean Connery

Play a movie with Tom Hanks

spiele einen Film mit {actor} ab.

<Ann Blyth, Axel Deller, John Oliver>

Mets un film de Sean Connery

Je veux voir un film avec Sean Connery

Je veux voir un film de Sean Connery

Je veux regarder un film avec Sean Connery

Je veux regarder un film de Sean Connery

Mets-moi un film avec Sean Connery

Mets-moi un film de Sean Connery

Mets/joue/fais jouer un film de/avec Sean Connery

Je veux écouter/regarder/voir un film de/avec Sean Connery

fai partire un film con sean connery

metti un film con sean connery

fammi vedere un film con sean connery

<Gianni Franco, Sonia Scotti, Stefano Sani>

pon (una película) de Sean Connery

(quiero) ver (una película) de Sean Connery

pon (una película) de Sean Connery

ponme (una película) de Sean Connery

pon me (una película) de Sean Connery

(quiero) ver (una película) de Sean Connery

pon (una peli) de Sean Connery

ponme (una peli) de Sean Connery

pon me (una peli) de Sean Connery

(quiero) ver (una peli) de Sean Connery

{actor}再生して

{actor}見せて

{actor}流して

{actor}かけて

{actor}の{media type}を再生して

{actor}の{media type}見せて

{actor}の{media type}を流して

{actor}の{media type}をかけて

{actor}が出てる{media type}を再生して

{actor}が出てる{media type}見せて

{actor}が出てる{media type}を流して

{actor}が出てる{media type}をかけて

*{media type}:映画/ドラマ/やつ/もの/の

俳優が出演しているメディアが(ユーザーへのベストマッチを選び出すアルゴリズムによって)再生されるか、検索結果リストがユーザーに表示されます。

シーズン番号で<タイトル>を再生

Watch breaking bad season two

Spiele {title} Staffel {X}

Spiele die {X}. Staffel von {title}

<Breaking Bad>

Mets la saison 2 de Breaking Bad

Mets la deuxième saison de Breaking Bad

Je veux regarder la saison 2 de Breaking Bad

Je veux voir la saison 2 de Breaking Bad

Je veux regarder la deuxième saison de Breaking Bad

Je veux voir la deuxième saison de Breaking Bad

Mets-moi la saison 2 de Breaking Bad

Mets-moi la deuxième saison de Breaking Bad

Mets/joue/fais jouer la deuxième saison/saison 2 de breaking bad

Je veux écouter/regarder/voir la deuxième saison/saison 2 de breaking bad

metti la seconda stagione di breaking bad

fai partire la seconda stagione di breaking bad

fammi vedere la seconda stagione di breaking bad

riproduci la seconda stagione di breaking bad

<House, The Office, Sneaky Pete>

Pon la temporada 2 de breaking bad

pon la segunda temporada de breaking bad

(quiero) ver la temporada 2 de breaking bad

(quiero) ver la segunda temporada de breaking bad

pon la temporada 2 de breaking bad

pon la segunda temporada de breaking bad

ponme la temporada 2 de breaking bad

ponme la segunda temporada de breaking bad

pon me la temporada 2 de breaking bad

pon me la segunda temporada de breaking bad

(quiero) ver la temporada 2 de breaking bad

(quiero) ver la segunda temporada de breaking bad

{title} シーズン{season number}を再生して

{title} シーズン{season number}を見せて

{title} シーズン{season number}を流して

{title} シーズン{season number}をかけて

{title} シーズン{season number}見たい

{title} シーズン{season number}をお願い

シリーズの最後に視聴したエピソードが視聴途中の場合は、そのエピソードが再生されます。視聴が完了している場合は、次の未視聴エピソードが再生されます。

エピソード番号で<タイトル>を再生

Watch breaking bad episode five

Spiele {title} Folge 5 ab.

<Breaking Bad>

Mets l'épisode 5 de Breaking Bad

Mets le cinquième épisode de Breaking Bad

Je veux voir l'épisode 5 de Breaking Bad

Je veux voir le cinquième épisode de Breaking Bad

Je veux regarder l'épisode 5 de Breaking Bad

Je veux regarder le cinquième épisode de Breaking Bad

Mets-moi l'épisode 5 de Breaking Bad

Mets-moi le cinquième épisode de Breaking Bad

Mets/joue/fais jouer le/la cinquième épisode/épisode 5 de breaking bad

Je veux écouter/regarder/voir le/la cinquième épisode/épisode 5 de breaking bad

metti il quinto episodio di breaking bad

fai partire il quinto episodio di breaking bad

fammi vedere l'episodio cinque di breaking bad

<House, The Office, Sneaky Pete>

pon el episodio 5 de breaking bad

pon el capítulo 5 de breaking bad

(quiero) ver el episodio 5 de breaking bad

(quiero) ver el capítulo 5 de breaking bad

pon el episodio 5 de breaking bad

pon el capítulo 5 de breaking bad

ponme el episodio 5 de breaking bad

ponme el capítulo 5 de breaking bad

pon me el episodio 5 de breaking bad

pon me el capítulo 5 de breaking bad

(quiero) ver el episodio 5 de breaking bad

(quiero) ver el capítulo 5 de breaking bad

{title} エピソード{episode number}を再生して

{title} エピソード{episode number}を見せて

{title} エピソード{episode number}を流して

{title} エピソード{episode number}をかけて

{title} エピソード{episode number}見たい

{title} エピソード{episode number}をお願い

ユーザーが最後に視聴したエピソードから、適切なシーズンが特定されます。シリーズの最後に視聴したエピソードが視聴途中の場合は、そのエピソードが再生されます。視聴が完了している場合は、次の未視聴エピソードが再生されます。

シーズン番号とエピソード番号で<タイトル>を再生

Watch breaking bad season two episode five

Spiele {title} Staffel 2 Folge 5 ab.

<Breaking Bad>

Mets l'épisode 5 de la saison 2 de Breaking Bad

Mets l'épisode 5 de la deuxième saison de Breaking Bad

Je veux voir l'épisode 5 de la saison 2 de Breaking Bad

Je veux voir l'épisode 5 de la deuxième saison de Breaking Bad

Je veux regarder l'épisode 5 de la saison 2 de Breaking Bad

Je veux regarder l'épisode 5 de la deuxième saison de Breaking Bad

Mets-moi l'épisode 5 de la saison 2 de Breaking Bad

Mets-moi l'épisode 5 de la deuxième saison de Breaking Bad

Mets/joue/fais jouer le/la cinquième épisode/épisode 5 de la deuxième saison/saison 2 de breaking bad

Mets/joue/fais jouer (la) saison 2 épisode 5 de breaking bad
Je veux écouter/regarder/voir le/la cinquième épisode/épisode 5 de la deuxième saison/saison 2 de breaking bad
Je veux écouter/regarder/voir (la) saison 2 épisode 5 de breaking bad

metti il quinto episodio della seconda stagione di breaking bad

fai partire il quinto episodio della seconda stagione di breaking bad

metti l'episodio cinque della stagione due di breaking bad

fai partire l'episodio cinque della seconda stagione di breaking bad

<House, The Office, Sneaky Pete>

pon el episodio 5 de la temporada 2 de breaking bad

pon el episodio 5 de la segunda temporada de breaking bad

(quiero) ver el episodio 5 de la temporada 2 de breaking bad

(quiero) ver el episodio 5 de la segunda temporada de breaking bad

pon el episodio 5 de la temporada 2 de breaking bad

pon el episodio 5 de la segunda temporada de breaking bad

ponme el episodio 5 de la temporada 2 de breaking bad

ponme el episodio 5 de la segunda temporada de breaking bad

pon me el episodio 5 de la temporada 2 de breaking bad

pon me el episodio 5 de la segunda temporada de breaking bad

(quiero) ver el episodio 5 de la temporada 2 de breaking bad

(quiero) ver el episodio 5 de la segunda temporada de breaking bad

{title} シーズン{season number}エピソード{episode number}再生して

{title} シーズン{season number}エピソード{episode number}見せて

{title} シーズン{season number}エピソード{episode number}流して

{title} シーズン{season number}エピソード{episode number}かけて

{title} シーズン{season number}エピソード{episode number}見たい

{title} シーズン{season number}エピソード{episode number}をお願い

リクエストされたシーズンとエピソードに対応するコンテンツが再生されます。

シリーズの<タイトル>で再生

Watch star trek

Spiele {franchise title}

Spiele {franchise title} Filme

<Star Wars, James Bond, Batman, Star Trek>

Mets Star Trek

Je veux voir Star Trek

Je veux regarder Star Trek

Mets-moi Star Trek

Mets/joue/fais jouer star trek

Je veux écouter/regarder/voir star trek

metti star trek

fai partire star trek

fammi vedere star trek

<Superman, cars, Scream>

pon star trek

(quiero) ver star trek

pon star trek

pon una película de star trek

pon una peli de star trek

ponme star trek

ponme una película de star trek

ponme una peli de star trek

pon me una película de star trek

pon me una peli de star trek

(quiero) ver star trek

(quiero) ver (una película de) star trek

{franchise title}再生して

{franchise title}見せて

{franchise title}流して

{franchise title}かけて

{franchise title}見たい

{franchise title}をお願い

リクエストされたシリーズの検索結果から最上位のおすすめが再生されるか、一致するシリーズのリストがユーザーに表示されます。

キャラクター名で再生

Watch james bond

spiele einen Film mit {actor} ab.

<James Bond>

Mets James Bond

Je veux voir James Bond

Je veux regarder James Bond

Mets-moi James Bond

Mets un James Bond

Je veux voir un James Bond

Je veux regarder un James Bond

Mets-moi un James Bond

Mets/joue/fais jouer james bond

Je veux écouter/regarder/voir james bond

metti james bond

metti un film di james bond

fai partire un james bond

<Superman>

pon james bond

(quiero) ver james bond

pon james bond

pon una película de james bond

ponme james bond

ponme una película de james bond

pon me james bond

pon me una película de james bond

(quiero) ver james bond

(quiero) ver (una película de) james bond

{character}を再生して

{character}を見せて

{character}を流して

{character}をかけて

{character}の{media type}再生して

{character}の{media type}見せて

{character}の{media type}流して

{character}の{media type}かけて

{character}が出てる{media type}再生して

{character}が出てる{media type}見せて

{character}が出てる{media type}流して

{character}が出てる{media type}かけて

*{media type}:映画/ドラマ/やつ/もの/の

キャラクター名に一致するメディアが(ユーザーへのおすすめメディアを選び出すアルゴリズムによって)再生されるか、メディアの検索結果リストがユーザーに表示されます。

ジャンル名で再生

Watch comedy

spiele ein(e/n) {genre} ab.

<Familie,Architektur, Landestypisch>

Mets une comédie

Je veux voir une comédie

Je veux regarder une comédie

Mets-moi une comédie

Mets/joue/fais jouer une comédie

Je veux écouter/regarder/voir june comédie

metti una commedia

fammi vedere una commedia

fai partire una commedia

<Commedia>

pon una comedia

(quiero) ver una comedia

pon una comedia

pon una película de comedia

ponme una comedia

ponme una película de comedia

pon me una comedia

pon me una película de comedia

(quiero) ver una comedia

(quiero) ver una película de comedia

{genre}再生して

{genre}見せて

{genre}流して

{genre}かけて

{genre}見たい

{genre}をお願い

リクエストされたジャンルからメディアが(ユーザーへのおすすめメディアを選び出すアルゴリズムによって)再生されるか、メディアの検索結果リストがユーザーに表示されます。

スポーツのチームで再生

Watch seahawks

Zeig mir {sports team}

Zeig mir das Spiel von {sports team}

Zeig mir Spiele von {sports team}

Zeig mir die Partie von {sports team}

Spiele von {sports team} anschauen

{sports team} anschauen

<Erster. FC Heidenheim, Erster FC Heidenheim, Erster FC Kaiserslautern>

Mets les Bleus

Mets le match des Bleus

Je veux voir le match des Bleus

Je veux regarder le match des Bleus

Je veux voir les Bleus

Je veux regarder les Bleus

Mets-moi les Bleus

Mets-moi le match des Bleus

Mets/joue/fais jouer le/les Canadiens

Mets/joue/fais jouer le match/la partie/ la game du/des Canadiens

Je veux écouter/regarder/voir le/les Canadiens

Je veux écouter/regarder/voir le match/la partie/ la game du/des Canadiens

fammi vedere la Juventus

<Aberdeen, ac milan>

pon el Madrid

(quiero) ver el Madrid

pon el América

pon el partido del América

ponme el América

ponme el partido del América

pon me el América

pon me el partido del América

(quiero) ver el América

(quiero) ver el partido del América

{sports team}再生して

{sports team}見せて

{sports team}流して

{sports team}かけて

{sports team}見たい

{sports team}をお願い

スポーツのチームに一致するメディアが(ユーザーへのおすすめメディアを選び出すアルゴリズムによって)再生されるか、メディアの検索結果リストがユーザーに表示されます。

スポーツの種類で再生

Watch soccer

Zeig mir {sports type}

{sports type} anschauen

Spiel {sports type} ab

Mets le foot

Je veux voir le foot

Je veux regarder le foot

Mets-moi le foot

Mets/joue/fais jouer du/le hockey

Je veux écouter/regarder/voir

du/le hockey

fammi vedere una partita di calcio

metti la/una partita

pon el fútbol

(quiero) ver el fútbol

pon fútbol

ponme fútbol

pon me fútbol

pon el fútbol

ponme el fútbol

pon me el fútbol

(quiero) ver fútbol

pon partidos de fútbol

(quiero) ver partidos de fútbol

{sports type}再生して

{sports type}見せて

{sports type}流して

{sports type}かけて

{sports type}見たい

{sports type}をお願い

スポーツの種類に一致するメディアが(ユーザーへのおすすめメディアを選び出すアルゴリズムによって)再生されるか、検索結果リストがユーザーに表示されます。

スポーツのリーグで再生

Watch n. b. a. league

Zeig mir die {sports league}

{sports league} anschauen

Spiel {sports league} ab

Ruf {sports league} auf

Zeig {sports league} Spiele

<Erste Baseball Bundesliga, Zweite Baseball Bundesliga, Zweite Bundesliga>

Mets la n.b.a.

Je veux voir la n.b.a.

Je veux regarder la n.b.a

Mets-moi la n.b.a.

Mets un match de la n.b.a.

Je veux voir un match de la n.b.a.

Je veux regarder un match de la n.b.a

Mets-moi un match de la n.b.a.

Mets/joue/fais jouer (un match de/une partie de/ une game de) la LNH/NHL/Ligue nationale

Je veux écouter/regarder/voir (un match de/une partie de/ une game de) la LNH/NHL/Ligue nationale

fammi vedere la n.b.a.

metti l'n.b.a.

<America's Cup>

pon la n. b. a.

(quiero) ver la n. b. a.

pon la n. b. a.

ponme la n. b. a.

pon me la n. b. a.

(quiero) ver la n. b. a.

{sports league}を再生して

{sports league}を見せて

{sports league}を流して

{sports league}をかけて

{sports league}見たい

{sports league}をお願い

スポーツのリーグに一致するメディアが(ユーザーへのおすすめメディアを選び出すアルゴリズムによって)再生されるか、検索結果リストがユーザーに表示されます。

スポーツのイベントで再生

Watch soccer game

Zeig mir das {sports event}

Zeig mir ein {sports event}

Das {sports event} aufrufen

<wettkampf, spiel, match>

Mets un match de foot/football

Je veux voir un match de foot/football

Je veux regarder un match de foot/football

Mets-moi un match de foot/football

Mets/joue/fais jouer un match/une partie/ une game de hockey

Je veux écouter/regarder/voir un match/une partie/ une game de hockey

metti una partita di calcio

fammi vedere una/la partita

<gli europei>

pon el partido de fútbol

(quiero) ver el partido de fútbol

pon el partido de fútbol

ponme el partido de fútbol

(quiero) ver el partido de fútbol

{sports event}再生して

{sports event}見せて

{sports event}流して

{sports event}かけて

{sports event}見たい

{sports event}をお願い

スポーツのイベントに一致するメディアが(ユーザーへのおすすめメディアを選び出すアルゴリズムによって)再生されるか、検索結果リストがユーザーに表示されます。

SearchAndPlayディレクティブの処理

SearchAndPlayディレクティブには、メディアを再生するための命令が含まれています。このディレクティブでは、対象となるメディアオブジェクトと取得したURIがエンティティとして記述されます。このディレクティブには、検索および再生対象を指定するエンティティの配列が含まれます

SearchAndPlayディレクティブは、マルチモーダル実装用ビデオスキルのGetPlayableItemsと似ています)。

以下のセクションでは、さまざまなリクエストに対してSearchAndPlayディレクティブを処理するためのガイダンスを提供します。

タイトルで再生

「アレクサ、『インターステラー』を再生して」など、ユーザーがAlexa搭載デバイスにタイトルを言った場合に、LambdaはSearchAndPlayディレクティブを受け取ります。

SearchAndPlayディレクティブには、externalIdsセクションが含まれています。このセクションで、カタログに対応するフィールドを探す必要があります。このフィールドには、カタログ統合で使用したID値が含まれるため、ユーザーがどの番組を再生したいかを正確に知ることができます。これを使用してメディアを再生することで、ユーザーのリクエストを満たすことができます。

アプリにあるコンテンツの再生をAlexaに確実に依頼しているにもかかわらず、externalIdsフィールドにカタログのID値が見つからない場合は、Fire TVソリューションアーキテクトに問い合わせてサポートを依頼してください。

また、受信したディレクティブには複数のエンティティが含まれる場合があることにも注意してください。これは、同じ名前の番組が複数存在することが多いためです。Alexa Client Libraryを統合して、スキルの自動ペアリングを設定して仕上げる手順が完了したら、ディレクティブが絞り込まれ、(すべてのカタログからエントリを受け取るのではなく)独自のカタログから1つのエンティティのみを受け取ることができるようになります。ID値を自分のカタログのみに絞り込まない限り、独自のカタログIDを持つエンティティが見つかるまで、Lambdaコードで受け取ったエンティティを繰り返し処理する必要があります。エンティティが見つかったら、コード内で対応します。

同じカタログ内でディレクティブに複数のID値が含まれている場合は、Alexaがカタログ内の複数の番組を、ユーザーがリクエストしたタイトルに一致すると識別したことが原因である可能性があります。その場合は、ユーザーに最適な再生コンテンツを選択する必要があります。ユーザーに合ったコンテンツを選び出すためのアルゴリズムを活用してください。

タイトル、エピソード、シーズンで再生

ユーザーが「アレクサ、『インターステラー』シーズン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つを選択する
  • あいまいなエンティティの検索結果をそのまま表示する

応答の方法は選択できますが、可能な限りユーザーの再生リクエストに対応することをお勧めします。

コンテンツが見つからない場合の処理

ユーザーがリクエストしたコンテンツが見つからない場合は、CONTENT_NOT_FOUNDエラータイプを指定してエラーレスポンスを送信できます。詳細については、エラー処理を参照してください。

ユーザーエクスペリエンスには、「ボイスクリフ」が含まれないようにしてください。 ボイスクリフとは、ユーザーがリモコンを使わざるを得なくなるような音声エクスペリエンスのことです。

SearchAndPlayの例

以下は、SearchAndPlayディレクティブの例です。これは、ユーザーが『マンチェスター・バイ・ザ・シー』の再生をリクエストした場合に、Alexaからレスポンスとして送信されるディレクティブです。

{
  "directive": {
    "endpoint": {
      "scope": {
        "type": "BearerToken",
        "token": "access-token-from-skill"
      },
      "endpointId": "videoDevice-001",
      "cookie": {         
      }
    },
    "header": {
      "messageId": "abc-123-def-456",
      "correlationToken": "dFMb0z+PgpgdDmluhJ1LddFvSqZ/jCc8ptlAKulUj90jSqg==",
      "name": "SearchAndPlay",
      "namespace": "Alexa.RemoteVideoPlayer",
      "payloadVersion": "3"
    },
    "payload": {
      "entities": [{
        "externalIds": {
          "gracenote": "MV000000099001"
        },
        "value": "Manchester by the Sea",
        "type": "Video"
      }],
      "timeWindow": {
        "end": "2016-09-07T23:59:00+00:00",
        "start": "2016-09-01T00:00:00+00:00"
      }
    }
  }
}

ペイロードの説明

次の表は、GetBrowseNodeItemsコードサンプルのpayloadフィールドについて説明しています。

ペイロードの説明
フィールド 説明 データ型
entities
タイトル、シリーズ、俳優、チーム、メディアタイプなど、再生するエンティティオブジェクトの配列です。詳細については、[ビデオコンテンツのエンティティタイプ](../video-skills-fire-tv-apps/entity-types-for-video-content.html)を参照してください。 配列
timeWindow
ユーザーが再生したいコンテンツのタイムウィンドウを指定します。たとえば、先週のエピソードを再生したい場合、タイムウィンドウには前の週を指定します。 startendの時間を含むオブジェクト
end

タイムウィンドウの終了時刻です。

例: 2016-09-07T23:59:00+00:002018-01-24T02:30:00Z

ISO 8601形式の文字列
start

タイムウィンドウの開始時刻です。

例: 2016-09-07T23:59:00+00:002018-01-24T02:30:00Z

ISO 8601形式の文字列

レスポンスの例

SearchAndPlayディレクティブが正常に完了した場合、LambdaはAlexa.Responseメッセージで次のように応答する必要があります。

{
    "context": {
        "properties": []
    },
    "event": {
        "endpoint": {
            "scope": {
                "type": "DirectedUserId",
                "directedUserId": "access-token-from-Amazon"
            },
            "endpointId": "videoDevice-001"
        },
        "header": {
            "messageId": "abc-123-def-456",
            "correlationToken": "dFMb0z+PgpgdDmluhJ1LddFvSqZ/jCc8ptlAKulUj90jSqg==",
            "name": "Response",
            "namespace": "Alexa",
            "payloadVersion": "3"
        },
        "payload": {}
    }
}

payloadコンテンツは不要です。

Fire TV対応アプリのビデオスキルでは、Alexaへのレスポンスは最小限で、空のpayloadを返すことに注意してください。これは、必要な命令をADM経由でFire TV対応アプリに送信しているためです。一方、マルチモーダルデバイスでは、これは当てはまりません。マルチモーダルデバイスはアプリレスであるため、Alexaへのレスポンスにはメディアを再生するための詳細情報が含まれます。

エラーレスポンス

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