अब आप Weave के मुख्य कॉम्पोनेंट को समझ चुके हैं, तो आइए देखें कि इसके कुछ फ़ंक्शन को हाई लेवल पर कैसे हैंडल किया जाता है.
Weave स्कीमा के तहत, Nest नेटवर्क में मौजूद रोज़मर्रा के कामों के करीब सभी फ़ंक्शन और संसाधनों को मैप किया जाता है. डेटा प्रबंधन मैसेज होते हैं.
प्रोफ़ाइल, प्रकाशित करने की सदस्यता लेने वाले मॉडल का इस्तेमाल करके, विशेषताओं के सभी अनुरोध मैनेज करती है. ये अनुरोध, डेटा मैनेजमेंट प्रोफ़ाइल से जुड़ेइस तरह के मॉडल में, प्रकाशक विशेषताओं (विज्ञापन को देखने का डेटा) का प्रचार करता है और एक सदस्य उन प्रकाशित विशेषताओं (डेटा देखा जा रहा है) में बदलावों की प्रतिक्रिया देता है. इस फ़ंक्शन को रीयल-टाइम एट्रिब्यूट मैनेजमेंट कहा जाता है.
डेटा मैनेजमेंट प्रोफ़ाइल, Weave का वर्कहॉर्स है. इसे आम तौर पर, Weave डेटा मैनेजमेंट (WDM) कहा जाता है.
अनुरोध
अनुरोध 39 से अलग हैं, क्योंकि ये स्कीमा में शामिल नहीं हैं और न ही इनके बारे में बताया जा सकता है. ये किसी खास बात के लिए तय नहीं होते.
, WDM और#39; रीयल-टाइम विशेषता प्रबंधन का एक अहम हिस्सा है. अनुरोध किसी खासियत की कार्रवाई के लिए स्टैंडर्ड अनुरोध होते हैं. हालांकि, उम्मीद के मुताबिक जवाब भी मिलते हैं. ये एक नियम औरस्टैंडर्ड अनुरोध तीन तरह के होते हैं:
- सूचना पाएं ऐसा स्टैंडर्ड अनुरोध जो किसी सदस्य की खासियत के बारे में या किसी खास इवेंट के बारे में बताता है.
- अपडेट करें किसी प्रॉपर्टी की स्थिति को बदलने का स्टैंडर्ड अनुरोध.
- देखें किसी विशेषता की प्रॉपर्टी देखने का सामान्य अनुरोध.
प्रोटोकॉल रोल
WDM प्रोटोकॉल भूमिकाएं दो तरह की होती हैं: प्रकाशक और सदस्य. ये भूमिकाएं खास लेवल पर असाइन की जाती हैं.
प्रकाशक
WDM प्रकाशक की भूमिका एक या एक से ज़्यादा सदस्यों को एक या एक से ज़्यादा स्कीमा के अलग-अलग वर्शन तैयार करके पेश करती है और दिलचस्पी रखने वाले सदस्यों को स्कीमा में बदलाव की सूचना भेजती है. ये सूचनाएं, सूचना के स्टैंडर्ड अनुरोध हैं.
उदाहरण के लिए, मान लीजिए कि ट्रेट A को संसाधन 1 से प्रकाशित किया गया है और संसाधन 2 ने इसकी सदस्यता ली है. जैसा कि चित्र 1 में दिखाया गया है, अगर ट्रेन A में बदलाव होता है, तो:
- WDM, बदलाव 1 के सभी सदस्यों को संसाधन 1 से सूचना देने का अनुरोध भेजता है.
- हर सदस्य एट्रिब्यूट A के हिसाब से अपने इंस्टेंस को अपडेट करता है.
स्कीमा में दूसरे एट्रिब्यूट के लिए भी यही होता है. उदाहरण के लिए, अगर संसाधन 2 ट्रेट B को प्रकाशित करता है, तो संसाधन 1, Trait B की सदस्यता लेता है और Trait B में बदलाव होता है:
- WDM, बदलाव 2 के बारे में जानकारी देने वाले Trait B के सभी सदस्यों को जानकारी देने का अनुरोध भेजता है.
- हर सदस्य अपने हिसाब से ट्रेस B के इंस्टेंस को अपडेट करता है.
सदस्य
WDM सदस्य की भूमिका व्यू के तौर पर होती है और एक या उससे ज़्यादा प्रकाशित स्कीमा के वर्शन इंस्टेंस का इस्तेमाल करती है. यह अपडेट के अनुरोध के साथ, प्रकाशित हो चुके स्कीमा के वर्शन इंस्टेंस को बदल सकता है या कोई खास ऐप्लिकेशन कमांड जारी कर सकता है.
उदाहरण के लिए, मान लीजिए कि संसाधन 2 ट्रेट A को बदलना चाहता है, जिसे संसाधन 1 ने प्रकाशित किया है. जैसा कि चित्र 2 में दिखाया गया है, ट्रेस A को बदलने के लिए:
- WDM एक ट्रेस को बदलने का अनुरोध करने के लिए, अपडेट का अनुरोध करता है संसाधन 2 से संसाधन 1 पर भेजता है.
- संसाधन 1 पर ट्रेनिंग A बदल दी गई है.
- WDM, बदलाव 1 के सभी सदस्यों को संसाधन 1 से सूचना देने का अनुरोध भेजता है.
- हर सदस्य एट्रिब्यूट A के हिसाब से अपने इंस्टेंस को अपडेट करता है.
सदस्य चाहें, तो किसी खास एट्रिब्यूट की
को देखने के लिए, किसी वेबपेज की खास विशेषता के बारे में बताने के लिए व्यू का अनुरोध भी भेजें. साथ ही, उस एट्रिब्यूट की खास बातों को प्रकाशक के साथ सिंक करके रखें.सदस्यता के प्रकार
WDM सदस्यताएं दो तरह की होती हैं. सदस्यताओं की शुरुआत, सदस्यता लेने के
के अनुरोध के साथ होती है. चित्र 3 एक-तरफ़ा सदस्यता बनाने के लिए बुनियादी मैसेज फ़्लो को दिखाता है.एकतरफ़ा
एक-तरफ़ा सदस्यताओं में एक सदस्य से, प्रकाशक की ओर से एक या एक से ज़्यादा खास इंस्टेंस के लिए किया गया अनुरोध शामिल होता है. उदाहरण के लिए, किसी मोबाइल डिवाइस से किसी सेवा से जुड़े घर (संरचना) की स्थिति हासिल की जा रही है.
म्यूचुअल
म्युचुअल सदस्यताएं तब होती हैं, जब संसाधन एक-दूसरे की सदस्यता लेते हैं. साथ ही, जब कोई सदस्य प्रकाशक और सदस्य, दोनों के तौर पर काम करता है. इसका एक उदाहरण Nest Guard और Nest डिटेक्ट है, जो Nest Secure सिस्टम का हिस्सा हैं. आपसी सदस्यता के ज़रिए प्रकाशित किए गए स्कीमा को प्रबंधित किया जा सकता है. साथ ही, अपनी सदस्यता को बेहतर और ज़्यादा असरदार तरीके से मैनेज किया जा सकता है. साथ ही, एकतरफ़ा सदस्यता की तुलना में ऐसा किया जा सकता है.
उदाहरण
आइए, इस बात का एक आसान उदाहरण देखें कि WDM किसी मोबाइल ऐप्लिकेशन का इस्तेमाल करके किसी डिवाइस और #39;के स्थान-भाषा में बदलाव को कैसे मैनेज करता है.
इस उदाहरण में तीन रिसॉर्स और दो एट्रिब्यूट शामिल हैं, जैसा कि चौथे इमेज में दिखाया गया है:
- डिवाइस (सदस्य)
- सेवा (प्रकाशक)
- मोबाइल ऐप्लिकेशन (सदस्य)
- स्थान-भाषा से जुड़ी विशेषताएं स्थान-भाषा के लिए उपलब्ध प्रॉपर्टी
- स्थान-भाषा की सेटिंग चालू स्थान-भाषा वाली प्रॉपर्टी
दोनों विशेषताओं को सेवा संसाधन ने प्रकाशित किया है और डिवाइस और मोबाइल ऐप्लिकेशन संसाधनों की सदस्यता ली है. हर सदस्य, सेवा संसाधन पर विशेषता प्रकाशकों के लिए एक-तरफ़ा सदस्यता के रूप में काम करता है.
इस उदाहरण में दिए गए सभी संसाधन एक ही बुनाई के कपड़े का हिस्सा हैं
.फ़्लो अपडेट करें
मान लें कि उपयोगकर्ता अपने मोबाइल ऐप्लिकेशन का इस्तेमाल करके, कनेक्ट किए गए मोबाइल ऐप्लिकेशन का इस्तेमाल करके डिवाइस से en_US
से fr_FR
तक की भाषा बदलता है. जैसा कि चित्र 5 में दिखाया गया है,
WDM में अपडेट का फ़्लो:
- मोबाइल ऐप्लिकेशन संसाधन (सदस्यों) ने सेवा संसाधन (प्रकाशक) को
अपडेट अनुरोध
fr_FR
में बदलने का अनुरोध किया है. यह स्थान-भाषा की क्षमताओं की विशेषता वाली, उपलब्ध स्थान प्रॉपर्टी की मान्य वैल्यू में से एक है.
भेजकर, स्थान-भाषा सेटिंग की मौजूदा विशेषता को - सेवा संसाधन, स्कीमा की कॉपी में, स्थान-भाषा सेटिंग की चालू स्थान प्रॉपर्टी को बदल देता है.
- सेवा संसाधन, स्थान-भाषा की सेटिंग के किसी भी सदस्य को इस बदलाव के बारे में सूचना भेजता है अनुरोध करता है.
- डिवाइस और मोबाइल ऐप्लिकेशन के संसाधन (सदस्यों) को जानकारी दें अनुरोध करें.
WDM के फ़ायदे
जब आपको कुछ करना है, तो यह बहुत मुश्किल हो सकता है. मोबाइल डिवाइस से अपने डिवाइस की स्थान-भाषा बदल देना. हालांकि, वर्शन वाला स्कीमा, प्रकाशन सदस्यता लेने का पैटर्न और WDM प्रोफ़ाइल में अनुरोध को रैप करके, Weave सभी संसाधनों में डेटा एक जैसी सुरक्षा देता है.
इससे उपयोगकर्ता के लाइव होने की संभावना भी बढ़ जाती है, इसलिए जब कोई डिवाइस रीस्टार्ट होता है, तो वह सभी सदस्यों को, उनकी बताई गई खासियतों के बारे में सूचना देता है. साथ ही, सदस्यों की बताई गई विशेषताओं की स्थिति की जानकारी देता है और सभी फ़ंक्शन की स्कीमा में बदलाव के बिना, उन सभी स्थितियों की स्कीमा के बारे में बताता है.
सदस्यताओं के अलावा
अगर कोई संसाधन किसी खास विशेषता की सदस्यता छोड़ता है, तो वह विशेषता की आखिरी कॉपी वाले वर्शन की कॉपी रखता है. अब उस विशेषता के लिए प्रकाशक को
से सूचना अनुरोध नहीं मिलते हैं, लेकिन वे अब भी उस प्रकाशक को अपडेट अनुरोध भेज सकते हैं.वे संसाधन जो कभी किसी विशेष समुदाय की सदस्यता नहीं लेते थे, वे उन्हें अनुरोध भेज सकते हैं. उदाहरण के लिए, शायद किसी संसाधन को किसी खासियत की स्थिति के बारे में जानने की ज़रूरत न हो, लेकिन वह किसी बाहरी इवेंट के जवाब में उस विशेषता की स्थिति को बदलने के लिए, अपडेट का अनुरोध भेजना
चाहे.Recap
आपने क्या सीखा:
- Weave डेटा मैनेजमेंट (WDM) , रीयल-टाइम में खासियत मैनेज करने के लिए Weave प्रोफ़ाइल है. साथ ही, यह सभी संसाधनों में लाइवनेस और डेटा इंटेग्रिटी को पक्का करता है
- अनुरोध एक खास कार्रवाई के लिए स्टैंडर्ड अनुरोध होते हैं. इनमें उम्मीद के मुताबिक जवाब भी होते हैं
- WDM में दो प्रोटोकॉल भूमिकाएं होती हैं:
- प्रकाशक — किसी खास विशेषता का स्रोत, यह सूचना के अनुरोध भेजता है
- सदस्य — प्रकाशित स्कीमा पर गौर करता है, व्यू , अपडेट या कमांड अनुरोध भेजता है
- WDM में दो सदस्यता मॉडल शामिल हैं:
- एकतरफ़ा — सदस्य से प्रकाशक तक के अनुरोध
- म्यूचुअल — डिवाइस एक-दूसरे की सदस्यता लेते हैं
- सदस्यताएं, सदस्यता लें अनुरोधों के आधार पर तय की जाती हैं
- संसाधन, विशेषताओं के लिए WDM मैसेज भेज सकते हैं, भले ही वे #39; की सदस्यता न ले चुके हों
ज़्यादा गहरी जानकारी के लिए, यहां देखें: