चैनल मैनेजर

इस मॉड्यूल में चैनल मैनेजर के लिए फ़ंक्शन शामिल हैं.

खास जानकारी

चैनल मैनेजर की सुविधा (OPENTHREAD_CONFIG_CHANNEL_MANAGER_ENABLE) चालू होने पर, इस मॉड्यूल के फ़ंक्शन उपलब्ध होंगे. चैनल मैनेजर सिर्फ़ एफ़टीडी बिल्ड पर उपलब्ध है.

फ़ंक्शन

otChannelManagerGetAutoChannelSelectionEnabled(otInstance *aInstance)
bool
इससे पता चलता है कि अपने-आप चैनल चुनने की सुविधा चालू है या नहीं.
otChannelManagerGetAutoChannelSelectionInterval(otInstance *aInstance)
uint32_t
ऑटो-चैनल-चुनने की सुविधा के इस्तेमाल किए गए पीरियड (सेकंड में) को दिखाता है.
otChannelManagerGetCcaFailureRateThreshold(otInstance *aInstance)
uint16_t
सीसीए में गड़बड़ी की दर के थ्रेशोल्ड को हासिल करता है.
otChannelManagerGetDelay(otInstance *aInstance)
uint16_t
चैनल बदलने के लिए, चैनल मैनेजर की ओर से इस्तेमाल किए जाने वाले देरी (सेकंड में) को दिखाता है.
otChannelManagerGetFavoredChannels(otInstance *aInstance)
uint32_t
पसंदीदा चैनल मास्क पाएं.
otChannelManagerGetRequestedChannel(otInstance *aInstance)
uint8_t
otChannelManagerRequestChannelChange() पर किए गए आखिरी कॉल से चैनल को ट्रांसफ़र किया जाता है
otChannelManagerGetSupportedChannels(otInstance *aInstance)
uint32_t
Google Meet के साथ काम करता है.
otChannelManagerRequestChannelChange(otInstance *aInstance, uint8_t aChannel)
void
Thread नेटवर्क के चैनल में बदलाव का अनुरोध करता है.
otChannelManagerRequestChannelSelect(otInstance *aInstance, bool aSkipQualityCheck)
ऐसे अनुरोध जो ChannelManager एक नए चैनल की जांच करते हैं और उसे चुनते हैं और चैनल में बदलाव करना शुरू करते हैं.
otChannelManagerSetAutoChannelSelectionEnabled(otInstance *aInstance, bool aEnabled)
void
अपने-आप चैनल चुनने की सुविधा को चालू या बंद करता है.
otChannelManagerSetAutoChannelSelectionInterval(otInstance *aInstance, uint32_t aInterval)
ऑटो-चैनल-चुनने की सुविधा में इस्तेमाल होने वाला पीरियड इंटरवल (सेकंड में) सेट करता है.
otChannelManagerSetCcaFailureRateThreshold(otInstance *aInstance, uint16_t aThreshold)
void
इसकी मदद से, CCA लागू न होने की दर का थ्रेशोल्ड सेट किया जाता है.
otChannelManagerSetDelay(otInstance *aInstance, uint16_t aDelay)
चैनल बदलने में लगा समय (सेकंड में) सेट करता है.
otChannelManagerSetFavoredChannels(otInstance *aInstance, uint32_t aChannelMask)
void
पसंदीदा चैनल मास्क सेट करता है.
otChannelManagerSetSupportedChannels(otInstance *aInstance, uint32_t aChannelMask)
void
चैनल के लिए मास्क को सेट करता है.

फ़ंक्शन

otChannelManagerGetAutoChannelSelectionचालू

bool otChannelManagerGetAutoChannelSelectionEnabled(
  otInstance *aInstance
)

इससे पता चलता है कि अपने-आप चैनल चुनने की सुविधा चालू है या नहीं.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस का पॉइंटर.
लौटाए गए सामान
अगर चालू हो, तो TRUE, बंद होने पर FALSE.

otChannelManagerGetAutoChannelSelectionInterval

uint32_t otChannelManagerGetAutoChannelSelectionInterval(
  otInstance *aInstance
)

ऑटो-चैनल-चुनने की सुविधा के इस्तेमाल किए गए पीरियड (सेकंड में) को दिखाता है.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस का पॉइंटर.
लौटाए गए सामान
सेकंड में अंतराल.

otChannelManagerGetcopyaFailureRateThreshold

uint16_t otChannelManagerGetCcaFailureRateThreshold(
  otInstance *aInstance
)

