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