Matter के डिवाइसों का साफ़-साफ़ डेटा मॉडल उपलब्ध है (DM), डिवाइस की सुविधाओं की हैरारकी है. सबसे ऊपर क्रम में एक डिवाइस होता है.
डिवाइस और एंडपॉइंट
स्मार्टफ़ोन और होम असिस्टेंट सहित सभी डिवाइस इनसे बने होते हैं नोड1. नोड, एक अलग तरह का ऐसा संसाधन होता है जिसे पहचाना और पता किया जा सकता है. ऐसा नेटवर्क जिसे कोई उपयोगकर्ता पूरी तरह से फ़ंक्शनल के तौर पर समझ सके. नेटवर्क कम्यूनिकेशन, इस इलाके में उपलब्ध है Matter, नोड पर शुरू और खत्म होता है.
नोड, एंडपॉइंट का एक कलेक्शन होता है. हर एंडपॉइंट में एक सुविधा सेट शामिल होता है. उदाहरण के लिए, एंडपॉइंट किसी लाइटिंग फ़ंक्शन से जुड़ा हो सकता है, जबकि एक और ऑफ़र, मोशन डिटेक्शन से जुड़ा है. साथ ही, एक अन्य यूटिलिटी डिवाइस OTA के तौर पर.
नोड की भूमिकाएं
नोड की भूमिका, मिलते-जुलते व्यवहार का एक सेट होती है. हर नोड में एक या उससे ज़्यादा भूमिकाएं हो सकती हैं. नोड के इस्तेमाल में ये शामिल हैं:
- कमिश्नर: काम करने वाला नोड कमीशन.
- कंट्रोलर: एक ऐसा नोड जो एक या उससे ज़्यादा नोड को कंट्रोल कर सकता है. उदाहरण के लिए, Google Home app (GHA), Google Assistant और Google Nest Hub (2nd gen). कुछ सूचनाएं मिल रही हैं डिवाइस के टाइप, जैसे कि चालू/बंद लाइट Switch, कंट्रोलर इस्तेमाल करें भूमिका.
- Controlee: एक नोड को एक या एक से ज़्यादा से कंट्रोल किया जा सकता है नोड. कुछ डिवाइस को छोड़कर, ज़्यादातर डिवाइस कंट्रोली हो सकते हैं जिसके पास कंट्रोलर की भूमिका हो. जैसे, चालू/बंद लाइट स्विच करें. चालू/बंद लाइट स्विच सिर्फ़ कंट्रोलर हो सकता है. यह कंट्रोली नहीं हो सकता.
- ओटीए प्रोवाइडर: ऐसा नोड जो ओटीए सॉफ़्टवेयर अपडेट दे सकता है.
- ओटीए अनुरोध करने वाला टूल: एक नोड जो ओटीए सॉफ़्टवेयर का अनुरोध कर सकता है अपडेट.
क्लस्टर
एंडपॉइंट में नोड में एक या उससे ज़्यादा क्लस्टर होते हैं. ये भी एक और चरण पूरा करने में मदद मिलती है, क्योंकि वे खास सुविधाओं का ग्रुप बना देते हैं, जैसे कि स्मार्ट प्लग पर चालू/बंद क्लस्टर या डिमेबल पर लेवल कंट्रोल क्लस्टर लाइट एंडपॉइंट.
किसी नोड में कई एंडपॉइंट भी हो सकते हैं, जिनमें से हर एक एंडपॉइंट एक ही जैसा सुविधा पर काम करता है. उदाहरण के लिए, लाइट फ़िक्सचर में अलग-अलग लाइटों को कंट्रोल करने की सुविधा हो सकती है. इसके अलावा, पावर स्ट्रिप में अलग-अलग सॉकेट को कंट्रोल करने की सुविधा हो सकती है.
विशेषताएं
आखिरी लेवल पर हमें एट्रिब्यूट मिलेंगे, जो नोड के ज़रिए होल्ड किए गए स्टेटस होते हैं. जैसे, लेवल कंट्रोल क्लस्टर का मौजूदा लेवल एट्रिब्यूट. विशेषताएं uint8, स्ट्रिंग या अरे जैसे अलग-अलग डेटा टाइप के तौर पर बताया जा सकता है.
निर्देश
एट्रिब्यूट के अलावा, क्लस्टर में कमांड भी होते हैं. ये ऐसी कार्रवाइयां होती हैं जो की कार्रवाई की जा सकती है. ये Matter के DM के बराबर हैं दूर से कार्रवाई करने के लिए कॉल. निर्देश, क्रिया जैसे होते हैं. जैसे, दरवाज़े के लॉक क्लस्टर पर दरवाज़ा लॉक करें. निर्देशों से जवाब और नतीजे जनरेट हो सकते हैं. Matter में, ऐसे जवाबों को निर्देशों के तौर पर भी परिभाषित किया गया है.
इवेंट
आखिर में, क्लस्टर में इवेंट भी हो सकते हैं, जिन्हें एक रिकॉर्ड माना जा सकता है ट्रांज़िशन के बारे में ज़्यादा है. एट्रिब्यूट से मौजूदा स्थितियों के बारे में पता चलता है. हालांकि, इवेंट, पिछले दिनों की एक डायरी होती है. इसमें ऐसे पल शामिल होते हैं जो एक-दूसरे से अचानक जुड़े होते हैं काउंटर, टाइमस्टैंप, और प्राथमिकता चुनें. वे स्टेट ट्रांज़िशन को कैप्चर करने के साथ-साथ, ऐसी डेटा मॉडलिंग को भी कैप्चर करते हैं विशेषताओं के साथ आसानी से हासिल नहीं किया जा सकता.
एंडपॉइंट 0, यूटिलिटी क्लस्टर के लिए रिज़र्व है. यूटिलिटी क्लस्टर, ऐसे खास क्लस्टर होते हैं जिनमें एंडपॉइंट पर सेवा देने की सुविधाएं शामिल होती हैं. जैसे, डिस्कवरी, पते की जानकारी, गड़बड़ी की जानकारी, और सॉफ़्टवेयर अपडेट. दूसरी ओर, ऐप्लिकेशन क्लस्टर, चालू/बंद या ऐसी ही मुख्य कार्रवाइयों के साथ काम करते हैं तापमान को मापना.
डिवाइस के टाइप
कुल मिलाकर, क्लस्टर के किन कॉम्बिनेशन को एक डिवाइस के तौर पर शामिल किया जाना चाहिए क्या डिवाइस बनाने वाली कंपनी नए डिवाइस की योजना बना रही है?
Matter स्पेसिफ़िकेशन के मुताबिक, डिवाइस में ऐसी सुविधाएं लागू करनी होंगी या एक या उससे ज़्यादा डिवाइस टाइप को बढ़ाएं. डिवाइस टाइप, Google News ज़रूरी और वैकल्पिक क्लस्टर, जो किसी किसी डिवाइस की स्क्रीन, जैसे कि कम रोशनी वाली लाइट, डोर लॉक या वीडियो प्लेयर.
डिवाइस टाइप की जानकारी, Matter में नहीं दी गई है खास जानकारी वाला मुख्य दस्तावेज़, लेकिन उससे जुड़े दस्तावेज़ के तौर पर: डिवाइस लाइब्रेरी. इसी तरह, सभी ऐप्लिकेशन क्लस्टर को ऐप्लिकेशन क्लस्टर लाइब्रेरी. ये तीन दस्तावेज़ यहां दिए गए हैं: Connectivity Standards Alliance (Alliance) सदस्यों की वेबसाइट.
डिवाइस टाइप को लागू करने वाले हर एंडपॉइंट में ज़रूरी क्लस्टर लागू करने होंगे जो उस डिवाइस टाइप को तय करते हैं. ज़रूरी क्लस्टर के अलावा, एंडपॉइंट में अन्य क्लस्टर भी लागू किए जा सकते हैं. इनमें डिवाइस टाइप के एक या एक से ज़्यादा वैकल्पिक क्लस्टर या ऐसे क्लस्टर भी शामिल हो सकते हैं जो डिवाइस टाइप का हिस्सा नहीं हैं.
क्लाइंट और सर्वर
क्लस्टर, क्लाइंट क्लस्टर या सर्वर क्लस्टर हो सकते हैं. सर्वर स्टेटफ़ुल होता है और उसमें एट्रिब्यूट, इवेंट, और निर्देश होते हैं. वहीं, क्लाइंट स्टेटलेस होता है और उसकी ज़िम्मेदारी किसी रिमोट सर्वर क्लस्टर के साथ इंटरैक्शन शुरू करना होता है. इसके लिए, क्लाइंट ये काम करता है:
- यह अपने रिमोट एट्रिब्यूट से रीड करता है और उनमें लिखता है.
- रीड.
- बोले जा रहे शब्दों को रिमोट के कमांड से बदल दिया जाता है.
जबकि DM एक नोड में पदानुक्रमिक होता है, तो नोड के बीच का संबंध नहीं. Matter के नोड में वर्टिकल नहीं है कंट्रोलर/पेरिफ़रल या लीडर/फ़ॉलोअर के साथ संबंध. इसके उलट, क्लस्टर के बीच का संबंध हॉरिज़ॉन्टल होता है: कोई भी क्लस्टर सर्वर या क्लाइंट हो सकता है. इसलिए, अलग-अलग क्लस्टर और फ़ंक्शन के हिसाब से, कोई नोड सर्वर और क्लाइंट, दोनों हो सकता है.
उदाहरण के लिए, हमारे पास दो टेबल लैंप हो सकते हैं: नोड A और नोड B. दोनों नोड रोशनी को चालू/बंद करने वाला डिवाइस टाइप लागू करें. इस डिवाइस टाइप में चालू/बंद है सर्वर क्लस्टर, जो अपनी रोशनी के आउटपुट को कंट्रोल करता है.
हालांकि, आम तौर पर टेबल लैंप की तरह, हमारे फ़िज़िकल डिवाइसों में भी चालू/बंद लाइट स्विच उनके लोकल चालू/बंद स्विच के लिए डिवाइस किस तरह का है. यह डिवाइस टाइप में चालू/बंद क्लाइंट क्लस्टर लागू होना चाहिए, ताकि वह सर्वर को कंट्रोल कर सके क्लस्टर.
इस सैंपल में, नोड A पर चालू/बंद क्लाइंट क्लस्टर, एट्रिब्यूट में बदलाव कर रहा है नोड A और नोड B पर चालू/बंद सर्वर क्लस्टर का ऐक्सेस, जबकि नोड B का क्लाइंट क्लस्टर सिर्फ़ नोड B पर सर्वर क्लस्टर में बदलाव कर रहा है.
अगले सेक्शन में, हम क्लाइंट और सर्वर क्लस्टर के इंटरैक्ट करने के तरीके के बारे में बताएंगे: इंटरैक्शन मॉडल.
डिस्क्रिप्टर क्लस्टर
अपने नाम के मुताबिक ही, डिस्क्रिप्टर क्लस्टर सर्वर खुद की जांच करता है जानकारी. इसमें एंडपॉइंट की जानकारी दी गई है. इसमें यह जानकारी शामिल की गई है:
- सर्वर क्लस्टर.
- क्लाइंट क्लस्टर.
- डिवाइस के टाइप.
- अतिरिक्त एंडपॉइंट, जिन्हें पार्ट्स कहते हैं.
हर डिवाइस टाइप के लिए, जानकारी देने वाले क्लस्टर लागू करने की ज़रूरत होती है. द रूट डिवाइस का टाइप, एंडपॉइंट 0 पर बताया गया है. इसके डिस्क्रिप्टर क्लस्टर को पढ़ने से इससे क्लाइंट को उपलब्ध डेटा के पूरे ट्री को एक्सप्लोर करने की सुविधा मिलती है एंडपॉइंट और ज़रूरी कार्रवाइयां करें.
कमिश्नर या कंट्रोल करने वाला डिवाइस, जैसे कि फ़ोन या हब डिवाइस (लाइट, स्विच, पंप, थर्मोस्टैट), और उस खास इंस्टेंस से लागू की गई खास सुविधाएं उपयोगकर्ता को सही यूज़र इंटरफ़ेस (यूआई) दिखा रहा है.
सर्वर क्लस्टर
ServerList
एट्रिब्यूट, एंडपॉइंट में क्लस्टर सर्वर की सूची बनाता है.
क्लाइंट क्लस्टर
ClientList
एट्रिब्यूट, एंडपॉइंट में क्लस्टर क्लाइंट की सूची बनाता है.
डिवाइस के टाइप की सूची
DeviceTypeList
एट्रिब्यूट, उन डिवाइस टाइप की सूची है जिनका इस्तेमाल
एंडपॉइंट और उसमें किए गए बदलावों की जानकारी. इसमें कम से कम एक वैल्यू होनी चाहिए
डिवाइस का टाइप.
पार्ट की सूची
PartsList
में इस डिवाइस को लागू करने के लिए इस्तेमाल किए गए एंडपॉइंट की सूची शामिल है
टाइप.
एंडपॉइंट 0 (रूट नोड) के PartsList
में
डिवाइस से अलग है (Endpoint 0).
दूसरे एंडपॉइंट का PartsList
आम तौर पर खाली रहता है. उदाहरण के लिए,
तापमान मापने वाले सेंसर के लिए, तापमान मापने वाले सर्वर क्लस्टर को ज़रूरी बनाना ज़रूरी है, न कि कुछ
अन्य.
अन्य डिवाइस टाइप, एक से ज़्यादा डिवाइस टाइप इंस्टेंस के ट्री स्ट्रक्चर में बनाए जा सकते हैं. उदाहरण के लिए, वीडियो प्लेयर डिवाइस में टीवी हो सकता है, वीडियो प्लेयर, स्पीकर, और अलग-अलग तरह के कॉन्टेंट ऐप्लिकेशन के लिए डिवाइस टाइप. ये सभी एंडपॉइंट अलग है.
-
Matter स्पेसिफ़िकेशन से पता चलता है कि किसी डिवाइस में एक से ज़्यादा नोड हो सकते हैं. उदाहरण के लिए, स्मार्टफ़ोन में कई ऐप्लिकेशन हो सकते हैं, जिनमें हर ऐप्लिकेशन अलग नोड हैं. इस प्राइमर के लिए, सभी डिवाइस में ये चीज़ें शामिल होंगी एक नोड. उम्मीद है कि ज़्यादातर फ़िज़िकल डिवाइस इस तरीके से काम करेंगे पैटर्न.↩