?
サポート

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

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

スマートホームスキルAPIを使用して、多言語でのリクエストに対応するスマートホームスキルを作成できます。

スマートホームスキルAPIは、ユーザーのリクエストをサポートされる言語で適切に解釈し、適切なディレクティブを生成し、リクエストを処理するLambda関数のコードにこれを送ります。スキルはデバイス制御クラウドと通信し、リクエストされたアクションを実行したり、エラーメッセージを返したりします。言語サポートはデバイスのカテゴリーによって異なります。「言語対応を判断する」にある表と、個々のインターフェーストピックを確認し、対象とする言語でデバイスをサポートすることができるか判断してください。

既存のスマートホームスキルに、他の言語のサポートを追加したり、多言語をサポートするスマートホームスキルを作成するには、そのための特別な手順に従う必要があります。ここではこれらの手順については、詳しく説明します。


複数言語をサポートするための手順は、以下のとおりです。

  • 言語対応を判断する
  • 開発者ポータルでスキルの複数言語バージョンを作成します。スキルのアプリケーションIDはすべての言語で同じになりますが、スキルの名前は言語によって変えることができます。
  • スキルのスキルアダプターを複数のAWSリージョンにデプロイします。これにより、低いレイテンシーが確保されます。スキルアダプターはホストされるリージョンごとに固有のAmazon Resource Number(ARN)番号を持つことになります。
  • AWSリージョンごとのARN番号を開発者ポータルのスキル情報に追加します。
  • 非同期イベントと変更レポートイベントを正しいAlexaゲートウェイURLに送信します。AlexaゲートウェイURLは、Lambda関数のリージョン毎に別々のものがあります。適切なAlexaゲートウェイURLに送信する必要があります。
  • スキルの各言語バージョンについて、アカウントリンキング用のURLをホワイトリストに設定します。
  • 複数の言語でアカウントリンクとスキルのテストを有効化します。
  • 開発者ポータルでスキルの各言語バージョンについて、追加のコンフィギュレーションと公開についての詳細を設定します

ここでは、既存のスマートホームスキルに設定を追加し、多言語をサポートさせる方法に特化した情報を紹介しています。

スマートホームスキルAPIや、スマートホームスキルを作成する方法の詳細については、以下を参照してください。

言語対応を判断する

言語サポートはインターフェースによって異なります。次の表は、一般的なデバイスのカテゴリーと、ユーザーがそのカテゴリーのデバイスの制御とクエリに使用できる言語を示しています。詳細は使用するそれぞれのインターフェースについてのトピックを確認のうえ、その言語サポートを判断する必要があります。たとえば、PowerControllerはすべての言語でサポートされており、さまざまなデバイスのカテゴリーで使用できます。

デバイスのカテゴリー サポートされる言語
照明およびスイッチ 英語(米国)、英語(英国)、英語(インド)、ドイツ語、日本語
ドアおよびロック 英語(米国)、英語(英国)、ドイツ語、日本語
サーモスタット、エアコン、扇風機 英語(米国)、英語(英国)、ドイツ語
カメラ 英語(米国)、英語(英国)、ドイツ語
エンターテイメント端末 英語(米国)

対象としている言語で現在サポートされていないインターフェースを使用したスマートホームスキルを作成し、公開の認定を受けたいと考えている場合、 次の開発者サポートページのお問い合わせフォームを使用してお知らせください。以下の情報を提供してください。

  • Eメールアドレス:スキルと関連付けられた開発者アカウントのEメールアドレスを提供します。
  • 件名:Alexa
  • メッセージ:スキルが制御するデバイスのタイプと、対象とする言語を指定してください。

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

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

  1. 開発者ポータルにサインインし、スキルのリストから言語サポートを追加するスキルを選択します。
  2. Add a New Language Tab」タブで、追加する言語を選択します。
  3. この言語で使用するスキルの名前を入力します。同じスキルに対して、言語ごとに異なる名前を使用することができます。スキルに言語を追加したら、スキルの審査を申請する前に、すべてのスキルと公開情報、追加した言語のコンフィギュレーション詳細を設定する必要があります。

