Deduplikacja urządzeń w chmurze i urządzeń Matter

Podczas konwertowania urządzenia, które obecnie korzysta z usługi (Cloud-to-cloud) na Matter, musisz się upewnić, że w Matter urządzenie używa tego samego identyfikatora co w przypadku połączenia z interfejsami API spoza Matter. Dzięki temu urządzenie wyświetli się tylko raz na urządzeniu Google Home Graph użytkownika. Duplikaty urządzeń (Cloud-to-cloud) można usunąć tylko wtedy, gdy są powiązane z konkretną strukturą (domem) w Google Home app (GHA).

Wymagania: SYNC

Aby uniknąć wyświetlania duplikatów w Home Graph, chmura partnera musi wysłać 3 nowe pola ciągu znaków dla każdego urządzenia w odpowiedzi Google SYNC. Te pola muszą być zgodne z atrybutami zdefiniowanymi w klastrze podstawowych informacji na urządzeniu z Matter. Dodatkowo odpowiedzi SYNC muszą zawierać parametr roomHint:

  1. matterUniqueId – atrybut UniqueId w formacie ciągu znaków.
  2. matterOriginalVendorId – atrybut VendorId w formacie szesnastkowym,
  3. matterOriginalProductId – atrybut ProductId w formacie szesnastkowym,
  4. roomHint – pomieszczenie, w którym znajduje się urządzenie.

Dokumentację na temat intencji takich jak SYNC można znaleźć w programie Cloud-to-Cloud Primer.

Przykładowa odpowiedź SYNC poniżej pokazuje wykorzystanie 3 nowych pól oraz pola roomHint:

SYNC – odpowiedź
{
  "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",
          }
        ]
      }
    ]
  }
}

Gdy urządzenie, które działało wcześniej w sieci domowej użytkownika z wykorzystaniem chmury partnera, zostanie przekonwertowane na urządzenie Matter, chmura partnera musi natychmiast wysłać do Google żądanie REQUEST SYNC, aby jak najszybciej zaktualizować te pola, aby uniknąć późnego deduplikacji.

Te ciągi nie powinny nigdy się zmieniać po ich przekazaniu dla danego urządzenia. Unikalny identyfikator powinien zmieniać się tylko po przywróceniu do ustawień fabrycznych, dzięki czemu urządzenie będzie wyglądać dla wszystkich integracji jako zupełnie nowe.

Automatyczne kojarzenie struktury

Nie możemy zagwarantować, że urządzenia Cloud-to-cloud zostaną automatycznie powiązane z konkretnym domem. Jeśli automatyczne powiązanie struktury nie jest możliwe, odpowiednie urządzenia z systemem Cloud-to-cloud będą widoczne poza salami w specjalnej sekcji ekranu głównego urządzenia GHA, w sekcji Powiązane z Twoim kontem. Duplikaty takich urządzeń nie będą usuwane. Jeśli użytkownik ma w komponencie GHA więcej niż 1 domenę (dom), urządzenia nie będą automatycznie umieszczane w domu. Struktura urządzeń może nie udać się z innych powodów.

Jeśli użytkownik ręcznie przeniesie urządzenie z Cloud-to-cloud, którego nie udało się automatycznie powiązać struktury z budynkiem, usuwanie duplikatów może nastąpić SYNC, o ile odpowiedzi SYNC będą zgodne z wymaganiami określonymi w wymaganiach dotyczących SYNC.