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

Podczas konwertowania urządzenia, które obecnie używa (Cloud-to-cloud), na Matter, musisz się upewnić, że urządzenie używa tego samego identyfikatora w Matter, którego używa podczas łączenia się za pomocą interfejsów API innych niż Matter. Dzięki temu urządzenie będzie widoczne tylko raz na stronie Google Home Graph użytkownika. Urządzenia Cloud-to-cloud można deduplikować tylko wtedy, gdy są powiązane z konkretnym domem w Google Home app (GHA).

Wymagania dotyczące SYNC

Aby uniknąć wyświetlania duplikatów na urządzeniu Home Graph, chmura partnera musi wysłać do Google 3 nowe pola tekstowe dla każdego urządzenia w odpowiedzi SYNC. Te pola muszą odpowiadać atrybutom zdefiniowanym w klastrze informacji podstawowych urządzenia Matter. Dodatkowo odpowiedzi SYNC muszą zawierać roomHint:

  1. matterUniqueId – atrybut UniqueId w formacie ciągu znaków z klastra Informacje podstawowe.
  2. matterOriginalVendorId – atrybut VendorId w formacie ciągu szesnastkowego z klastra informacji podstawowych.
  3. matterOriginalProductId – atrybut ProductId w formacie ciągu szesnastkowego z klastra Informacje podstawowe.
  4. roomHint – pomieszczenie, w którym znajduje się urządzenie.

Dokumentację dotyczącą intencji takich jak SYNC znajdziesz w podstawowych informacjach o Cloud-to-Cloud.

Poniższy przykład odpowiedzi SYNC pokazuje użycie 3 nowych pól oraz 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 wcześniej działało w sieci domowej użytkownika przy użyciu chmury partnera, zostanie przekonwertowane na urządzenie Matter, chmura partnera musi natychmiast wysłać do Google zdarzenie REQUEST SYNC, aby jak najszybciej zaktualizować te pola i uniknąć opóźnionej deduplikacji.

Te ciągi znaków nie powinny się zmieniać po ich podaniu dla danego urządzenia. Unikalny identyfikator powinien się zmieniać tylko po przywróceniu ustawień fabrycznych, co sprawia, że urządzenie jest widoczne we wszystkich integracjach jako zupełnie nowe.

Automatyczne powiązanie struktury

Nie ma gwarancji, że urządzenia Cloud-to-cloud zostaną automatycznie powiązane z określonym domem. W sytuacjach, gdy automatyczne powiązanie z domem nie jest możliwe, odpowiednie urządzenia Cloud-to-cloud pojawią się w osobnej sekcji na ekranie głównym GHA, w sekcji Powiązane z Twoim kontem, poza jakimkolwiek pomieszczeniem. Takie urządzenia nie zostaną usunięte. Urządzenia nie będą automatycznie umieszczane w strukturze, jeśli użytkownik ma więcej niż 1 strukturę (dom) w GHA. Urządzenia mogą nie zostać ustrukturyzowane z innych powodów.

Jeśli użytkownik ręcznie przeniesie urządzenie Cloud-to-cloud, którego automatyczne powiązanie z domem się nie powiodło, do domu, deduplikacja może nastąpić przy następnym SYNC, o ile odpowiedzi SYNC będą zgodne z wymaganiami opisanymi w sekcji Wymagania dotyczące synchronizacji.