שליחת הודעה

המודול הזה כולל פונקציות שמטפלות במאגרי נתונים של OpenThread.

סיכום

מיספרים

otMessagePriority{
  OT_MESSAGE_PRIORITY_LOW = 0,
  OT_MESSAGE_PRIORITY_NORMAL = 1,
  OT_MESSAGE_PRIORITY_HIGH = 2
}
טיפוסים בני מנייה (enum)
ספירה זו מגדירה את רמות העדיפות של הודעות ב-OpenThread.

סוגי Offdef

otBufferInfo typedef
struct otBufferInfo
המבנה הזה מייצג את פרטי האחסון הזמני עבור תורים שונים המשמשים בערימת OpenThread.
otMessage typedef
struct otMessage
סוג זה הוא ייצוג אטום של מאגר הודעות של OpenThread.
otMessagePriority typedef
ספירה זו מגדירה את רמות העדיפות של הודעות ב-OpenThread.
otMessageQueueInfo typedef
המבנה הזה מייצג מידע על תור הודעות.
otMessageSettings typedef
המבנה הזה מייצג הגדרות של הודעות.

פונקציות

otMessageAppend(otMessage *aMessage, const void *aBuf, uint16_t aLength)
צירוף בייטים להודעה.
otMessageFree(otMessage *aMessage)
void
אין צורך במאגר נתונים זמני על ההודעות.
otMessageGetBufferInfo(otInstance *aInstance, otBufferInfo *aBufferInfo)
void
מידע על מאגר ההודעות.
otMessageGetLength(const otMessage *aMessage)
uint16_t
אורך ההודעה בבייטים.
otMessageGetOffset(const otMessage *aMessage)
uint16_t
קיזוז ההודעה בבייטים.
otMessageGetRss(const otMessage *aMessage)
int8_t
הפונקציה הזו מחזירה את ה-RSS הממוצע (עוצמת האות הנכנסת) שמשויך להודעה.
otMessageIsLinkSecurityEnabled(const otMessage *aMessage)
bool
הפונקציה הזו מציינת אם אבטחת קישור מופעלת עבור ההודעה.
otMessageQueueDequeue(otMessageQueue *aQueue, otMessage *aMessage)
void
הפונקציה הזו מסירה הודעה מתור ההודעות הנתון.
otMessageQueueEnqueue(otMessageQueue *aQueue, otMessage *aMessage)
void
הפונקציה הזו מוסיפה הודעה לסוף של תור ההודעות הנתון.
otMessageQueueEnqueueAtHead(otMessageQueue *aQueue, otMessage *aMessage)
void
הפונקציה הזו מוסיפה הודעה בחלק העליון/הבא של תור ההודעות הנתון.
otMessageQueueGetHead(otMessageQueue *aQueue)
הפונקציה הזו מחזירה מצביע להודעה בראש התור.
otMessageQueueGetNext(otMessageQueue *aQueue, const otMessage *aMessage)
הפונקציה הזו מחזירה מצביע להודעה הבאה בתור על ידי חזרה לאחור (מראש לזנב).
otMessageQueueInit(otMessageQueue *aQueue)
void
הפעלה של 'הבאים בתור' להודעה.
otMessageRead(const otMessage *aMessage, uint16_t aOffset, void *aBuf, uint16_t aLength)
uint16_t
קריאת בייטים מהודעה.
otMessageResetBufferInfo(otInstance *aInstance)
void
איפוס מונה המידע של מאגר הנתונים הזמני, שעוקב אחר מאגרי הנתונים הזמניים הנמצאים בשימוש בו-זמנית.
otMessageSetDirectTransmission(otMessage *aMessage, bool aEnabled)
void
הפונקציה הזו מגדירה/מאלצת את העברת ההודעה באמצעות העברה ישירה.
otMessageSetLength(otMessage *aMessage, uint16_t aLength)
הגדרת אורך ההודעה בבייטים.
otMessageSetOffset(otMessage *aMessage, uint16_t aOffset)
void
הגדרת קיזוז ההודעה בבייטים.
otMessageWrite(otMessage *aMessage, uint16_t aOffset, const void *aBuf, uint16_t aLength)
int
כתיבת בייטים בהודעה.

מבנים

otBufferInfo

המבנה הזה מייצג את פרטי האחסון הזמני עבור תורים שונים המשמשים בערימת OpenThread.

otMessageQueue

המבנה הזה מייצג תור הודעות של OpenThread.

otMessageQueueInfo

המבנה הזה מייצג מידע על תור הודעות.

otMessageSettings

המבנה הזה מייצג הגדרות של הודעות.

מיספרים

otMessageעדיפות

 otMessagePriority

ספירה זו מגדירה את רמות העדיפות של הודעות ב-OpenThread.

נכסים
OT_MESSAGE_PRIORITY_HIGH

רמת עדיפות גבוהה.

OT_MESSAGE_PRIORITY_LOW

רמת עדיפות נמוכה.

OT_MESSAGE_PRIORITY_NORMAL

רמת עדיפות רגילה.

סוגי Offdef

OTBufferInfo

struct otBufferInfo otBufferInfo

