При преобразовании устройства, которое в настоящее время использует ( Cloud-to-cloud ) в Matter , вы должны убедиться, что устройство использует тот же идентификатор в Matter , который оно использует при подключении с использованием API, не относящихся Matter . Это гарантирует, что устройство будет отображаться на Google Home Graph пользователя только один раз. Устройства Cloud-to-cloud могут быть дедуплицированы только в том случае, если они связаны с определенной структурой (домом) в Google Home app (GHA) .
Требования SYNC
Чтобы избежать появления дубликатов на Home Graph , облако партнера должно отправить в Google три новых строковых поля для каждого устройства в ответе SYNC
. Эти поля должны соответствовать атрибутам, определенным в кластере базовой информации для устройства Matter . Кроме того, ответы SYNC
должны содержать roomHint
:
-
matterUniqueId
— АтрибутUniqueId
в строковом формате. -
matterOriginalVendorId
— АтрибутVendorId
в формате шестнадцатеричной строки. -
matterOriginalProductId
— АтрибутProductId
в формате шестнадцатеричной строки. -
roomHint
— комната, в которой находится это устройство.
Документацию о таких целях, как SYNC
можно найти в руководстве по переходу от облака к облаку .
В приведенном ниже примере ответа SYNC
показано использование трех новых полей, а также roomHint
:
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", } ] } ] } }
Когда устройство, которое ранее работало в домашней сети пользователя с использованием облака партнера, преобразуется в устройство Matter , облако партнера должно немедленно отправить REQUEST SYNC
в Google, чтобы как можно быстрее обновить эти поля, чтобы избежать поздней дедупликации.
Эти строки никогда не должны меняться после того, как они предоставлены для данного устройства. Уникальный идентификатор должен меняться только при сбросе настроек к заводским настройкам, в результате чего устройство будет отображаться для всех интеграций как совершенно новое устройство.
Автоматическое объединение структур
Устройства Cloud-to-cloud не гарантированно будут автоматически связаны с определенной структурой. В ситуациях, когда автоматическая ассоциация структур невозможна, соответствующие Cloud-to-cloud устройства появятся в специальном разделе главного экрана GHA , в разделе под названием «Связано с вами» , за пределами каких-либо комнат. Такие устройства не будут дедуплицироваться. Устройства не будут автоматически размещаться в структуре, если у пользователя в GHA более одной структуры (дома). Устройства могут не структурироваться по другим причинам.
Если пользователь перемещает устройство Cloud-to-cloud , которому не удалось выполнить автоматическую привязку структуры, к структуре вручную, дедупликация может иметь место при следующей синхронизации SYNC
, если ответы SYNC
соответствуют требованиям, указанным в требованиях SYNC .