クラウド間および Matter デバイスの重複除去

現在(Cloud-to-cloud)を使用しているデバイスを Matter に変換する場合、デバイスが Matter 以外の API で接続したときに使用する ID と同じ ID をMatter上で使用する必要があります。これにより、デバイスがユーザーの Google Home Graph に 1 回だけ表示されます。Cloud-to-cloud デバイスの重複を除去できるのは、Google Home app (GHA) の特定のストラクチャ(ホーム)に関連付けられている場合のみです。

SYNC の要件

Home Graph に重複して表示されないようにするには、パートナーのクラウドから Google への SYNC レスポンスでデバイスごとに 3 つの新しい文字列フィールドを送信する必要があります。これらのフィールドは、Matter デバイスの基本情報クラスタで定義されている属性と一致する必要があります。また、SYNC レスポンスには roomHint を含める必要があります。

  1. matterUniqueId - UniqueId 属性(文字列形式)。
  2. matterOriginalVendorId - VendorId 属性(16 進数文字列形式)。
  3. matterOriginalProductId - ProductId 属性(16 進数文字列形式)。
  4. roomHint - このデバイスがある部屋。

SYNC などのインテントに関するドキュメントについては、Cloud-to-Cloud 入門をご覧ください。

以下の SYNC レスポンスの例は、3 つの新しいフィールドと roomHint の使用を示しています。

SYNC レスポンス
{
  "requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf",
  "payload": {
    "agentUserId": "1836.15267389",
    "devices": [
      {
        "id": "456",
        "type": "action.devices.types.LIGHT",
        "traits": [
          "action.devices.traits.OnOff",
          "action.devices.traits.Brightness",
          "action.devices.traits.ColorSetting",
        ],
        "willReportState": true,
        "roomHint": "office",
        "deviceInfo": { ... },
        "matterUniqueId": "00112233aabbccddeeff",
        "matterOriginalVendorId": "0xfff1",
        "matterOriginalProductId": "0x1234",
        "otherDeviceIds": [
          {
            "deviceId": "local-device-id",
          }
        ]
      }
    ]
  }
}

以前にパートナーのクラウドを使用してユーザーのホーム ネットワークで動作していたデバイスを Matter デバイスに変換した場合、パートナーのクラウドは直ちに REQUEST SYNC を Google に送信し、遅延重複除去を避けるためにこれらのフィールドをできるだけ早く更新する必要があります。

これらの文字列は、特定のデバイスに提供した後は決して変更しないでください。一意の ID は出荷時設定へのリセット時にのみ変更されるため、デバイスはすべての統合でまったく新しいデバイスとして認識されます。

ストラクチャの自動関連付け

Cloud-to-cloud デバイスは、特定のストラクチャに自動的に関連付けられる保証はありません。自動ストラクチャの関連付けができない場合、関連する Cloud-to-cloud デバイスは、GHA のメイン画面の専用のセクション([リンク済み])という、すべての部屋の外部に表示されます。このようなデバイスの重複は除去されません。ユーザーの GHA に複数のストラクチャ(ホーム)がある場合、デバイスはストラクチャに自動的に配置されません。その他の理由でデバイスの構造化が失敗することもあります。

自動ストラクチャの関連付けに失敗した Cloud-to-cloud デバイスをユーザーが手動でストラクチャに移動する場合、SYNC レスポンスが SYNC の要件に記載されている要件を遵守している限り、次の SYNC で重複除去を行うことができます。