Eliminação de duplicação de dispositivos entre nuvens e Matter

Ao converter um dispositivo que está usando (Cloud-to-cloud) para Matter, você precisa garantir que ele use o mesmo ID em Matter que usa ao se conectar usando APIs que não são Matter. Isso garante que o dispositivo seja mostrado apenas uma vez no Google Home Graph do usuário. A duplicação de dispositivos Cloud-to-cloud só pode ser eliminada quando estão associados a uma estrutura específica (casa) na Google Home app (GHA).

Requisitos do SYNC

Para evitar que cópias apareçam no Home Graph, a nuvem do parceiro precisa enviar três novos campos de string para cada dispositivo na resposta SYNC ao Google. Esses campos precisam corresponder aos atributos definidos no cluster de informações básicas do dispositivo Matter. Além disso, as respostas SYNC precisam conter roomHint:

  1. matterUniqueId: o atributo UniqueId no formato de string.
  2. matterOriginalVendorId: o atributo VendorId, no formato de string hexadecimal.
  3. matterOriginalProductId: o atributo ProductId, no formato de string hexadecimal.
  4. roomHint: o cômodo onde o dispositivo está.

A documentação sobre intents como SYNC pode ser encontrada na introdução Cloud-to-Cloud.

O exemplo de resposta SYNC abaixo mostra o uso dos três novos campos, bem como roomHint:

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

Quando um dispositivo que estava operando anteriormente na rede doméstica de um usuário usando a nuvem de um parceiro é convertido em um dispositivo Matter, a nuvem do parceiro precisa enviar imediatamente um REQUEST SYNC ao Google para atualizar esses campos o mais rápido possível e evitar a eliminação de duplicação tardia.

Essas strings nunca devem mudar depois de fornecidas para um determinado dispositivo. O ID exclusivo só será alterado em uma redefinição para a configuração original, o que faz com que o dispositivo apareça para todas as integrações como um dispositivo totalmente novo.

Associação automática de estrutura

Não há garantia de que os dispositivos Cloud-to-cloud serão associados automaticamente a uma estrutura específica. Nas situações em que a associação automática de estruturas não for possível, os dispositivos Cloud-to-cloud relevantes vão aparecer em uma seção dedicada da tela principal do GHA, em uma seção intitulada Vinculado a você, fora das salas. A duplicação desses dispositivos não será eliminada. Os dispositivos não serão colocados automaticamente em uma estrutura quando o usuário tiver mais de uma estrutura (casa) na GHA. Os dispositivos podem não ser estruturados por outros motivos.

Se um usuário mover manualmente um dispositivo Cloud-to-cloud que falhou na associação automática de estrutura para uma estrutura, a eliminação de duplicação poderá ocorrer na próxima SYNC, desde que as respostas SYNC estejam em conformidade com os requisitos observados nos requisitos de sincronização.