מנהל ערוץ

המודול הזה כולל פונקציות של Campaign Manager.

סיכום

הפונקציות במודול הזה זמינות כשמפעילים את התכונה 'מנהל הערוץ' (OPENTHREAD_CONFIG_CHANNEL_MANAGER_ENABLE). מנהל הערוצים זמין רק ב-FTD.

פונקציות

otChannelManagerGetAutoChannelSelectionEnabled(otInstance *aInstance)
bool
העמודה הזו קובעת אם הפונקציונליות של בחירת הערוצים האוטומטית תופעל או לא.
otChannelManagerGetAutoChannelSelectionInterval(otInstance *aInstance)
uint32_t
הפונקציה מציגה את מרווח הזמן (בשניות) המשמש בפונקציונליות של בחירת הערוצים האוטומטית.
otChannelManagerGetCcaFailureRateThreshold(otInstance *aInstance)
uint16_t
קבלת הסף של שיעור הכשל ב-CCA.
otChannelManagerGetDelay(otInstance *aInstance)
uint16_t
מקבל את ההשהיה (בשניות) ששימש את מנהל הערוץ לשינוי ערוץ.
otChannelManagerGetFavoredChannels(otInstance *aInstance)
uint32_t
מקבלים את מסיכת הערוץ המועדפת.
otChannelManagerGetRequestedChannel(otInstance *aInstance)
uint8_t
מעבר לערוץ מהשיחה האחרונה שבוצעה בהצלחה למספר otChannelManagerRequestChannelChange()
otChannelManagerGetSupportedChannels(otInstance *aInstance)
uint32_t
רכישת מסכה נתמכת של ערוץ.
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
הגדרת מסכה נתמכת של ערוץ.

פונקציות

otChannelManagerGetAutoChannelSelectionEnabled

bool otChannelManagerGetAutoChannelSelectionEnabled(
  otInstance *aInstance
)

העמודה הזו קובעת אם הפונקציונליות של בחירת הערוצים האוטומטית תופעל או לא.

פרטים
פרמטרים
[in] aInstance
מצביע למופע של OpenThread.
החזרות
TRUE אם מופעל, FALSE אם מושבת.

otChannelManagerGetAutoChannelSelectionInterval

uint32_t otChannelManagerGetAutoChannelSelectionInterval(
  otInstance *aInstance
)

הפונקציה מציגה את מרווח הזמן (בשניות) המשמש בפונקציונליות של בחירת הערוצים האוטומטית.

פרטים
פרמטרים
[in] aInstance
מצביע למופע של OpenThread.
החזרות
מרווח בשניות.

סף otChannelManagerGetCcaFailureRate

uint16_t otChannelManagerGetCcaFailureRateThreshold(
  otInstance *aInstance
)

קבלת הסף של שיעור הכשל ב-CCA.

פרטים
פרמטרים
[in] aInstance
מצביע למופע של OpenThread.
החזרות
סף שיעור הכשל ב-CCA. ערך של 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
)

רכישת מסכה נתמכת של ערוץ.

פרטים
פרמטרים
[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 מוגדרת כ-True (אילוץ בחירת הערוץ תתבצע ודילוג על בדיקת האיכות). בשלב הזה אנחנו משתמשים במדדי איכות הקישורים שנאספו במכשיר (למשל, שיעור שגיאות CCA, שיעורי שגיאות של פריימים והודעות ביחס לשכן וכו') כדי לקבוע אם איכות הערוץ הנוכחית היא ברמה שמצדיקה שינוי בערוץ.

2) אם השלב הראשון יעבור, ChannelManager יבחר בערוץ שיכול להיות טוב יותר. נעשה שימוש בנתוני איכות הערוץ שנאספו לפי המודול ChannelMonitor. הערוצים המועדפים והמועדפים משמשים בשלב זה. (ראו otChannelManagerSetSupportChannels() ו-otChannelManagerSetFavoredChannels()).

3) אם הערוץ החדש שנבחר שונה מהערוץ הנוכחי, ChannelManager יבקש/יתחיל את תהליך שינוי הערוץ (הפעלה פנימית של RequestChannelChange()).

פרטים
פרמטרים
[in] aInstance
מצביע למופע של OpenThread.
[in] aSkipQualityCheck
מציינת אם יש לדלג על בדיקת האיכות (שלב 1).
ערכי החזרה
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 לא תקין (אפס).

סף otChannelManagerSetCcaFailureRate

void otChannelManagerSetCcaFailureRateThreshold(
  otInstance *aInstance,
  uint16_t aThreshold
)

הגדרת סף לשיעור כשל ב-CCA.

פרטים
פרמטרים
[in] aInstance
מצביע למופע של OpenThread.
[in] aThreshold
סף של שיעור כשלי CCA. ערך של 0 ממפה ל-0% ול-0xffff ממופה ל-100%.

otChannelManagerSetDelay

otError otChannelManagerSetDelay(
  otInstance *aInstance,
  uint16_t aDelay
)

מגדירה את ההשהיה (בשניות) המשמשת לשינוי ערוץ.

רצוי שהעיכוב יהיה ארוך יותר ממרווח הזמן המקסימלי של סקר הנתונים המשמש את כל המכשירים המחוברים למצב שינה ברשת ה-Thread.

פרטים
פרמטרים
[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
מסכה של ערוץ

otChannelManagerSetSupportChannels

void otChannelManagerSetSupportedChannels(
  otInstance *aInstance,
  uint32_t aChannelMask
)

הגדרת מסכה נתמכת של ערוץ.

פרטים
פרמטרים
[in] aInstance
מצביע למופע של OpenThread.
[in] aChannelMask
מסכה של ערוץ

משאבים

הנושאים של קובצי העזר של OpenThread API מגיעים מקוד המקור, והם זמינים ב-GitHub. למידע נוסף או כדי לתרום למסמכי התיעוד שלנו, יש לעיין בקטע משאבים.