開発者コンソール

Alexa.KeypadControllerインターフェース


Alexa.KeypadControllerインターフェース

ユーザーが画面上の要素を選択またはスクロールするリクエストを行うと、keystroke値(UPDOWNなど)を含んだSendKeystrokeディレクティブをAlexa.KeypadControllerインターフェースがLambdaに送信します。

SendKeystrokeディレクティブの発話

ユーザーは、以下に関する発話を行うことができます。

  • D-Padで指定された方向への移動
  • フォーカスされている要素の選択
  • リスト、メニュー項目、タイトル、説明といった要素のスクロール
  • 現在画面外にある情報の表示

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

機能 サンプル発話 想定されるレスポンス
キーパッドコントローラー

scroll left

scroll right

scroll up

scroll down

page left

page right

page up

page down

go left

go right

go up

go down

move left

move right

move up

move down

select

select this/that/it

watch this

no translation

Défile vers la gauche

Défile vers la droite

Défile vers le haut

Défile vers le bas

Page vers la gauche

Page vers la gauche

Monte d’une page

Descends d’une page

Va à gauche

Va à droite

Va en haut

Va en bas

Va vers la gauche

Va vers la droite

Va vers le haut

Va vers le bas

Sélectionner

Sélectionne ça

Regarder

no translation

no translation

no translation

no translation

no translation

上、下、左、右のコマンドでは、1単位分または次の画面要素まで上下左右に移動します。

ページ上、ページ下、ページ左、ページ右のコマンドでは、指定された方向にスクロールします。

選択コマンドでは、フォーカスされている要素またはアイテムを選択します。

詳細情報コマンドでは、現在フォーカスされている画面要素の詳しい情報を表示します。たとえば、画面外のコンテンツを表示したり、詳細ページにジャンプしたりします。

SendKeystrokeディレクティブの例

KeypadControllerインターフェースからLambdaに送信されるKeyStrokeディレクティブの例を以下に示します。

{
  "directive": {
    "header": {
      "namespace": "Alexa.KeypadController",
      "name": "SendKeystroke",
      "messageId": "<メッセージID>",
      "correlationToken": "<opaque相関トークン>",
      "payloadVersion": "3"
    },
    "endpoint": {
      "scope": {
        "type": "BearerToken",
        "token": "<OAuth2ベアラートークン>"
      },
      "endpointId": "<エンドポイントID>",
      "cookie": {}
    },
    "payload": {
      "keystroke": "SELECT"
    }
  }
}

ペイロードの説明

SendKeystrokeディレクティブでは、payloadkeystrokeプロパティを使用して、実行するアクションを指定します。

フィールド 説明
keystroke ユーザーが要求したキーストロークです。 文字列

keystrokeに指定できる値は、 UPDOWNLEFTRIGHTSELECTPAGE_UPPAGE_DOWNPAGE_LEFTPAGE_RIGHTINFOMOREです。以下の表を参照してください。

キーストロークの種類 キーストローク値 説明
方向パッド(D-Pad) UPDOWNLEFTRIGHTSELECT 1単位分または次の画面要素まで上下左右に移動するか、フォーカスされている要素またはアイテムを選択します。
スクロール PAGE_UPPAGE_DOWNPAGE_LEFTPAGE_RIGHT 指定された方向にスクロールします。
情報 INFOMORE 現在フォーカスされている画面要素の詳しい情報を表示します。たとえば、画面外のコンテンツを表示したり、詳細ページにジャンプしたりします。

レスポンスの例

SendKeystrokeディレクティブの処理を正常に終了した場合は、Alexa.Responseイベントで応答します。応答は、同期または非同期のどちらでも実行できます。非同期で応答する場合は、相関トークン、および認可トークンを含むスコープを追加してください。

SendKeystrokeレスポンスイベントの例

{
  "event": {
    "header": {
      "namespace": "Alexa",
      "name": "Response",
      "messageId": "<メッセージID>",
      "correlationToken": "<opaque相関トークン>",
      "payloadVersion": "3"
    },
    "endpoint": {
      "scope": {
        "type": "BearerToken",
        "token": "<OAuth2ベアラートークン>"
      },
      "endpointId": "<エンドポイントID>"
    },
    "payload": {}
  }
}

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

ビデオスキルがAlexa.KeypadControllerインターフェースをサポートしていることを示すには、Alexa.Discoveryインターフェースを介して送信されたDiscoverディレクティブへのレスポンスで、そのサポートを明示する必要があります(KeypadControllerインターフェースの機能の宣言を参照)。必ず、keys属性を追加し、サポートしているキーストロークのリストを指定してください。また、KeypadControllerを使用するにはAlexa Client Libraryバージョン1.4.5以降が必要です。詳細については、Discoveryインターフェースを参照してください。

エラーレスポンス

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