Deduplizierung in die Cloud und in Matter-Geräten

Wenn du ein Gerät, das derzeit (Cloud-to-cloud) verwendet, in Matter umwandelst, musst du dafür sorgen, dass das Gerät dieselbe ID auf Matter verwendet, die bei einer Verbindung über Nicht-Matter-APIs verwendet wird. Dadurch wird das Gerät nur einmal auf dem Google Home Graph des Nutzers angezeigt. Cloud-to-cloud Geräte können nur dedupliziert werden, wenn sie einem bestimmten Gebäude (Zuhause) im Google Home app (GHA) zugeordnet sind.

Anforderungen für SYNC

Damit Duplikate im Home Graph vermieden werden, muss die Cloud des Partners für jedes Gerät in der Antwort SYNC drei neue Stringfelder an Google senden. Diese Felder müssen mit Attributen übereinstimmen, die im Basisinformationen-Cluster für das Gerät Matter definiert sind. 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.

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

Die folgende SYNC-Beispielantwort zeigt die Verwendung der drei neuen Felder sowie von roomHint:

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 Nutzers 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, damit diese Felder so schnell wie möglich aktualisiert werden, um eine verspätete Deduplizierung zu vermeiden.

Diese Strings sollten sich nie ä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

Bei Cloud-to-cloud-Geräten kann nicht garantiert werden, dass sie automatisch einer bestimmten Struktur zugeordnet werden. Wenn die automatische Verknüpfung von Strukturen nicht möglich ist, werden die entsprechenden Cloud-to-cloud-Geräte außerhalb von Räumen in einem eigenen Bereich auf dem Hauptbildschirm von GHA in einem 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) im GHA hat. Geräte können aus anderen Gründen nicht strukturiert werden.

Wenn ein Nutzer ein Cloud-to-cloud-Gerät, bei dem die automatische Strukturverknüpfung fehlgeschlagen ist, manuell in eine Struktur verschiebt, kann die Deduplizierung auf der nächsten SYNC erfolgen, solange SYNC-Antworten den Anforderungen in den SYNC-Anforderungen entsprechen.