スマートホーム インテントは、ライトをつける、オーディオをスピーカーにキャストするなど、どのようなスマートホーム アクションを実行するかを表す単純なメッセージング オブジェクトです。
スマートホーム インテントはすべて action.devices
名前空間に含まれており、アクションの開発時にインテントに対するフルフィルメントを提供する必要があります。Google アシスタントがインテントをフルフィルメントに送信するたびに、ユーザーのサードパーティ OAuth 2 アクセス トークンが Authorization ヘッダーで渡されます。
サポートされているスマートホーム インテントは次のとおりです。
SYNC
action.devices.SYNC
は、ユーザーが接続していて使用可能であるスマートホーム デバイスのリストをリクエストする場合に使うインテントです。
ユーザーが Google Home アプリでデバイスをセットアップする際、クラウド インフラストラクチャに対しそれらのデバイスの認証も行われます。認証が完了すると、アシスタントは OAuth2 トークンを受け取ります。この時点で、Google アシスタントは action.devices.SYNC
インテントをフルフィルメントに送信してユーザーのデバイスと機能の初期リストをクラウド インフラストラクチャから取得します。

ユーザーのアカウントのリンクをいったん解除して再びリンクすることを避けるため、Google アシスタントに Request Sync を送信できます。これにより、action.devices.SYNC
インテントがフルフィルメントに送信され、デバイスと機能のリストが同期されます。詳細については、Request Sync の実装をご覧ください。

ローカルホーム プラットフォームは、ローカル フルフィルメントのセットアップ中に、スマートホーム アクションのクラウド フルフィルメントからの SYNC
レスポンスをチェックします。ローカル フルフィルメントをサポートするよう SYNC
レスポンスを変更する方法については、クラウド フルフィルメントで SYNC レスポンスを更新するをご覧ください。
QUERY
action.devices.QUERY
は、スマートホーム デバイスの現在の状態を照会する場合に使うインテントです。
ユーザーから「OK Google, キッチンで点灯しているライトはどれ?」というような質問を受けたとき、Google アシスタントはその質問に答えるために action.devices.QUERY
インテントをフルフィルメントに送信します。

最適なユーザー エクスペリエンスを実現するには、Report State を実装して、事前にユーザーのデバイスの現在の状態をホームグラフに直接送信しておく必要があります。たとえばこの実装により、ユーザーが物理的な照明スイッチでスマートライトをつけたかどうかを、Google アシスタントが認識できるようになります。

EXECUTE
action.devices.EXECUTE
は、スマートホーム デバイスで実行するコマンドを提供する場合に使うインテントです。
ユーザーが Google アシスタントを通じてデバイスにコマンドを送ると、実行するアクションと対象のデバイスを指示する action.devices.EXECUTE
インテントがフルフィルメントに送信されます。ユーザーは、「OK Google, リビングのライトをつけて」などのコマンドでデバイスに対するアクションを実行できます。

DISCONNECT
action.devices.DISCONNECT
は、ユーザーが Google アシスタントからアプリ アカウントのリンクを解除したことを伝えるインテントです。action.devices.DISCONNECT
インテントを受け取った後は、このユーザーのデバイスの状態を返さないでください。