המבנה הזה מייצג את פרטי האחסון הזמני עבור תורים שונים המשמשים בערימת OpenThread.

otMessage

struct otMessage otMessage

סוג זה הוא ייצוג אטום של מאגר הודעות של OpenThread.

otMessageעדיפות

enum otMessagePriority otMessagePriority

ספירה זו מגדירה את רמות העדיפות של הודעות ב-OpenThread.

otMessageQueueInfo

struct otMessageQueueInfo otMessageQueueInfo

המבנה הזה מייצג מידע על תור הודעות.

otMessageSettings

struct otMessageSettings otMessageSettings

המבנה הזה מייצג הגדרות של הודעות.

פונקציות

otMessageAppend

otError otMessageAppend(
  otMessage *aMessage,
  const void *aBuf,
  uint16_t aLength
)

צירוף בייטים להודעה.

פרטים
פרמטרים
[in] aMessage
מצביע למאגר נתונים של הודעות.
[in] aBuf
מצביע אל הנתונים לצירוף.
[in] aLength
מספר הבייטים לצירוף.
ערכי החזרה
OT_ERROR_NONE
ההודעה צורפה בהצלחה
OT_ERROR_NO_BUFS
אין מאגרי נתונים זמניים להרחבת ההודעה.
כמו כן, אפשר לעיין במאמרים:
otMessageFree
otMessageGetLength
otMessageSetLength
otMessageGetOffset
otMessageSetOffset
otMessageRead
otMessageWrite

otMessageFree

void otMessageFree(
  otMessage *aMessage
)

אין צורך במאגר נתונים זמני על ההודעות.

פרטים
פרמטרים
[in] aMessage
מצביע למאגר נתונים של הודעות.
כמו כן, כדאי לעיין במאמרים הבאים:
otMessageAppend
otMessageGetLength
otMessageSetLength
otMessageGetOffset
otMessageSetOffset
otMessageRead
otMessageWrite

otMessageGetBufferInfo

void otMessageGetBufferInfo(
  otInstance *aInstance,
  otBufferInfo *aBufferInfo
)

מידע על מאגר ההודעות.

פרטים
פרמטרים
[in] aInstance
מצביע למופע של OpenThread.
[out] aBufferInfo
מצביע שבו כתוב מידע על אחסון זמני של ההודעה.

otMessageGetLength

uint16_t otMessageGetLength(
  const otMessage *aMessage
)

אורך ההודעה בבייטים.

פרטים
פרמטרים
[in] aMessage
מצביע למאגר נתונים של הודעות.
החזרות
אורך ההודעה בבייטים.
כמו כן, כדאי לעיין במאמרים הבאים:
otMessageFree
otMessageAppend
otMessageSetLength
otMessageGetOffset
otMessageSetOffset
otMessageRead
otMessageWrite
אורך

otMessageGetOffset

uint16_t otMessageGetOffset(
  const otMessage *aMessage
)

קיזוז ההודעה בבייטים.

פרטים
פרמטרים
[in] aMessage
מצביע למאגר נתונים של הודעות.
החזרות
הערך של קיזוז ההודעה.
כמו כן, אפשר לעיין במאמרים:
otMessageFree
otMessageAppend
otMessageGetLength
otMessageSetLength
otMessageSetOffset
otMessageRead
otMessageWrite

otMessageGetRss

int8_t otMessageGetRss(
  const otMessage *aMessage
)

הפונקציה הזו מחזירה את ה-RSS הממוצע (עוצמת האות הנכנסת) שמשויך להודעה.

פרטים
החזרות
ערך RSS ממוצע (ב-dBm) או OT_RECORD_RSSI_INVALID אם אין RSS ממוצע זמין.

otMessageIsLinkSecurityEnabled

bool otMessageIsLinkSecurityEnabled(
  const otMessage *aMessage
)

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

פרטים
פרמטרים
[in] aMessage
מצביע למאגר נתונים של הודעות.
ערכי החזרה
TRUE
אם אבטחת הקישורים מופעלת.
FALSE
אם אבטחת הקישורים לא מופעלת.

otMessageQueueDequeue

void otMessageQueueDequeue(
  otMessageQueue *aQueue,
  otMessage *aMessage
)

הפונקציה הזו מסירה הודעה מתור ההודעות הנתון.

פרטים
פרמטרים
[in] aQueue
מצביע אל תור ההודעות.
[in] aMessage
ההודעה שיש להסיר.

otMessageQueueEnqueue

void otMessageQueueEnqueue(
  otMessageQueue *aQueue,
  otMessage *aMessage
)

הפונקציה הזו מוסיפה הודעה לסוף של תור ההודעות הנתון.

פרטים
פרמטרים
[in] aQueue
מצביע אל תור ההודעות.
[in] aMessage
ההודעה שרוצים להוסיף.

otMessageQueueEnqueueAtHead

void otMessageQueueEnqueueAtHead(
  otMessageQueue *aQueue,
  otMessage *aMessage
)

הפונקציה הזו מוסיפה הודעה בחלק העליון/הבא של תור ההודעות הנתון.

