スマートホームスキルに適用されるWorks with Alexaの要件



スマートホームスキルに適用されるWorks with Alexaの要件

どのようなデバイスのスキルでも、Works with Alexa(WWA)バッジを取得するには、一般的なスマートホームスキルの認定を受ける場合よりも厳しい要件を満たす必要があります。

スキル開発を開始する

developer.amazon.comにログインしてスマートホームスキルの開発を開始します。スマートホームスキルでは、Lambda関数のコードによってAlexaと製品が対話します。スマートホームスキルの開発については、詳細をご確認ください。以下では、WWA固有の要件について説明します。

バージョン3を対象にする

WWAの要件を満たすには、スマートホームスキルAPIバージョン3を対象とする必要があります。以下がその要件です。

  • v3の機能を実装すること。
  • デバイスの検出でpayloadversion3とし、各機能でversion3に指定すること。詳細については、Alexa.Discoveryを参照してください。

状態レポートを実装する

状態レポートを使用すると、スマートホームデバイスの状態をAlexaアプリに正確に反映できるようになります。このセクションを読み進める前に、状態レポートの一般的な情報を確認しておく必要があります。スマートホームスキルの状態レポートおよびイベントゲートウェイにイベントを送信するを参照してください。

WWAの要件を満たすには、デバイスで使用するスマートホームスキルが以下を行う必要があります。

  • 検出の応答で、機能のプロパティをretrievableおよびproactivelyReportableと設定します。
  • 制御ディレクティブに応答する際、Alexa.Responseイベントのコンテキストで、すべての機能のプロパティ(EndpointHealthによって定義されたプロパティを含む)の状態を常にレポートします。
  • ReportStateディレクティブにStateReportイベントで応答します。
  • デバイスの状態が変更された場合、その理由にかかわらず、ChangeReportイベントを送信します。

これらの要件は以下の機能に適用されます。

デバイスの健全性をレポートする

スキルが実装する機能のいずれかがプロパティの状態をレポートする場合、Alexa.EndpointHealthインターフェースを実装する必要があります。

スキルがパフォーマンス要件を満たしていることを確認する

WWAバッジの要件を満たすには、プロパティの状態の変更を即時にレポートできるようにする必要があります。

  • レポート可能なプロパティの状態が変更された場合、変更から3秒以内に新しいプロパティ値を含むChangeReportを送信します。ChangeReportには、Alexa.EndpointHealthインターフェースで定義されるconnectivityプロパティの現在値を含めます。
  • デバイスのconnectivityOKに変更された場合、3秒以内にレポートを送信します。

状態レポートについては、そのほかに次の要件があります。

  • ChangeReportイベントが、エラー503、429、401、またはメッセージタイムアウトによって失敗した場合、少なくともあと2回、それぞれ15秒以内の間隔でChangeReportの再送信を試みます。詳細については、イベントゲートウェイにイベントを送信するのエラーのセクションを参照してください。

Alexaで製品とスキルを詳細にテストする

開発ポータルでテスト対象のスキルを有効にし、Alexaが使えるデバイスまたはアプリを使用して、製品でスキルをテストします。製品が速やかに応答しない場合や、エラーが適切に処理されない場合は、認定されません。詳細については、状態レポートのテストツールを使用する方法を参照してください。

スキルの認定を申請する

スキルの認定を申請するときに、Works with Alexaプログラムでの認定を希望する旨を伝える必要があります。その場合、スキルを送信する前に、開発者コンソールのテスト手順の説明セクションに「#WorksWithAmazonAlexa」のタグを追加してください。Amazon開発者ポータルで必要となる説明や画像などの情報とともに、このタグを追加してください。

その他の情報

WWAプログラムの一般的なガイドラインや、テストのためにデバイスを提出する方法については、Works with Alexaの認定を受けるを参照してください。