または

複数言語をサポートする新しいスキルを追加するには

  1. ポータルにサインインし、Alexa Skills Kitの「概要(Get Started)」を選択して、「新しいスキルの追加(Add a New Skill)」を選択します。
  2. ドロップダウンリストから言語を選択し、「スマートホームスキルAPI(Smart Home Skill API)」を選択します(他の言語は後で追加します)。
  3. 選択した言語についてスキルの名前を入力します。サポートする言語ごとに別の名前を指定できます。「保存(Save)」をクリックします。
  4. Add a New Language Tab」を選択し、ドロップダウンリストから別の言語を選択します。
  5. 選択した言語についてスキルの名前を入力します。
    各言語バージョンについて必要なスキルと公開情報、コンフィギュレーションの詳細の設定をすべて完了するまでは、複数言語対応のスキル審査の申請はできないことに注意してください。すべての対象言語で全ての必要な情報がそろっていない場合は、まず全ての情報が整っている言語のみでスキル審査を申請し、その後に別の言語を追加して再度申請をすることをお勧めします。

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

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

次の表は、使用する必要のあるエンドポイントリージョンと関連するAWSリージョンを示します。

スキル言語 エンドポイントリージョン Lambda関数リージョン
英語(米国) North America US East (N. Virginia)
英語(英国)、ドイツ語 Europe EU (Ireland)
英語(インド) India EU (Ireland)
日本 Far East US West (Oregon)

各リージョンについて、ARNをメモしておいてください。スキルを構成するとき、各リージョンのARNを追加する必要があります。

スキル作成の詳細な手順については、「スマートホームスキルの構築手順」の「Lambda関数を追加する」セクションを参照してください。アダプターが受信するディレクティブの詳細については、「スマートホームスキルAPIメッセージリファレンス」を参照してください。

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

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

  • North America:https://api.amazonalexa.com/v3/events
  • Europe:https://api.eu.amazonalexa.com/v3/events
  • Far East:https://api.fe.amazonalexa.com/v3/events

開発者ポータルでスキルのARN番号を入力する

リージョンごとのARN番号を、開発者ポータルのコンフィギュレーションページに追加します。これを有効にするには、次のようにします。

  1. 開発者ポータルでスキルを選択し、言語のタブをクリックします。
  2. コンフィギュレーション(Configuration)」ページをクリックします。
  3. Provide geographical region endpoints?」に「はい」を選択し、Europeなど、適用するリージョンを選択します。
  4. 表示されているテキストボックスにLambdaエンドポイントのARNを入力します。「Lambda関数をデプロイする」セクションの表で、スキル言語、エンドポイントリージョン、およびLambda関数をホストするリージョンの間の関連を確認します。
  • スキルが1つの言語/リージョンのみをサポートする場合は、デフォルトのARNと選択したリージョンARNに同じARNを指定します。
  • スキルが複数の言語/リージョンをサポートする場合は、各リージョンにARNを指定する必要があります。デフォルトとしてリージョンARNのいずれかを指定します。

次の図に、コンフィギュレーションのリージョンエンドポイントの例を示します。

OAuthプロバイダーのホワイトリストに追加のURLを登録する

スマートホームスキルではアカウントリンキング情報を設定する必要があります。この設定は、そのスキルのすべての言語で共通のものになります。ただし、複数言語のスキルではLambdaのリージョンごとに、開発者ポータルでスキルの「コンフィギュレーション(Configuration)」ページで示されているリダイレクトURLは異なります。OAuthプロバイダーのホワイトリストには、それぞれのリダイレクトURLを登録する必要があります。この登録を行わないと、デバイス制御クラウドのアカウントをスキルにリンクしてスキルをテストすることができません。アカウントリンキングの詳細については、「アカウントリンキングでAlexaユーザーを認証する」を参照してください。

