ابر به ابر و حذف دستگاه Matter

هنگام تبدیل دستگاهی که در حال حاضر از ( Cloud-to-cloud ) به Matter استفاده می‌کند، باید مطمئن شوید که دستگاه از همان شناسه‌ای در Matter استفاده می‌کند که هنگام اتصال با استفاده از APIهای غیر Matter از آن استفاده می‌کند. انجام این کار تضمین می‌کند که دستگاه فقط یک بار در Google Home Graph کاربر نشان داده شود. دستگاه‌های Cloud-to-cloud فقط زمانی می‌توانند deduplicate شوند که با یک ساختار خاص (home) در Google Home app (GHA) مرتبط باشند.

الزامات SYNC

برای جلوگیری از نمایش موارد تکراری در Home Graph ، ابر شریک باید سه فیلد رشته‌ای جدید برای هر دستگاه در پاسخ SYNC به گوگل ارسال کند. این فیلدها باید با ویژگی‌های تعریف‌شده در خوشه اطلاعات پایه برای دستگاه Matter مطابقت داشته باشند. علاوه بر این، پاسخ‌های SYNC باید حاوی roomHint باشند:

  1. matterUniqueId — ویژگی UniqueId ، در قالب رشته، از خوشه اطلاعات پایه.
  2. matterOriginalVendorId — ویژگی VendorId ، در قالب رشته هگزادسیمال، از خوشه اطلاعات پایه.
  3. matterOriginalProductId — ویژگی ProductId ، در قالب رشته هگزادسیمال، از خوشه اطلاعات پایه.
  4. 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 به گوگل ارسال کند تا این فیلدها را در اسرع وقت به‌روزرسانی کند تا از حذف داده‌های تکراری (deduplication) با تأخیر جلوگیری شود.

این رشته‌ها هرگز نباید پس از ارائه برای یک دستگاه خاص تغییر کنند. شناسه منحصر به فرد فقط باید در هنگام تنظیم مجدد کارخانه تغییر کند، که باعث می‌شود دستگاه برای همه ادغام‌ها به عنوان یک دستگاه کاملاً جدید به نظر برسد.

ارتباط خودکار ساختار

تضمینی وجود ندارد که دستگاه‌های Cloud-to-cloud به طور خودکار با یک ساختار خاص مرتبط شوند. در شرایطی که ارتباط خودکار ساختار امکان‌پذیر نباشد، دستگاه‌های Cloud-to-cloud مربوطه در بخش اختصاصی از صفحه اصلی GHA ، تحت بخشی با عنوان «به شما مرتبط شده است» ، خارج از هر اتاقی، ظاهر می‌شوند. چنین دستگاه‌هایی حذف نخواهند شد. وقتی کاربر بیش از یک ساختار (خانه) در GHA داشته باشد، دستگاه‌ها به طور خودکار در یک ساختار قرار نمی‌گیرند. ممکن است دستگاه‌ها به دلایل دیگری در ساختار قرار نگیرند.

اگر کاربری دستگاهی Cloud-to-cloud که در اتصال خودکار ساختار آن ناموفق بوده است، به صورت دستی به یک ساختار دیگر منتقل کند، تا زمانی که پاسخ‌های SYNC با الزامات ذکر شده در الزامات SYNC مطابقت داشته باشند، حذف داده‌های تکراری می‌تواند در SYNC بعدی انجام شود.