Alexaアプリのベストプラクティス

Alexaアプリのベストプラクティス

スマートホームスキルAPIでは、スマートホームデバイスの状態に関する最新情報をAlexaに提供できます。その情報は逐次、Alexaアプリでユーザーに提供されます。スマートホームスキルをAlexaアプリに対応させるには、ベストプラクティスに従ってください。

Alexaアプリでのスマートホームデバイスの表示

ユーザーは、Alexaアプリの設定ページかコントロールページで、個々のスマートホームデバイスを確認できます。設定ページには、デバイスのタイプ、説明、名前が表示されます。コントロールページにはデバイスの状態が表示され、ユーザーがデバイスを制御できます。たとえば、ユーザーはデバイスのコントロールページからスマートプラグをオフにできます。次のスクリーンショットは、スマートプラグのコントロールページと設定ページです。

ユーザーは、常にスマートホームデバイスの設定ページを表示できますが、コントロールページを表示できるかどうかはデバイスのカテゴリーによって異なります。次の表は、アプリに表示されるコントロールページでのサポートをカテゴリー別に示しています。

検出時の表示カテゴリー コントロールページ

ACTIVITY_TRIGGER

なし

CAMERA

なし

LIGHT

現在の状態を表示、オン/オフの切り替えや明るさの変更が可能

OTHER

なし

SMARTLOCK

現在の状態を表示、ロックおよびユーザー設定のロック解除が可能

SMARTPLUG

現在の状態を表示、オン/オフの切り替えや電力レベルの変更が可能

SPEAKER

なし

SWITCH

現在の状態を表示、オン/オフの切り替えや電力レベルの変更が可能

TEMPERATURE_SENSOR

現在の状態を表示

THERMOSTAT

現在の状態を表示、温度の変更が可能

TV

なし

Alexaアプリに対応するスキルのベストプラクティス

Alexaアプリのユーザーエクスペリエンスを最適化するため、スマートホームスキルは次のように設定します。

  • バージョン3のペイロードを対象とするか、スキルをバージョン2からバージョン3にアップグレードする必要があります。詳細については、Smart Home Skill Migration Guide(英語)を参照してください。
  • デバイスの検出で、次の情報を入力します。
    • 正しいdisplayCategory。表示カテゴリーによって、Alexaアプリで表示されるデバイスのタイプ、使用されるアイコン、デバイスのコントロールページの形式、デバイスが含まれるデバイスグループが決まります。たとえば、照明のコントロールページには、現在の色と明るさのレベルが表示されます。
    • デバイスのmanufacturerNameフィールドとdescriptionフィールドの正確な値。これらのアトリビュートは、Alexaアプリでデバイスの設定ページに表示されます。詳細については、endpointオブジェクトを参照してください。
    • 指定できる限りのadditionalAttributesオブジェクト。Alexaは、これらのオブジェクトを使用して重複するデバイスを識別し、Alexaアプリのユーザーエクスペリエンスを向上させることができます。
    • 取得可能およびプロアクティブにレポート可能なエンドポイントのプロパティの正確なレポート。
  • デバイスの健全性をレポートするEndpointHealthを実装します。EndpointHealthプロパティはできる限り多くサポートしてください。
  • すべてのディレクティブに迅速に応答し、正しい応答またはエラーを返す必要があります。v3のResponseイベントでは、エンドポイントのすべてのプロパティ値をレポートするcontextオブジェクトを含めます。これによって、アプリとデバイスの状態が同期されます。
  • ReportStateディレクティブにStateReportイベントで応答し、取得可能なすべてのプロパティの状態を正しくレポートします。これによって、アプリとデバイスの状態が同期されます。
  • プロアクティブにレポート可能なすべてのプロパティは、ChangeReportイベントを使用して状態をプロアクティブに更新する必要があります。これによって、変更が発生した場合にアプリがデバイスの状態と同期され、ユーザーに通知されます。

StateReportイベントとChangeReportイベントの詳細については、スマートホームスキルの状態レポートについておよびAlexaイベントゲートウェイにイベントを送信するを参照してください。

Alexaアプリに対応するスキルのテストについてのベストプラクティス

テストアカウントでスキルを有効にし、スキルを使用してAlexaアプリの動作をテストします。

Alexaアプリで次の項目を確認します。

  • アカウントに関連付けられているデバイスが、正しいタイプとしてAlexaアプリに表示されていることを確認します。タイプによって、アイコン表現やデバイスのコントロールページが存在するかどうかが異なります。想定外の結果が生じた場合は、検出応答でデバイスに指定したDisplayCategoryを確認してください。
  • デバイスのコントロールページで変更を行い、デバイスの状態が変わったことを確認します。Alexaアプリでデバイスを変更したら、Alexaはスキルに、ディレクティブとリクエストされた変更を送信します。音声リクエストから開始されたディレクティブを処理する場合と同じ方法で、スキルがディレクティブを処理することを確認します。
  • Alexaに、音声でデバイスを変更するようリクエストし、Alexaアプリで状態が更新されることを確認します。