スキルの作成に使用した開発者アカウントと同じアカウントに登録したAlexa搭載端末を使って、スキルをテストする必要があります。各言語でアカウントのスキルを確認し、テストします。Alexaアプリで「スキル(Skills)」に移動して、右上隅の「スキル(Your Skills)」を選択するとスキルを表示できます。また、クラウドに接続されたデバイスも必要です。このデバイスはスキルの動作対象で、Alexa搭載端末で検出可能なものです。

以下の表に示すようなサンプルの発話例を使用してテストします。言語処理はAlexa側で実行されますが、スキルがサポートするすべての言語でスキルをテストする必要があります。

インテント英語サンプルドイツ語サンプル日本語サンプル
機器を検出するdiscover my smart home devicesfinde meine Smart-Home-GerÃteデバイスを見つけて
turn on device(s)turn on the device nameschalte GerÃtename eindevice nameをオンにして
set a device to a valueset the room name to ##stelle Raumname auf ## Graddevice name##にして

発話例のその他のサンプルについては、『スマートホームスキル公開ガイド』の各インターフェーストピックをご覧ください。

テスト手順を指定し、スキルを配布する地域を選択する

スキル公開の最後のステップは、認証チーム向けにテスト手順を提供し、スキルを提供する地域を選択し、ユーザーのAlexaアプリに表示する説明を指定することです。

このページでは、グローバルのフィールドと言語固有のフィールドが混在しています。「テスト手順(Testing Instructions)」と「提供地域(Distribution)」はすべての言語バージョンに共通です。グローバルのフィールドは、ページ最上部のグレーのボックス内にあります。全言語に適用される質問に回答すると、次のページに進む前に変更を確認する「全言語共通の変更の保存(Save Global changes)」ダイアログが表示されます。

テスト手順(Testing Instructions):

  • 連絡先情報とアカウントリンキング用のテストアカウントの認証情報を指定します。

提供地域(Distribution):

  • すべて選択(SELECT ALL)」オプションを選択すると、Amazonがスキルを提供するすべての国で提供されます。提供地域は言語には関係ありません。その国で使われている言語をサポートしていないスキルでもスキルを使用できます。
    このオプションは、スキルのすべての言語バージョンに適用されます。Alexaの国際対応が公的に利用できるようになったら、ユーザーは以下の条件を満たすすべてのスキルにアクセスできるようになります。

    • スキルがユーザーの国または地域で提供されている

    • スキルがユーザーのAlexa搭載端末で選択された言語をサポートしている

スマートホームスキルは、クラウド接続デバイスに密接に関連しているため、スキルと連動するデバイスが、配布先の国や地域で入手可能か、またそれらの国や地域で正常に動作するかを考慮する必要があります。

スキルの公開情報を追加する

公開情報は、全言語に共通ではありません。言語ごとに設定する必要があります。以下の図は、開発者ポータルの「公開情報の詳細(Publishing Information)」ページを示しています。

言語のタブを選択し、以下のフィールドに値を入力します。公開審査をパスするには、これらのフィールドの値をスキルの言語と同じ言語で指定する必要があります。

  • スキルの短い説明(Short Skill Description)
  • スキルの詳しい説明(Full Skill Description)
  • キーワード(Keywords)
  • 大小のアイコン(Small and Large Icons)

各フィールドには詳細な指示が記載されています。これらのフィールドの入力が完了したら、「次へ(Next)」をクリックして次のページに進みます。

プライバシーとコンプライアンスに関する質問に答える

プライバシーおよびコンプライアンス(Privacy & Compliance)」の質問はスキルのすべての言語バージョンに共通です。アカウントのリンクを構成する際に指定したプライバシーポリシーのURLが、ここに表示されます。任意で、言語ごとに利用規約のURLを指定することもできます。これらのリンクを指定する場合、リンク先のサイトの言語はスキルと同じにする必要があります。

スキルの審査を申請する

スキルの言語バージョンごとに必要な情報をすべて入力し終わったら、「スキルの審査を申請(Submit for Certification)」ボタンが有効になります。このボタンをクリックして、スキルの審査を申請できます。

認証チームから追加情報をリクエストされた場合は、早急に回答してください。