सीसीए में गड़बड़ी की दर के थ्रेशोल्ड को हासिल करता है.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस का पॉइंटर.
लौटाए गए सामान
सीसीए में गड़बड़ी की दर का थ्रेशोल्ड. मान 0 को 0% पर मैप करता है और 0xffff को 100% पर मैप करता है.

otChannelManagerGetDelay

uint16_t otChannelManagerGetDelay(
  otInstance *aInstance
)

चैनल बदलने के लिए, चैनल मैनेजर की ओर से इस्तेमाल किए जाने वाले देरी (सेकंड में) को दिखाता है.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस का पॉइंटर.
लौटाए गए सामान
चैनल बदलने में लगा समय (सेकंड में).

otChannelManagerGetFavoredChannels

uint32_t otChannelManagerGetFavoredChannels(
  otInstance *aInstance
)

पसंदीदा चैनल मास्क पाएं.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस का पॉइंटर.
लौटाए गए सामान
पसंदीदा चैनलों को बेहतरीन माना जाता है.

otChannelManagerGetRequestChannel

uint8_t otChannelManagerGetRequestedChannel(
  otInstance *aInstance
)

otChannelManagerRequestChannelChange() पर किए गए आखिरी कॉल से चैनल को ट्रांसफ़र किया जाता है

ब्यौरा
लौटाए गए सामान
अगर चैनल बदलने का अभी तक कोई अनुरोध नहीं किया गया है, तो आखिरी बार अनुरोध किया गया चैनल या शून्य.

otChannelManagerGetSupportChannels

uint32_t otChannelManagerGetSupportedChannels(
  otInstance *aInstance
)

Google Meet के साथ काम करता है.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस का पॉइंटर.
लौटाए गए सामान
काम करने वाले चैनल बिट-मास्क के तौर पर.

otChannelManagerRequestChannelChange

void otChannelManagerRequestChannelChange(
  otInstance *aInstance,
  uint8_t aChannel
)

Thread नेटवर्क के चैनल में बदलाव का अनुरोध करता है.

कोई खास देरी होने के बाद, नेटवर्क किसी दिए गए चैनल पर स्विच कर लेता है (otChannelManagerSetDelay() देखें). चैनल बदलने का काम, ऑपरेशनल डेटासेट की मंज़ूरी को अपडेट करके किया जाता है.

अगर ऐसा किया जाता है, तो पहले किए गए अनुरोध को रद्द कर दिया जाएगा. साथ ही, चैनल में बदलाव का अनुरोध रद्द हो जाएगा.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस का पॉइंटर.
[in] aChannel
Thread नेटवर्क के लिए नया चैनल.

otChannelManagerRequestChannelSelect

otError otChannelManagerRequestChannelSelect(
  otInstance *aInstance,
  bool aSkipQualityCheck
)

ऐसे अनुरोध जो ChannelManager एक नए चैनल की जांच करते हैं और उसे चुनते हैं और चैनल में बदलाव करना शुरू करते हैं.

otChannelManagerRequestChannelChange() में ऐसा होता है जहां चैनल को पैरामीटर के तौर पर दिया जाना चाहिए. यह फ़ंक्शन, ChannelManager को खुद ही चैनल चुनने के लिए कहता है. यह इकट्ठा की गई चैनल की क्वालिटी से जुड़ी जानकारी पर आधारित होता है.

कॉल आने के बाद, चैनल मैनेजर ये तीन चरण पूरे करेगा:

1) ChannelManager यह तय करता है कि चैनल बदलने से मदद मिलेगी या नहीं. अगर aSkipQualityCheck को 'सही है' पर सेट किया जाता है और क्वालिटी जांच की प्रक्रिया को छोड़कर आगे बढ़ा जाता है, तो यह जांच छोड़ी जा सकती है. इस चरण में, डिवाइस पर इकट्ठा किए गए लिंक की क्वालिटी मेट्रिक का इस्तेमाल किया जाता है. जैसे, सीसीए पूरा नहीं होने की दर, हर फ़्रेम में कॉन्टेंट के फ़्रेम और मैसेज की गड़बड़ी की दर वगैरह. इससे यह पता चलता है कि चैनल की मौजूदा क्वालिटी उस लेवल पर है जो चैनल में बदलाव को सही ठहराता है.

