При конвертации устройства, которое в настоящее время использует ( Cloud-to-cloud ) в Matter , необходимо убедиться, что устройство использует тот же идентификатор в Matter , который оно использует при подключении с использованием API, не являющихся Matter . Это гарантирует, что устройство будет отображаться только один раз в Google Home Graph пользователя. Устройства Cloud-to-cloud могут быть дедуплицированы только в том случае, если они связаны с определенной структурой (домом) в Google Home app (GHA) .
Требования SYNC
Чтобы избежать дубликатов на Home Graph , облако партнера должно отправить три новых строковых поля для каждого устройства в ответе SYNC
в Google. Эти поля должны соответствовать атрибутам, определенным в Basic Information Cluster для устройства Matter . Кроме того, ответы SYNC
должны содержать roomHint
:
-
matterUniqueId
— атрибутUniqueId
в строковом формате. -
matterOriginalVendorId
— атрибутVendorId
в шестнадцатеричном строковом формате. -
matterOriginalProductId
— атрибутProductId
в формате шестнадцатеричной строки. -
roomHint
— Комната, в которой находится это устройство.
Документацию по таким намерениям, как SYNC
можно найти в руководстве Cloud-to-Cloud Primer .
Пример ответа 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 . Устройства могут не быть структурированы по другим причинам.
If a user moves a Cloud-to-cloud device which failed automatic structure association into a structure manually, deduplication may take place on the next SYNC
so long as SYNC
responses conform to the requirements noted in SYNC requirements .