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

Ao converter um dispositivo que usa atualmente (Cloud-to-cloud) em Matter, ele precisa garantir que o dispositivo use o mesmo ID em Matter que é usado quando conectado usando as APIs não Matter. Isso garante que o dispositivo seja exibido apenas uma vez na Google Home Graph do usuário. Só é possível eliminar a duplicação de dispositivos Cloud-to-cloud quando eles estão associados a uma estrutura específica (página inicial) no Google Home app (GHA).

Requisitos de SYNC

Para evitar a exibição de cópias 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 ambiente onde este dispositivo está.

A documentação sobre intents, como SYNC, pode ser encontrada no guia de primeiros passos da nuvem.

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

Resposta de SYNC
{
  "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 anteriormente operava 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 para o Google para atualizar esses campos o mais rápido possível para evitar a eliminação de duplicação tardia.

Essas strings nunca devem ser alteradas depois de serem fornecidas para um determinado dispositivo. O ID exclusivo só precisa mudar 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 de estrutura automática

Não há garantia de que os dispositivos Cloud-to-cloud serão automaticamente associados a uma estrutura específica. Em situações em que a associação automática de estrutura não é possível, os dispositivos Cloud-to-cloud relevantes aparecem em uma seção dedicada da tela principal do GHA, em uma seção intitulada Vinculado a você, fora de qualquer sala. 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 (página inicial) na GHA. Os dispositivos podem não ser estruturados por outros motivos.

Se um usuário mover um dispositivo Cloud-to-cloud que falhou na associação automática de estrutura a uma estrutura manualmente, a desduplicação poderá ocorrer no próximo SYNC, desde que as respostas SYNC estejam em conformidade com os requisitos anotados em requisitos SYNC.