Deduplizierung in die Cloud und in Matter-Geräten

Wenn Sie ein Gerät, das derzeit (Cloud-to-cloud) verwendet, in Matter umwandeln, müssen Sie darauf achten, dass das Gerät in Matter dieselbe ID verwendet, die es bei der Verbindung über Nicht-Matter-APIs verwendet. Dadurch wird das Gerät nur einmal auf der Google Home Graph des Nutzers angezeigt. Cloud-to-cloud-Geräte können nur dedupliziert werden, wenn sie mit einer bestimmten Struktur (Haus) in Google Home app (GHA) verknüpft sind.

SYNC-Anforderungen

Damit im Home Graph keine Duplikate angezeigt werden, muss die Cloud des Partners für jedes Gerät in der SYNC-Antwort drei neue Stringfelder an Google senden. Diese Felder müssen mit Attributen übereinstimmen, die im Cluster für allgemeine Informationen für das Gerät Matter definiert wurden. Außerdem müssen SYNC-Antworten roomHint enthalten:

  1. matterUniqueId: Das Attribut UniqueId im Stringformat.
  2. matterOriginalVendorId: Das Attribut VendorId im hexadezimalen Stringformat.
  3. matterOriginalProductId: Das Attribut ProductId im hexadezimalen Stringformat.
  4. roomHint: der Raum, in dem sich das Gerät befindet.

Dokumentation zu Intents wie SYNC finden Sie in der Cloud-to-Cloud-Primer-Bibliothek.

Im folgenden Beispiel für die SYNC-Antwort werden die drei neuen Felder sowie roomHint verwendet:

SYNC-Antwort
{
  "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",
          }
        ]
      }
    ]
  }
}

Wenn ein Gerät, das zuvor über die Cloud eines Partners im Heimnetzwerk eines Nutzers betrieben wurde, in ein Matter-Gerät umgewandelt wird, muss die Cloud des Partners sofort eine REQUEST SYNC an Google senden, um diese Felder so schnell wie möglich zu aktualisieren und eine späte Deduplizierung zu vermeiden.

Diese Strings sollten sich niemals ändern, nachdem sie für ein bestimmtes Gerät bereitgestellt wurden. Die eindeutige ID sollte sich nur beim Zurücksetzen auf die Werkseinstellungen ändern. Dadurch wird das Gerät für alle Integrationen als völlig neues Gerät angezeigt.

Automatische Strukturverknüpfung

Cloud-to-cloud-Geräte werden nicht unbedingt automatisch mit einer bestimmten Struktur verknüpft. Wenn eine automatische Strukturverknüpfung nicht möglich ist, werden die entsprechenden Cloud-to-cloud-Geräte außerhalb der Räume in einem dafür vorgesehenen Bereich auf dem Hauptbildschirm von GHA unter dem Abschnitt Mit mir verknüpft angezeigt. Solche Geräte werden nicht dedupliziert. Geräte werden nicht automatisch in einer Struktur platziert, wenn der Nutzer mehr als eine Struktur (Zuhause) in GHA hat. Geräte können aus anderen Gründen nicht strukturiert sein.

Wenn ein Nutzer ein Cloud-to-cloud-Gerät, das die automatische Strukturverknüpfung fehlgeschlagen hat, manuell in eine Struktur verschiebt, kann die Deduplizierung beim nächsten SYNC erfolgen, sofern die SYNC-Antworten den in den SYNC-Anforderungen genannten Anforderungen entsprechen.