開発者コンソール

GetNextPageディレクティブ


GetNextPageディレクティブ

ユーザーが検索結果の「次のページ」に移動するよう選択するか、画面の表示可能な領域を越えて検索結果をスクロールすると、次の結果を取得するためのGetNextPageディレクティブがVideoContentProvider APIからLambdaに送信されます。レスポンスでは、次のページに表示する追加のアイテムが提供されます。

下の図は、そのワークフローを示しています。

GetNextPageディレクティブとLambdaのGetNextPageResponse

GetNextPageディレクティブの発話

機能 サンプル発話 想定されるレスポンス
次のページを取得
認定に必須

Next

次のページの結果が画面に表示されます。

機能 サンプル発話 想定されるレスポンス
次のページを取得
認定に必須

prochain(e)

suivant(e)

next

次のページの結果が画面に表示されます。

機能 サンプル発話 想定されるレスポンス
次のページを取得
認定に必須

prochain(e)

suivant(e)

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]

次のページの結果が画面に表示されます。

機能 サンプル発話 想定されるレスポンス
次のページを取得
認定に必須

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

次のページの結果が画面に表示されます。

機能 サンプル発話 想定されるレスポンス
次のページを取得
認定に必須

prossima / seguente / avanti / salta / successivo

次のページの結果が画面に表示されます。

機能 サンプル発話 想定されるレスポンス
次のページを取得
認定に必須

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

次のページの結果が画面に表示されます。

機能 サンプル発話 想定されるレスポンス
次のページを取得
認定に必須

próximo/próxima

次のページの結果が画面に表示されます。

機能 サンプル発話 想定されるレスポンス
次のページを取得
認定に必須

siguiente

salta

muestra el siguiente

siguiente en el sonos

próxima en el jardín

次のページの結果が画面に表示されます。

GetNextPageディレクティブの処理

Lambdaから(GetDisplayableItemsMetadataResponseを通じて)検索結果を受け取った後、ユーザーがほかの検索結果(つまり検索結果の「次のページ」)を見たいと考える場合もあります。ユーザーは、「次のページを見せて」といった単純なフレーズで検索結果を次のページに進めることができます。

これにより、AlexaからGetNextPageディレクティブが送信されます。このディレクティブに対するLambdaのレスポンスには、検索結果の基本的なメタデータを含める必要があります。このレスポンスは、GetDisplayableItemsResponseに似ています。

Alexaは、GetNextPageResponseを受信すると、さらに情報を取得するために、続けてGetDisplayableItemsMetadataディレクティブを送信します。

GetNextPageの例

GetNextPageディレクティブの例を次に示します。送信が必要なアイテムのminResultLimitmaxResultLimitに注目してください。

{
    "directive": {
        "header": {
            "correlationToken": "dFMb0z+PgpgdDmluhJ1LddFvSqZ/jCc8ptlAKulUj90jSqg==",
            "messageId": "9f4803ec-4c94-4fdf-89c2-d502d5e52bb4",
            "name": "GetNextPage",
            "namespace": "Alexa.VideoContentProvider",
            "payloadVersion": "3"
        },
        "endpoint": {
            "cookie": {

            },
            "endpointId": "<ターゲットエンドポイントの識別子>",
            "scope": {
                "token": "<OAuth2ベアラートークン>",
                "type": "BearerToken"
            }
        },
        "payload": {
            "nextToken": "fvkjbr20dvjbkwOpqStr",
            "minResultLimit": 8,
            "maxResultLimit": 25
        }
    }
}

ペイロードの説明

次の表は、GetNextPageディレクティブのpayloadについて説明しています。

ペイロードの説明
フィールド 説明 データ型
nextToken
省略可能

次の結果セットを取得するためのトークン。プロバイダーから送信される不透明型の文字列で、後続の検索リクエストで返されます。

文字列
minResultLimit
(必須)

この呼び出しで返される結果でpageTokenが必要となる最小件数。pageTokenは次の結果を取得するためのもので、新しいアイテムを取得する際にこれと一緒に返されたアイテムの件数がminResultLimitフィールドよりも少ない場合、AlexaはpageTokenを無視し、受信したアイテムをそのまま表示します。

pageTokenを使用して次の結果を取得するのは、アイテムの件数がminResultLimitの値以上である場合のみです。ただし、アイテムの件数がminResultLimitを超える場合は、maxResultLimitが上限となります。アイテムの件数がmaxResultLimitを超えると、maxResultLimitを超えたアイテムはAlexaによって破棄されます。



例: 8

整数
maxResultLimit
(必須)

返される結果の最大件数(上限)。詳細については、minResultLimitフィールドの説明を参照してください。



例: 25

整数

Lambdaのレスポンス

Lambdaのレスポンスとして、デバイスに表示するアイテムのリストを返す必要があります。

レスポンスの例

Lambdaから送信されるGetNextPageResponseの例を次に示します。このペイロードの形式はGetDisplayableItemsMetadataと同じです。

{
    "event": {
        "header": {
            "correlationToken": "dFMb0z+PgpgdDmluhJ1LddFvSqZ/jCc8ptlAKulUj90jSqg==",
            "messageId": "9f4803ec-4c94-4fdf-89c2-d502d5e52bb4",
            "name": "GetNextPageResponse",
            "namespace": "Alexa.VideoContentProvider",
            "payloadVersion": "3"
        },
        "endpoint": {
            "scope": {
                "type": "BearerToken",
                "token": "Alexa-access-token"
            },
            "endpointId": "appliance-001"
        },
        "payload": {
            "nextToken": "qefjrfiugef74",
            "mediaItems": [
                {
                    "mediaIdentifier": {
                        "id": "recordingId://provider1.dvr.rp.1234-2345-63434-asdf"
                    }
                },
                {
                    "mediaIdentifier": {
                        "id": "recordingId://provider1.dvr.rp.1234-2345-63434-asdf"
                    }
                }
            ]
        }
    }
}

ペイロードの説明

ペイロードの説明
フィールド 説明 データ型
nextToken
省略可能

次の結果セットを取得するためのトークン。プロバイダーから送信される不透明型の文字列で、後続の検索リクエストで返されます。

文字列
mediaItems
(必須)

検索結果として画面に表示されるビデオのmediaIdentifierのリスト。

リスト
mediaIdentifier
(必須)

mediaItemの識別子。mediaIdentifierオブジェクトからの画像サイズデータの取得を参照してください。

オブジェクト
id
(必須)

ビデオアイテムの識別子。後続のGetDisplayableItemsMetadataまたはGetPlayableItemsMetadataの呼び出しで、表示または再生に関連したメタデータ情報を取得する目的で使用されます。この識別子は、Alexaからは認識できず、メタデータ情報を照会する際にそのまま使用されます。

文字列