При конвертации устройства, использующего в настоящее время ( Cloud-to-cloud ), в Matter необходимо убедиться, что устройство использует тот же идентификатор в Matter , что и при подключении через API, не относящиеся Matter . Это гарантирует, что устройство будет отображаться в Google Home Graph пользователя только один раз. Дедупликация устройств Cloud-to-cloud возможна только при их привязке к определённой структуре (дому) в Google Home app (GHA) .
Требования SYNC
Чтобы избежать дубликатов в Home Graph , облако партнёра должно отправлять три новых строковых поля для каждого устройства в ответе SYNC
в Google. Эти поля должны соответствовать атрибутам, определённым в кластере базовой информации для устройства 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 . Структурирование устройств может быть невозможным по другим причинам.
Если пользователь вручную перемещает устройство Cloud-to-cloud , не прошедшее автоматическую ассоциацию со структурой, дедупликация может быть выполнена при следующем SYNC
, если ответы SYNC
соответствуют требованиям, указанным в требованиях SYNC .