बच्चों के लिए निगरानी

GitHub पर सोर्स देखें

स्लीपी एंड डिवाइस (एसईडी) के लिए, ऊर्जा की बचत करने वाला तरीका उपलब्ध कराने के लिए, चाइल्ड सुपरविज़न की सुविधा चालू करें. इससे यह पुष्टि की जा सकेगी कि वह अब भी अपने पैरंट राउटर (पैरंट राउटर की चाइल्ड टेबल में शामिल) से कनेक्ट है.

थ्रेड स्पेसिफ़िकेशन के मुताबिक, एसईडी को समय-समय पर अपने पैरंट राउटर के साथ एमएलई चाइल्ड अपडेट अनुरोध और रिस्पॉन्स एक्सचेंज करना होता है, ताकि कनेक्टिविटी की पुष्टि की जा सके. बच्चों की निगरानी करने की सुविधा, एसईडी-राउटर कनेक्टिविटी की पुष्टि करने का एक अन्य तरीका है. इस सुविधा की मदद से, मैसेज भेजने का काम, कम बैटरी वाले एसईडी के बजाय पैरंट राऊटर पर किया जाता है.

यह कैसे काम करता है

यह सुविधा दो तरीकों से काम करती है. यह इस बात पर निर्भर करता है कि नोड किस तरह का है और कौनसे पैरामीटर कॉन्फ़िगर किए गए हैं:

माता-पिता के लिए

अगर कोई पैरंट राउटर, OPENTHREAD_CONFIG_CHILD_SUPERVISION_INTERVAL के अंदर अपने चाइल्ड एसईडी को ट्रांसमिट नहीं करता है, तो पैरंट राउटर, चाइल्ड एसईडी के लिए, बच्चों की निगरानी करने से जुड़ा मैसेज भेजता है. बच्चों की निगरानी वाला मैसेज एक MAC फ़्रेम होता है, जिसमें यह जानकारी होती है:

  • एसईडी का RLOC16, जो मैक हेडर में डेस्टिनेशन के तौर पर होता है.
  • खाली पेलोड.

डिफ़ॉल्ट रूप से, MAC हेडर में 802.15.4 ACK अनुरोध होता है. बच्चे के खाते पर निगरानी की सुविधा के मैसेज में, इस अनुरोध को बंद करने के लिए, OPENTHREAD_CONFIG_CHILD_SUPERVISION_MSG_NO_ACK_REQUEST पैरामीटर को 1 पर सेट करें.

बच्चे पर

अगर कोई एसईडी, OPENTHREAD_CONFIG_CHILD_SUPERVISION_CHECK_TIMEOUT के अंदर अपने पैरंट राऊटर से कोई मैसेज नहीं पाता है, तो वह यह मान लेता है कि वह पैरंट राऊटर से कनेक्ट नहीं है. इसके बाद, वह पैरंट राऊटर से फिर से कनेक्ट करने के लिए, एमएलई अटैच प्रोसेस शुरू करता है.

चालू करने का तरीका

यह सुविधा डिफ़ॉल्ट रूप से बंद रहती है.

define के हिसाब से

बच्चों की निगरानी की सुविधा चालू करने के लिए, OpenThread बनाने से पहले, openthread/src/core/config/child_supervision.h फ़ाइल में OPENTHREAD_CONFIG_CHILD_SUPERVISION_ENABLE को 1 के तौर पर तय करें:

#ifndef OPENTHREAD_CONFIG_CHILD_SUPERVISION_ENABLE
#define OPENTHREAD_CONFIG_CHILD_SUPERVISION_ENABLE 1
#endif

विकल्प के हिसाब से

इसके अलावा, OpenThread बनाते समय -DOT_CHILD_SUPERVISION=ON बिल्डर विकल्प का इस्तेमाल करें:

./script/build -DOT_CHILD_SUPERVISION=ON

पैरामीटर

इस सुविधा को पसंद के मुताबिक बनाने के लिए, openthread/src/core/config/child_supervision.h में इन पैरामीटर का इस्तेमाल करें:

पैरामीटर
OPENTHREAD_CONFIG_CHILD_SUPERVISION_INTERVAL
डिफ़ॉल्ट वैल्यू
129 सेकंड
जानकारी
इससे यह तय होता है कि माता-पिता, निगरानी के लिए कितने सेकंड का इंटरवल तय कर सकते हैं. माता-पिता की निगरानी की प्रोसेस बंद करने के लिए, वैल्यू को 0 पर सेट करें.
OPENTHREAD_CONFIG_SUPERVISION_CHECK_TIMEOUT
डिफ़ॉल्ट वैल्यू
190 सेकंड
जानकारी
यह सेटिंग, निगरानी की जांच के टाइम आउट इंटरवल को सेकंड में बताती है. इसका इस्तेमाल, चाइल्ड मोड में मौजूद डिवाइस करता है. बच्चे के खाते पर निगरानी की जांच की प्रोसेस बंद करने के लिए, वैल्यू को 0 पर सेट करें.
OPENTHREAD_CONFIG_SUPERVISION_MSG_NO_ACK_REQUEST
डिफ़ॉल्ट वैल्यू
0 (ACK अनुरोध चालू है)
जानकारी
निगरानी मैसेज के MAC हेडर में 802.15.4 ACK अनुरोध को हटाने/बंद करने के लिए, इसे 1 पर सेट करें.

एपीआई

निगरानी की सुविधा मैनेज करने और सीधे अपने OpenThread ऐप्लिकेशन में टाइम आउट इंटरवल देखने के लिए, Child Supervision API का इस्तेमाल करें.

सीएलआई

इस सुविधा से जुड़े कोई सीएलआई कमांड नहीं हैं.