Alexa.KeypadControllerインターフェース3


Alexa.KeypadControllerインターフェース3

AlexaスキルにAlexa.KeypadControllerインターフェースを実装すると、ユーザーは画面上のナビゲーションを音声で操作できます。スクロール、方向パッド(Dパッド)、画面要素の選択、アクティブな要素の詳細表示などの操作を音声対応にできます。音声ナビゲーションは、スマートテレビのホーム画面、ライブ配信サービス、ストリーミングアプリに対して有効にできます。ビデオスキルの詳細については、ビデオスキルAPIとはを参照してください。

Alexa.KeypadControllerインターフェースがサポートする言語については、Alexaインターフェースとサポートしている言語の一覧を参照してください。メッセージプロパティの定義については、Alexaインターフェースのメッセージとプロパティを参照してください。

発話

Alexa.KeypadControllerインターフェースではプリビルド音声対話モデルを使用します。ユーザーが次のような発話をしたら、Alexaがそれに対応するディレクティブをスキルに送信します。

以下に、ユーザーの発話の例を示します。

أليكسا، اطلعي فوق
ألكيسا، روحي يمين
أليكسا، انزلي تحت
أليكسا، روحي ليسار الصفحة
أليكسا، روحي لليسار
ألكيسا، روحي لليمين
أليكسا، روحي فوق
أليكسا، روحي تحت
أليكسا، اختاري هذا
أليكسا، اعرضي التفاصيل

Alexa, scroll up.
Alexa, scroll right.
Alexa, page down.
Alexa, page left.
Alexa, go left.
Alexa, go right.
Alexa, move up.
Alexa, move down.
Alexa, select this.
Alexa, show details.
Alexa, show more.

Alexa, fais défiler vers le haut.
Alexa, fais défiler à droite.
Alexa, page vers le bas.
Alexa, page vers la gauche.
Alexa, va à gauche.
Alexa, va à droite.
Alexa, remonte.
Alexa, navigue vers le bas.
Alexa, sélectionne ça.
Alexa, montre moi des détails.
Alexa, montre moi en plus.

Alexa, scroll hoch.
Alexa, scroll nach rechts.
Alexa, blätter runter.
Alexa, blätter links.
Alexa, geh nach unten.
Alexa, geh nach links.
Alexa, geh nach rechts.
Alexa, nach oben bewegen.
Alexa, nach unten bewegen.
Alexa, wähl das.
Alexa, details ansehen.
Alexa, zeig mir mehr.

Alexa, ऊपर scroll करो
Alexa, right scroll कर.
Alexa, page down करो
Alexa, page को बाएं करो
Alexa, left जाना
Alexa, right जाना
Alexa, ऊपर जाओ
Alexa, नीचे जाओ
Alexa, इसे चुनो
Alexa, details दिखाओ
Alexa, और दिखाओ

Alexa, scorri verso l'alto.
Alexa, scorri verso destra.
Alexa, pagina in giù.
Alexa, pagina di sinistra.
Alexa, vai a sinistra.
Alexa, vai a destra.
Alexa, vai verso l'alto.
Alexa, vai verso il basso.
Alexa, seleziona questo.
Alexa, mostra dettagli.
Alexa, mostra mi di più.

アレクサ、上にスクロールして
アレクサ、右側へスクロールして
アレクサ、ページの下へ
アレクサ、画面の左へ
アレクサ、左側に行って
アレクサ、右の方へ行って
アレクサ、上に移動して
アレクサ、下の方へ移動して
アレクサ、これを選んで
アレクサ、詳細を表示して
アレクサ、もっと見せて

Alexa, rolar para cima.
Alexa, rolar para a direita.
Alexa, página para baixo.
Alexa, página para esquerda.
Alexa, ir para esquerda.
Alexa, ir para direita.
Alexa, mover pra cima.
Alexa, mover para baixo.
Alexa, selecionar isso.
Alexa, mostrar detalhes.
Alexa, mostrar mais.

Alexa, despláza te hacia arriba.
Alexa, despláza te hacia derecha.
Alexa, abajo de la página.
Alexa, izquierda de la página.
Alexa, ve te a la izquierda.
Alexa, ve te a la derecha.
Alexa, muéve te hacia arriba.
Alexa, muéve te hacia abajo.
Alexa, selecciona esto.
Alexa, muestra detalles.
Alexa, muestra más.

シナリオ

Alexa.KeypadControllerを使う次のようなシナリオを考えてみましょう。

ホーム画面で音声を有効にする

スマートテレビのメーカーであれば、Alexa.KeypadControllerを使ってホーム画面で音声を有効にできます。ユーザーはテレビでサポートされるアプリのリストを見ているときに、音声で上下左右へスクロールしたり、アプリを選んだりといった操作ができます。このシナリオでは、Alexa.PowerControllerインターフェースとAlexa.Launcherインターフェースも使っています。以下は、このシナリオのユーザー発話の例です。

Alexa, turn on the TV.
Alexa, scroll right.
Alexa, launch [app].

番組表で音声を有効にする

ライブ配信サービスの場合、Alexa.KeypadControllerを使って番組表で音声を有効にできます。ユーザーは、番組表の上下左右へのスクロールや番組の選択を音声で操作できます。このシナリオでは、Alexa.PowerControllerインターフェースとAlexa.Launcherインターフェースも使っています。以下は、このシナリオのユーザー発話の例です。

Alexa, turn on [name of live TV provider].
Alexa, go to cable guide.
Alexa, scroll down.
Alexa, select this.
Alexa, go home.

アプリで音声を有効にする

アプリ開発者の場合、Alexa.KeypadControllerを使ってアプリで音声を有効にし、ユーザーが上下左右へのスクロールを音声で操作できるようにします。ほかにも、画面に表示されている要素の詳細ページを音声で開いて詳細を確認したり、前の画面に戻ったりすることができます。このシナリオでは、Alexa.LauncherインターフェースとAlexa.RemoteVideoPlayerインターフェースも使い、コメディ映画を表示させています。以下は、このシナリオのユーザー発話の例です。

Alexa, launch [app].
Alexa, show me comedies.
Alexa, scroll right.
Alexa, show me details.
Alexa, go back.

出力可能なプロパティ

Alexa.KeypadControllerインターフェースは、keystrokeプロパティをプライマリプロパティとして使用します。検出応答で、プロパティをサポートすることを指定します。

以下の表は、keystrokeプロパティの有効な値を示しています。

keystrokeの種類 keystrokeの値 説明
方向パッド
(Dパッド)
UPDOWNLEFTRIGHTSELECT 上下左右に一単位分移動したり、次の画面要素に移動したり、アクティブな画面要素や項目を選択したりします。
スクロール PAGE_UPPAGE_DOWNPAGE_LEFTPAGE_RIGHT 指定した方向へスクロールします。
情報 INFOMORE 現在アクティブな画面要素についての詳細情報を表示します。たとえば、画面に表示されていないコンテンツを表示させたり、詳細ページに移動したりできます。
戻るボタン BACK リモコンの戻るボタンの動作をシミュレートします。たとえば、前の画面に戻ります。

検出

Alexa.KeypadControllerをサポートするエンドポイントは、Alexa.Discoveryの標準検出メカニズムを使用して表します。

KeypadControllerインターフェースには、keysアトリビュートを含め、サポートするキー操作を列挙します。

検出応答の例

以下は、Alexa.KeypadControllerをサポートするデバイスへのDiscover.Responseメッセージの例です。

クリップボードにコピーされました。

{
  "event": {
    "header": {
      "namespace": "Alexa.Discovery",
      "name": "Discover.Response",
      "payloadVersion": "3",
      "messageId": "一意の識別子、バージョン4 UUIDが望ましい"
    },
    "payload": {
      "endpoints": [
        {
          "endpointId": "エンドポイントの一意のID",
          "manufacturerName": "エンドポイントのメーカー名",
          "description": "Alexaアプリに表示される説明",
          "friendlyName": "Alexaアプリに表示されているデバイス名",
          "displayCategories": ["TV"],
          "cookie": {},
          "capabilities": [
            {
              "type": "AlexaInterface",
              "interface": "Alexa.KeypadController",
              "version": "3",
              "keys": [
                "BACK",
                "INFO", "MORE", "SELECT",
                "UP", "DOWN", "LEFT", "RIGHT",
                "PAGE_UP", "PAGE_DOWN", "PAGE_LEFT", "PAGE_RIGHT"
              ]
            },
            {
              "type": "AlexaInterface",
              "interface": "Alexa",
              "version": "3"
            }
          ]
        }
      ]
    }
  }
}

ディレクティブ

Alexaは次のAlexa.KeypadControllerインターフェースディレクティブをスキルに送信します。

SendKeystrokeディレクティブ

SendKeystrokeディレクティブをサポートすると、ユーザーはコンテンツをスクロールできます。

SendKeystrokeディレクティブの例

以下は、Alexaがスキルに送信するSendKeystrokeディレクティブの例です。

{
  "directive": {
    "header": {
      "namespace": "Alexa.KeypadController",
      "name": "SendKeystroke",
      "messageId": "一意のバージョン4 UUID",
      "correlationToken": "opaque相関トークン",
      "payloadVersion": "3"
    },
    "endpoint": {
      "scope": {
        "type": "BearerToken",
        "token": "OAuth2.0ベアラートークン"
      },
      "endpointId": "エンドポイントID",
      "cookie": {}
    },
    "payload": {
      "keystroke": "SELECT"
    }
  }
}

SendKeystrokeディレクティブのペイロード

次の表は、SendKeystrokeディレクティブのペイロードの詳細を示しています。

プロパティ 説明

keystroke

ユーザーがリクエストしたキーストロークです。
有効な値については、keystrokeを参照してください。

文字列

SendKeystroke応答

SendKeystrokeディレクティブを正しく処理したら、Alexa.Responseイベントを使用して応答します。応答は同期または非同期のどちらでも可能です。非同期で応答する場合、相関トークンと、認可トークンを含めたスコープを含めます。

以下は、SendKeystroke応答の例です。

クリップボードにコピーされました。

{
  "event": {
    "header": {
      "namespace": "Alexa",
      "name": "Response",
      "messageId": "一意の識別子、バージョン4 UUIDが望ましい",
      "correlationToken": "リクエストに一致するopaque相関トークン",
      "payloadVersion": "3"
    },
    "endpoint": {
      "scope": {
        "type": "BearerToken",
        "token": "OAuth2.0ベアラートークン"
      },
      "endpointId": "エンドポイントID"
    },
    "payload": {}
  }
}

SendKeystrokeディレクティブのエラー処理

SendKeystrokeディレクティブを正常に処理できず、エラーがビデオ固有のものである場合、Alexa.Video.ErrorResponseイベントで応答します。一般的なエラーの場合、汎用のAlexa.ErrorResponseイベントで応答します。ユーザーがデバイスでサポートしていないキーストロークをリクエストした場合、エラータイプにはINVALID_VALUEを使用します。


このページは役に立ちましたか?

最終更新日: 2024 年 12 月 11 日