כשממירים מכשיר שמשתמש כרגע ב-(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.
בתגובה לדוגמה 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
עומדות בדרישות שמפורטות בקטע דרישות הסנכרון.