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


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

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

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

ユーザーは、Alexaアプリの設定ページかコントロールページで、個々のスマートホームデバイスを確認できます。設定ページには、デバイスのタイプ、説明、名前が表示されます。ユーザーはここでデバイスの名前を変更したり、使用しなくなったデバイスを無効にしたりできます。コントロールページにはデバイスの状態が表示され、ユーザーがデバイスを制御できます。たとえば、ユーザーはデバイスのコントロールページからスマートプラグをオフにできます。

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

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

ACTIVITY_TRIGGER

なし

CAMERA

なし

LIGHT

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

OTHER

なし

SMARTLOCK

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

SMARTPLUG

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

SPEAKER

なし

SWITCH

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

TEMPERATURE_SENSOR

現在の状態を表示

THERMOSTAT

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

TV

なし

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

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

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

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

Alexaアプリのデバイステストについてのベストプラクティス

テストアカウントでスキルを有効にし、スキルを使用してAlexaアプリの動作をテストします。スキルを有効にする方法については、Alexaアプリでスキルを有効にするを参照してください。

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

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


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

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