פרטים
פרמטרים
[in] aQueue
מצביע אל תור ההודעות.
[in] aMessage
ההודעה שרוצים להוסיף.

otMessageQueueGetHead

otMessage * otMessageQueueGetHead(
  otMessageQueue *aQueue
)

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

פרטים
פרמטרים
[in] aQueue
מצביע אל תור הודעות.
החזרות
מצביע להודעה בראש התור או NULL אם התור ריק.

otMessageQueueGetNext

otMessage * otMessageQueueGetNext(
  otMessageQueue *aQueue,
  const otMessage *aMessage
)

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

פרטים
פרמטרים
[in] aQueue
מצביע אל תור הודעות.
[in] aMessage
מצביע למאגר הנתונים הנוכחי.
החזרות
אזכור להודעה הבאה בתור אחרי aMessage או NULL אם aMessage is the tail of queue. NULL is returned ifaMessageis not in the queueaQueue'.

otMessageQueueInit

void otMessageQueueInit(
  otMessageQueue *aQueue
)

הפעלה של 'הבאים בתור' להודעה.

יש לקרוא לפונקציה הזו פעם אחת בלבד עבור מופע otMessageQueue לפני כל פונקציית otMessageQueue אחרת. ההתנהגות לא מוגדרת אם נעשה שימוש בממשקי API אחרים של 'הבאים בתור' עם otMessageQueue לפני האתחול או אם הם מופעלים יותר מפעם אחת.

פרטים
פרמטרים
[in] aQueue
מצביע אל תור הודעות.

otMessageRead

uint16_t otMessageRead(
  const otMessage *aMessage,
  uint16_t aOffset,
  void *aBuf,
  uint16_t aLength
)

קריאת בייטים מהודעה.

פרטים
פרמטרים
[in] aMessage
מצביע למאגר נתונים של הודעות.
[in] aOffset
היסט בבייטים.
[in] aBuf
מצביע למאגר אחסון שהקריאה אליו מתבצעת באמצעות בייטים.
[in] aLength
מספר הבייטים שיש לקרוא.
החזרות
מספר הבייטים שנקראו.
כמו כן, אפשר לעיין במאמרים:
otMessageFree
otMessageAppend
otMessageGetLength
otMessageSetLength
otMessageGetOffset
otMessageSetOffset
otMessageWrite

otMessageResetBufferInfo

void otMessageResetBufferInfo(
  otInstance *aInstance
)

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

הפעולה הזו תגרום לאיפוס של mMaxUsedBuffers ב-otBufferInfo.

פרטים
פרמטרים
[in] aInstance
מצביע למופע של OpenThread.

otMessageSetDirectTransmission

void otMessageSetDirectTransmission(
  otMessage *aMessage,
  bool aEnabled
)

הפונקציה הזו מגדירה/מאלצת את העברת ההודעה באמצעות העברה ישירה.

הגדרת ברירת המחדל להודעה חדשה היא false.

פרטים
פרמטרים
[in] aMessage
מצביע למאגר נתונים של הודעות.
[in] aEnabled
אם true, ההודעה מאולצת להשתמש בהעברה ישירה. אם ההודעה היא false, התהליך תקין.

OTMessageSetLength

otError otMessageSetLength(
  otMessage *aMessage,
  uint16_t aLength
)

הגדרת אורך ההודעה בבייטים.

פרטים
פרמטרים
[in] aMessage
מצביע למאגר נתונים של הודעות.
[in] aLength
אורך בבייטים.
ערכי החזרה
OT_ERROR_NONE
אורך ההודעה הוגדר בהצלחה.
OT_ERROR_NO_BUFS
אין מאגרי נתונים זמניים להרחבת ההודעה.
כמו כן, כדאי לעיין במאמרים הבאים:
otMessageFree
otMessageAppend
otMessageGetLength
otMessageGetOffset
otMessageSetOffset
otMessageRead
otMessageWrite

otMessageSetOffset

void otMessageSetOffset(
  otMessage *aMessage,
  uint16_t aOffset
)

הגדרת קיזוז ההודעה בבייטים.

פרטים
פרמטרים
[in] aMessage
מצביע למאגר נתונים של הודעות.
[in] aOffset
היסט בבייטים.
כמו כן, אפשר לעיין במאמרים:
otMessageFree
otMessageAppend
otMessageGetLength
otMessageSetLength
otMessageGetOffset
otMessageRead
otMessageWrite

otMessageWrite

int otMessageWrite(
  otMessage *aMessage,
  uint16_t aOffset,
  const void *aBuf,
  uint16_t aLength
)

כתיבת בייטים בהודעה.

פרטים
פרמטרים
[in] aMessage
מצביע למאגר נתונים של הודעות.
[in] aOffset
היסט בבייטים.
[in] aBuf
מצביע למאגר נתונים שכתובים עליו בייטים.
[in] aLength
מספר הבייטים שיש לכתוב.
החזרות
מספר הבייטים שנכתבו.
כמו כן, אפשר לעיין במאמרים:
otMessageFree
otMessageAppend
otMessageGetLength
otMessageSetLength
otMessageGetOffset
otMessageSetOffset
otMessageRead

משאבים

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