लेन-देन की जानकारी ऐक्सेस करना
Matter में नोड के साथ इंटरैक्ट करने के शुरुआती इस्तेमाल के मामलों में से एक, किसी दूसरे नोड से एट्रिब्यूट की जानकारी ऐक्सेस करना है, जैसे, सेंसर से तापमान की वैल्यू ऐक्सेस करना.Matter ऐसे इंटरैक्शन में, सबसे पहले जानकारी ऐक्सेस करने के अनुरोध की कार्रवाई करनी होती है.
जानकारी ऐक्सेस करने के अनुरोध की कार्रवाई
दिशा: अनुरोध करने वाला नोड -> टारगेट नोड
इस कार्रवाई में, अनुरोध करने वाला नोड, टारगेट नोड से क्वेरी करता है. इसमें ये चीज़ें शामिल होती हैं:
- एट्रिब्यूट के अनुरोध: टारगेट नोड के शून्य या उससे ज़्यादा एट्रिब्यूट की सूची. इस सूची में, टारगेट नोड के अनुरोध किए गए एट्रिब्यूट के शून्य या उससे ज़्यादा पाथ शामिल होते हैं.
- इवेंट के अनुरोध: टारगेट नोड के अनुरोध किए गए इवेंट के शून्य या उससे ज़्यादा पाथ की सूची.
जानकारी ऐक्सेस करने के अनुरोध की कार्रवाई मिलने के बाद, टारगेट नोड, अनुरोध की गई जानकारी के साथ रिपोर्ट डेटा की कार्रवाई को इकट्ठा करेगा.
रिपोर्ट डेटा की कार्रवाई
दिशा: टारगेट नोड -> अनुरोध करने वाला नोड
इस कार्रवाई में, टारगेट नोड इन चीज़ों के साथ जवाब देता है:
- एट्रिब्यूट की रिपोर्ट: रिपोर्ट किए गए शून्य या उससे ज़्यादा एट्रिब्यूट की सूची . ये एट्रिब्यूट, जानकारी ऐक्सेस करने के अनुरोध की कार्रवाई में अनुरोध किए गए थे.
- इवेंट की रिपोर्ट: रिपोर्ट किए गए शून्य या उससे ज़्यादा इवेंट की सूची.
- जवाब को दबाना: एक फ़्लैग जो यह तय करता है कि इस कार्रवाई के स्टेटस के जवाब को दबाया जाना चाहिए या नहीं.
- सदस्यता आईडी: अगर यह रिपोर्ट, सदस्यता लेने के लेन-देन का हिस्सा है, तो इसमें एक ऐसा इंटिजर शामिल होना चाहिए जिसका इस्तेमाल सदस्यता लेने के लेन-देन की पहचान करने के लिए किया जाता है.
स्टेटस के जवाब की कार्रवाई
दिशा: टारगेट नोड -> अनुरोध करने वाला नोड या अनुरोध करने वाला नोड -> टारगेट नोड
अनुरोध करने वाले नोड को अनुरोध किया गया डेटा मिलने के बाद, उसे डिफ़ॉल्ट रूप से स्टेटस के जवाब की कार्रवाई जनरेट करनी होगी. यह कार्रवाई, अनुरोध करने वाले नोड से भेजी जाती है. इससे यह पुष्टि होती है कि रिपोर्ट किया गया डेटा मिल गया है. अगर 'स्टेटस के जवाब को दबाएं' फ़्लैग सेट है, तो अनुरोध करने वाले नोड को स्टेटस के जवाब की कार्रवाई नहीं भेजनी चाहिए.
अनुरोध करने वाले नोड से स्टेटस के जवाब की कार्रवाई भेजे जाने या अनुरोध करने वाले नोड को 'जवाब को दबाएं' फ़्लैग चालू होने पर, रिपोर्ट डेटा की कार्रवाई मिलने के बाद, जानकारी ऐक्सेस करने/रिपोर्ट करने की क्वेरी पूरी हो जाती है.
स्टेटस के जवाब की कार्रवाई में सिर्फ़ एक स्टेटस फ़ील्ड होता है. इससे यह पुष्टि होती है कि कार्रवाई पूरी हो गई है या गड़बड़ी का कोड दिखता है.
जानकारी ऐक्सेस करने से जुड़ी पाबंदियां
जानकारी ऐक्सेस करने के अनुरोध की कार्रवाई और रिपोर्ट डेटा की कार्रवाई, Unicast-के लिए होती हैं. इसके अलावा, इन अनुरोधों के पाथ, नोड के ग्रुप को टारगेट नहीं कर सकते.
स्टेटस के जवाब की कार्रवाई, सिर्फ़ Unicast-के लिए होती है. इसे ग्रुपकास्ट के जवाब के तौर पर जनरेट नहीं किया जा सकता.
सदस्यता लेने का लेन-देन
सदस्यता लेने के अनुरोध की कार्रवाई
दिशा: अनुरोध करने वाला नोड -> टारगेट नोड
अनुरोध करने वाला नोड, जानकारी ऐक्सेस करने के एक अनुरोध की कार्रवाई के अलावा, किसी एट्रिब्यूट या इवेंट के समय-समय पर मिलने वाले अपडेट के लिए भी सदस्यता ले सकता है. इसलिए, सदस्यता लेने के लेन-देन के तहत, समय-समय पर मिलने वाले डेटा अपडेट के नतीजे के तौर पर, रिपोर्ट डेटा की वही कार्रवाई जनरेट की जा सकती है.
सदस्यता लेने के इंटरैक्शन से, दो नोड के बीच एक रिश्ता बनता है. इसमें टारगेट नोड, अनुरोध करने वाले नोड को समय-समय पर रिपोर्ट डेटा की कार्रवाइयां जनरेट करता है. अनुरोध करने वाला नोड, सदस्य होता है और टारगेट नोड, पब्लिशर होता है.
सदस्यता लेने के अनुरोध की कार्रवाई में ये चीज़ें शामिल होती हैं:
- कम से कम इंटरवल: रिपोर्ट के बीच का कम से कम इंटरवल.
- ज़्यादा से ज़्यादा इंटरवल: रिपोर्ट के बीच का ज़्यादा से ज़्यादा इंटरवल.
- एट्रिब्यूट की रिपोर्ट: रिपोर्ट किए गए शून्य या उससे ज़्यादा एट्रिब्यूट की सूची. ये एट्रिब्यूट, जानकारी ऐक्सेस करने के अनुरोध की कार्रवाई में अनुरोध किए गए थे.
- इवेंट की रिपोर्ट: रिपोर्ट किए गए शून्य या उससे ज़्यादा इवेंट की सूची.
सदस्यता लेने के अनुरोध के बाद, टारगेट नोड, अनुरोध करने वाले नोड को रिपोर्ट डेटा की कार्रवाई के साथ जवाब देता है. इसमें रिपोर्ट किए गए डेटा का पहला बैच शामिल होता है: पब्लिश किया गया डेटा.
इसके बाद, अनुरोध करने वाला नोड, टारगेट नोड को भेजे गए स्टेटस के जवाब की कार्रवाई के साथ, रिपोर्ट डेटा की कार्रवाई की पुष्टि करता है. टारगेट नोड को स्टेटस के जवाब की कार्रवाई मिलने के बाद, वह सदस्यता लेने के जवाब की कार्रवाई भेजता है. इस कार्रवाई में, यह रिपोर्ट किया जाता है कि कोई गड़बड़ी नहीं हुई है.
इसके बाद, टारगेट नोड, बातचीत के ज़रिए तय किए गए इंटरवल पर, समय-समय पर रिपोर्ट डेटा की कार्रवाई भेजेगा. साथ ही, अनुरोध करने वाला नोड, सदस्यता खत्म होने या रद्द होने तक उन कार्रवाइयों का जवाब देगा.
सदस्यता लेने के जवाब की कार्रवाई
दिशा: टारगेट नोड -> अनुरोध करने वाला नोड
यह सदस्यता लेने के लेन-देन की आखिरी कार्रवाई है. इससे प्रोसेस पूरी हो जाती है. इसमें ये चीज़ें शामिल हैं:
- सदस्यता आईडी: एक इंटिजर जो सदस्यता की पहचान करता है.
- कम से कम इंटरवल: रिपोर्ट के बीच का तय किया गया, आखिरी कम से कम इंटरवल.
- ज़्यादा से ज़्यादा इंटरवल: रिपोर्ट के बीच का तय किया गया, आखिरी ज़्यादा से ज़्यादा इंटरवल.
सदस्यता लेने से जुड़ी पाबंदियां
- सदस्यता लेने के अनुरोध की कार्रवाई और सदस्यता लेने के जवाब की कार्रवाई, सिर्फ़ Unicast-के लिए होती हैं.
- सदस्यता लेने के इंटरैक्शन में, सभी रिपोर्ट डेटा की कार्रवाइयों का सदस्यता आईडी एक ही होना चाहिए.
- अगर सदस्य को कार्रवाइयों के बीच तय किए गए ज़्यादा से ज़्यादा इंटरवल में, रिपोर्ट डेटा की कार्रवाई नहीं मिलती है, तो सदस्यता खत्म कर दी जाएगी.
- पिछले नियम के मुताबिक, पब्लिशर, समय-समय पर रिपोर्ट डेटा की कार्रवाइयां भेजना बंद करके, सदस्यता लेने के इंटरैक्शन को खत्म कर सकता है.
- सदस्य,
INACTIVE_SUBSCRIPTIONस्टेटस कोड के साथ, रिपोर्ट डेटा की कार्रवाई का जवाब देकर, सदस्यता लेने के इंटरैक्शन को खत्म कर सकता है.