スマートホームスキルを複数の言語で開発する

スマートホームスキルを複数の言語で開発する

さまざまな言語でユーザーの発話に応答するAlexaスキルを作成できます。対応する各言語について、Alexaはユーザーの発話を自動で解釈し、対応するディレクティブを適切なLambda関数に送信してリクエストを処理します。

スマートホームスキルAPIの詳細については、スマートホームスキルAPIについてスマートホームスキルの作成手順を参照してください。

サポートされる言語を確認する

サポートされる言語はインターフェースによって異なります。新しい言語を組み込む前に、スキルに実装する各インターフェースが新しい言語でサポートされていることを確認してください。詳細については、Alexaインターフェースとサポートされる言語の一覧を参照してください。

開発者ポータルでスキルの複数言語バージョンを作成する

既存のスキルに言語を追加する

  1. 開発者コンソールにサインインし、スキル一覧を開いて言語を追加するスキルを選択します。
  2. サイドバー上部の言語ドロップダウンで新しい言語を追加し、言語を切り替えます。ドロップダウンをクリックして言語設定をクリックし、+ 新しい言語を追加をクリックします。
  3. 新しい言語を選択して保存をクリックします。
  4. ビルド公開のページで、それぞれの言語の設定を行います。

または

1つ以上の言語をサポートする新しいスキルを追加する場合

  1. Alexa開発者コンソールを開いて、ログインします。
  2. スキルの作成をクリックします。新しいスキルを作成ページが表示されます。
  3. スキル名を入力します。後から、スキルストア用に言語別の名前を設定できます。
  4. スキルのデフォルトの言語を選択します。
  5. スマートホームプリビルドモデルを選択してから、スキルを作成を選択します。
  6. 左上隅の言語ドロップダウンをクリックし、言語設定を選択します。
  7. + 新しい言語を追加を選択し、スキルでサポートする言語を選択します。保存をクリックします。

OAuthプロバイダーで追加のURLを許可する

Alexa開発者コンソールビルドページでアカウントリンクに指定する情報は、スキルのすべての言語バージョンに共通です。ただし、複数言語スキルではAWS Lambdaのリージョンごとに別のリダイレクト先のURLがあり、そのURLがアカウントリンクページに表示されます。リダイレクト先のURLは、それぞれOAuthプロバイダーで許可する必要があります。スキルをデバイス制御クラウドにアカウントリンクしてテストするには、この手順を行う必要があります。詳細については、Alexaのリダイレクト先のURLを参照してください。

言語ごとに公開情報を提供する

  1. 公開ページで、それぞれの言語の設定を行います。認定に合格するには、これらのフィールドの値をスキルと同じ言語で指定する必要があります。
  • 説明
  • 詳細な説明
  • キーワード
  • 小さなスキルアイコンと大きなスキルアイコン

Lambda関数を複数のリージョンにデプロイする

Alexaはユーザーリクエストが日本語か英語かを解釈し、正しいディレクティブをスキルに送信します。Alexaからこれらのディレクティブを受け取り、スキルがサポートしているクラウドに接続されたデバイスと通信するためのコードを記述してください。作成したコードは、AWS Lambda関数としてホストされます。複数言語サポートを有効にするには、AWS Lambda関数コードをAWSの複数のリージョンにデプロイする必要があります。複数のリージョンにデプロイするとスキルがリクエストに応答しやすくなるため、必須となっています。

以下の表は、使用する必要のあるエンドポイントのリージョンと関連するAWSのリージョンをまとめたものです。

エンドポイントのリージョン スキルの言語 Lambda関数のリージョン
北米 英語(CA)、英語(US)、フランス語(CA)、ポルトガル語(BR)、スペイン語(MX)、スペイン語(US) 米国東部(バージニア北部)
ヨーロッパ 英語(UK)、フランス語(FR)、ドイツ語、イタリア語、スペイン語(ES) 欧州(アイルランド)
インド 英語(IN)、ヒンディー語(IN) 欧州(アイルランド)
極東 英語(AU)、日本語 米国西部(オレゴン)
中東 アラビア語(SA) 中東(バーレーン)

各リージョンのARNをメモしておいてください。スキルの設定時に各リージョンのARNを追加します。

スキル作成の詳細な手順については、Lambda関数を追加するを参照してください。

イベントを正しいURLに送信する

非同期イベントや変更レポートイベントを送信する場合、正しいAlexaイベントゲートウェイに送信する必要があります。イベントゲートウェイはLambda関数がホストされている場所によって異なります。リージョン別のURLは以下のとおりです。

  • 北米:https://api.amazonalexa.com/v3/events
  • ヨーロッパ:https://api.eu.amazonalexa.com/v3/events
  • 極東:https://api.fe.amazonalexa.com/v3/events

開発者コンソールでスキルにARN番号を指定する

地理的なリージョンごとのARN番号を、開発者コンソールのビルドページに追加します。手順は以下のとおりです。

  1. 開発者コンソールで、スキルを選択してビルドタブをクリックします。
  2. 該当する地理的なリージョン(ヨーロッパとインドなど)を選択します。
  3. テキストボックスにARNかLambdaのエンドポイントを入力します。スキルの言語、エンドポイントのリージョンとLambda関数がホストされるリージョンとの関連については、Lambda関数を複数のリージョンにデプロイするセクションの表を参照してください。
  • スキルが1つの言語または地域のみをサポートする場合、デフォルトのARNと選択した地域のARNには同じARNを指定します。
  • スキルが複数の言語または地域をサポートする場合、地域ごとのARNを指定する必要があります。どれか1つの地域のARNをデフォルトとして指定します。

複数言語のサンプルフレーズとユーザーガイダンス

Amazonでは、次のリンクでユーザーにスマートホームのサンプルフレーズを提供しています。

サポートする各言語について、アカウントをリンクしてスキルをテストします。Alexaアプリのスキルを開いて右上隅のスキルを選択すると、スキルを検索することができます。テストするには、スキルが動作するようデザインされたデバイスが必要です。このデバイスはクラウドに接続され、Alexa搭載デバイスで見つけられる必要があります。

言語処理はAlexaが行いますが、スキルのテストはサポートするすべての言語に対し、開発者が行います。前のセクションにある対象言語ごとのサンプルフレーズで、スキルが動作することを確認してください。

スキルのテストの手順、プライバシーとコンプライアンス、公開範囲を指定する

スキル公開の最後の手順では、認定チームにテスト手順を提供し、プライバシー関連の質問に答え、スキルをどこで公開するかを選択します。

プライバシーとコンプライアンス

  • 質問に回答します。詳細については各項目に「?」で表示されているヒントを参照してください。

公開範囲

  • Amazonがスキルを公開しているすべての国か、特定の国や地域かを選択します。公開範囲は言語ごとに設定します。その国や地域で一般的に話されている言語をサポートしていない場合でも公開できます。
    このオプションはスキルのすべての言語バージョンに適用されますので、注意が必要です。

スマートホームスキルはクラウドに接続されたデバイスを利用するため、スキルで使用するデバイスが利用可能かどうか、特定の国や地域で正常に機能するかどうかを考慮してください。

スキルの言語ごとにテストに使用する認証情報とテスト手順を指定します。

これらの項目をすべて入力したら、保存して続行をクリックして次のページに進みます。

スキルの申請

スキルの各言語に必要な情報をすべて入力したら、申請ボタンが有効になり、スキルの認定を申請できます。

認定チームがテストを円滑に進められるよう、詳細を求められたらすみやかに回答してください。