क्लाउड-टू-क्लाउड और Matter से जुड़े डिवाइस की डुप्लीकेट कॉपी हटाने की तकनीक

फ़िलहाल (Cloud-to-cloud) का इस्तेमाल करने वाले किसी डिवाइस को Matter में बदलते समय, आपको यह पक्का करना होगा कि डिवाइस Matter पर उसी आईडी का इस्तेमाल करे जो Matter एपीआई का इस्तेमाल करके कनेक्ट किए जाने पर इस्तेमाल किया जाता है. ऐसा करने से, उपयोगकर्ता के Google Home Graph पर डिवाइस सिर्फ़ एक बार दिखेगा. Cloud-to-cloud डिवाइसों की डुप्लीकेट कॉपी सिर्फ़ तब हटाई जा सकती है, जब वे Google Home app (GHA) में किसी खास स्ट्रक्चर (होम) से जुड़े हों.

SYNC ज़रूरी शर्तें

Home Graph पर डुप्लीकेट संपर्क न दिखें, इसके लिए पार्टनर के क्लाउड को हर डिवाइस के लिए, Google को 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 डिवाइस में बदल जाता है, तो पार्टनर के क्लाउड को तुरंत Google को REQUEST SYNC भेजना चाहिए, ताकि इन फ़ील्ड को जल्दी अपडेट किया जा सके. ऐसा करने से, डुप्लीकेट कॉपी हटाने में देरी से बचा जा सकता है.

किसी डिवाइस के लिए एक बार दिए जाने के बाद, ये स्ट्रिंग कभी नहीं बदलनी चाहिए. यूनीक आईडी सिर्फ़ फ़ैक्ट्री रीसेट करने पर ही बदला जाना चाहिए. इससे डिवाइस सभी इंटिग्रेशन के लिए एक नए डिवाइस की तरह दिखता है.

ऑटोमैटिक स्ट्रक्चर असोसिएशन

इस बात की कोई गारंटी नहीं है कि Cloud-to-cloud डिवाइसों को किसी खास स्ट्रक्चर से अपने-आप जोड़ दिया जाएगा. अगर किसी रूम को अपने-आप स्ट्रक्चर करने की सुविधा उपलब्ध नहीं है, तो Cloud-to-cloud डिवाइस GHA की मुख्य स्क्रीन पर, आपके लिंक किए गए सेक्शन के सेक्शन में, किसी भी रूम के बाहर दिखेंगे. ऐसे डिवाइसों की डुप्लीकेट कॉपी नहीं हटाई जाएगी. अगर उपयोगकर्ता के GHA में एक से ज़्यादा स्ट्रक्चर (होम) होंगे, तो डिवाइसों को अपने-आप किसी स्ट्रक्चर में नहीं रखा जाएगा. शायद दूसरी वजहों से डिवाइसों की व्यवस्थित न हो पाए.

अगर कोई उपयोगकर्ता ऐसे Cloud-to-cloud डिवाइस की जगह बदल जाता है जो अपने-आप स्ट्रक्चर होने वाले कॉन्फ़िगरेशन को मैन्युअल तरीके से स्ट्रक्चर में मूव नहीं कर पाता है, तो अगले SYNC पर डुप्लीकेट कॉपी हटाई जा सकती है. ऐसा तब होगा, जब SYNC जवाब सिंक करने की ज़रूरी शर्तों में बताई गई ज़रूरी शर्तों के मुताबिक हों.