¡Atención! Pronto se lanzarán nuevos programas de vista previa para desarrolladores. Postúlate aquí y sé una de las primeras personas en probar herramientas nuevas y enviar comentarios.

Anulación de duplicación de dispositivos de nube a nube y Matter

Cuando conviertes un dispositivo que actualmente utiliza (Cloud-to-cloud) en Matter, debes asegurarte de que este use el mismo ID en Matter que usa cuando se conecta con las API que no son Matter. De esta manera, se garantiza que el dispositivo se muestre una sola vez en el Google Home Graph del usuario. Se pueden anular los duplicados en dispositivos Cloud-to-cloud solo cuando están asociados con una estructura en particular (inicio) en Google Home app (GHA).

Requisitos de SYNC

A fin de evitar que aparezcan duplicados en Home Graph, la nube del socio debe enviar tres campos de string nuevos para cada dispositivo en la respuesta SYNC a Google. Estos campos deben coincidir con los atributos definidos en el clúster de información básica para el dispositivo Matter. Además, las respuestas de SYNC deben contener roomHint:

  1. matterUniqueId: Es el atributo UniqueId en formato de string.
  2. matterOriginalVendorId: Es el atributo VendorId, en formato de string hexadecimal.
  3. matterOriginalProductId: Es el atributo ProductId, en formato de string hexadecimal.
  4. roomHint: Es la habitación donde reside el dispositivo.

Puedes encontrar documentación sobre intents como SYNC en la Guía de Cloud a Cloud.

En la siguiente respuesta de ejemplo SYNC, se muestra el uso de los tres campos nuevos y de roomHint:

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

Cuando un dispositivo que antes funcionaba en la red doméstica de un usuario mediante la nube de un socio se convirtió en un dispositivo Matter, la nube del socio debe enviar de inmediato un REQUEST SYNC a Google para actualizar estos campos lo más rápido posible a fin de evitar la anulación de duplicación tardía.

Estas strings nunca deben cambiar una vez que se proporcionan para un dispositivo determinado. El ID único solo se debe cambiar cuando se restablece la configuración de fábrica, lo que hace que el dispositivo aparezca en todas las integraciones como un dispositivo completamente nuevo.

Asociación de estructura automática

No se garantiza que los dispositivos Cloud-to-cloud se asocien automáticamente con una estructura en particular. En los casos en que no sea posible la asociación automática de estructuras, los dispositivos Cloud-to-cloud relevantes aparecerán en una sección dedicada de la pantalla principal de GHA, en una sección titulada Linked to you, vinculada a cualquier habitación. No se anulará la duplicación de tales dispositivos. No se colocarán automáticamente los dispositivos en una estructura cuando el usuario tenga más de una (página principal) en GHA. Es posible que los dispositivos no se estructuren por otros motivos.

Si un usuario mueve un dispositivo Cloud-to-cloud que falló la asociación automática de la estructura a una estructura de forma manual, la anulación de duplicación puede ocurrir en el siguiente SYNC, siempre que las respuestas de SYNC cumplan con los requisitos que se indican en los requisitos de SYNC.