2) अगर पहला चरण पास हो जाता है, तो ChannelManager एक बेहतर चैनल चुनता है. इसमें ChannelMonitor मॉड्यूल से इकट्ठा किए गए चैनल की क्वालिटी का डेटा इस्तेमाल होता है. इस चरण में इस्तेमाल किए जा सकने वाले और पसंदीदा चैनलों का इस्तेमाल किया जाता है. (otChannelManagerSetsupportedChannels() और otChannelManagerSetFavoredChannels() देखें).

3) अगर नया चुना गया चैनल मौजूदा चैनल से अलग है, तो ChannelManager चैनल में बदलाव करने की प्रोसेस का अनुरोध करता है/शुरू करता है (अंदरूनी तौर पर RequestChannelChange() का अनुरोध करना).

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस का पॉइंटर.
[in] aSkipQualityCheck
यह बताता है कि क्वालिटी जांच (पहले चरण) को छोड़ा जाना चाहिए या नहीं.
लौटाने की वैल्यू
OT_ERROR_NONE
चैनल चुना गया.
OT_ERROR_NOT_FOUND
इस्तेमाल किया जा सकने वाला चैनल मास्क खाली है, इसलिए कोई चैनल नहीं चुना जा सका.

otChannelManagerSetAutoChannelSelectionEnabled

void otChannelManagerSetAutoChannelSelectionEnabled(
  otInstance *aInstance,
  bool aEnabled
)

अपने-आप चैनल चुनने की सुविधा को चालू या बंद करता है.

इस नीति के चालू होने पर, ChannelManager समय-समय पर RequestChannelSelect(false) का इस्तेमाल करेगा. समयावधि को SetAutoChannelSelectionInterval() सेट कर सकता है.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस का पॉइंटर.
[in] aEnabled
इससे पता चलता है कि इस सुविधा को चालू करना है या बंद करना है.

otChannelManagerSetAutoChannelSelectionInterval

otError otChannelManagerSetAutoChannelSelectionInterval(
  otInstance *aInstance,
  uint32_t aInterval
)

ऑटो-चैनल-चुनने की सुविधा में इस्तेमाल होने वाला पीरियड इंटरवल (सेकंड में) सेट करता है.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस का पॉइंटर.
[in] aInterval
सेकंड में अंतराल.
लौटाने की वैल्यू
OT_ERROR_NONE
इंटरवल सेट किया गया.
OT_ERROR_INVALID_ARGS
aInterval मान्य नहीं है (शून्य).

otChannelManagerSetcopyaFailureRateThreshold

void otChannelManagerSetCcaFailureRateThreshold(
  otInstance *aInstance,
  uint16_t aThreshold
)

इसकी मदद से, CCA लागू न होने की दर का थ्रेशोल्ड सेट किया जाता है.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस का पॉइंटर.
[in] aThreshold
सीसीए में पूरे न होने की दर का थ्रेशोल्ड. मान 0 को 0% पर मैप करता है और 0xffff को 100% पर मैप करता है.

otChannelManagerSetDelay

otError otChannelManagerSetDelay(
  otInstance *aInstance,
  uint16_t aDelay
)

चैनल बदलने में लगा समय (सेकंड में) सेट करता है.

देरी तब ज़्यादा होती है, जब थ्रेड नेटवर्क में स्लीपी-एंड डिवाइसों का इस्तेमाल हो रहा हो.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस का पॉइंटर.
[in] aDelay
सेकंड में देरी.
लौटाने की वैल्यू
OT_ERROR_NONE
देरी अपडेट हो गई.
OT_ERROR_INVALID_ARGS
दी गई देरी aDelay बहुत कम है.

otChannelManagerSetFavoredChannels

void otChannelManagerSetFavoredChannels(
  otInstance *aInstance,
  uint32_t aChannelMask
)

पसंदीदा चैनल मास्क सेट करता है.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस का पॉइंटर.
[in] aChannelMask
चैनल मास्क.

otChannelManagerSetsupportedChannels

void otChannelManagerSetSupportedChannels(
  otInstance *aInstance,
  uint32_t aChannelMask
)

चैनल के लिए मास्क को सेट करता है.

ब्यौरा
पैरामीटर
[in] aInstance
OpenThread इंस्टेंस का पॉइंटर.
[in] aChannelMask
चैनल मास्क.

रिसॉर्स

OpenThread एपीआई के संदर्भ विषय, सोर्स कोड से आते हैं और GitHub पर उपलब्ध होते हैं. ज़्यादा जानकारी पाने या हमारे दस्तावेज़ में योगदान देने के लिए, संसाधन देखें.