پیام

این ماژول شامل توابعی است که بافرهای پیام OpenThread را دستکاری می کند.

خلاصه

شمارش ها

otMessageOrigin {
OT_MESSAGE_ORIGIN_THREAD_NETIF = 0,
OT_MESSAGE_ORIGIN_HOST_TRUSTED = 1,
OT_MESSAGE_ORIGIN_HOST_UNTRUSTED = 2
}
enum
منشاء پیام OpenThread را تعریف می کند.
otMessagePriority {
OT_MESSAGE_PRIORITY_LOW = 0,
OT_MESSAGE_PRIORITY_NORMAL = 1,
OT_MESSAGE_PRIORITY_HIGH = 2
}
enum
سطوح اولویت پیام OpenThread را تعریف می کند.

Typedefs

otBufferInfo typedef
struct otBufferInfo
اطلاعات بافر پیام را برای صف های مختلف استفاده شده توسط پشته OpenThread نشان می دهد.
otMessage typedef
struct otMessage
یک نمایش غیر شفاف از بافر پیام OpenThread.
otMessageOrigin typedef
منشاء پیام 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
پیام را بر حسب بایت دریافت کنید.
otMessageGetOrigin (const otMessage *aMessage)
منشا پیام را دریافت می کند.
otMessageGetRss (const otMessage *aMessage)
int8_t
میانگین RSS (قدرت سیگنال دریافتی) مرتبط با پیام را برمی‌گرداند.
otMessageIsLinkSecurityEnabled (const otMessage *aMessage)
bool
نشان می دهد که آیا امنیت پیوند برای پیام فعال است یا خیر.
otMessageIsLoopbackToHostAllowed (const otMessage *aMessage)
bool
نشان می دهد که آیا پیام مجاز است به میزبان بازگردانده شود یا خیر.
otMessageIsMulticastLoopEnabled ( 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)
طول پیام را بر حسب بایت تنظیم کنید.
otMessageSetLoopbackToHostAllowed ( otMessage *aMessage, bool aAllowLoopbackToHost)
void
تنظیم می کند که آیا پیام مجاز است به میزبان بازگردانده شود یا خیر.
otMessageSetMulticastLoopEnabled ( otMessage *aMessage, bool aEnabled)
void
کنترل می‌کند که آیا پیام داده‌شده ممکن است در یک آدرس مقصد چندپخشی به عقب بازگردد یا خیر.
otMessageSetOffset ( otMessage *aMessage, uint16_t aOffset)
void
افست پیام را بر حسب بایت تنظیم کنید.
otMessageSetOrigin ( otMessage *aMessage, otMessageOrigin aOrigin)
void
مبدا پیام را تنظیم می کند.
otMessageWrite ( otMessage *aMessage, uint16_t aOffset, const void *aBuf, uint16_t aLength)
int
نوشتن بایت در یک پیام

سازه ها

otBufferInfo

اطلاعات بافر پیام را برای صف های مختلف استفاده شده توسط پشته OpenThread نشان می دهد.

otMessageQueue

یک صف پیام OpenThread را نشان می دهد.

otMessageQueueInfo

اطلاعاتی را در مورد صف پیام نشان می دهد.

otMessageSettings

تنظیمات پیام را نشان می دهد.

شمارش ها

otMessageOrigin

 otMessageOrigin

منشاء پیام OpenThread را تعریف می کند.

خواص
OT_MESSAGE_ORIGIN_HOST_TRUSTED

پیام از یک منبع قابل اعتماد در میزبان.

OT_MESSAGE_ORIGIN_HOST_UNTRUSTED

پیام از یک منبع نامعتبر در میزبان.

OT_MESSAGE_ORIGIN_THREAD_NETIF

پیامی از Thread Netif.

otMessagePriority

 otMessagePriority

سطوح اولویت پیام OpenThread را تعریف می کند.

خواص
OT_MESSAGE_PRIORITY_HIGH

سطح اولویت بالا

OT_MESSAGE_PRIORITY_LOW

سطح اولویت پایین

OT_MESSAGE_PRIORITY_NORMAL

سطح اولویت عادی

Typedefs

otBufferInfo

struct otBufferInfo otBufferInfo

اطلاعات بافر پیام را برای صف های مختلف استفاده شده توسط پشته OpenThread نشان می دهد.

otMessage

struct otMessage otMessage

یک نمایش غیر شفاف از بافر پیام OpenThread.

otMessageOrigin

enum otMessageOrigin otMessageOrigin

منشاء پیام OpenThread را تعریف می کند.

otMessagePriority

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
otMessageSetLength

otMessageGetOffset

uint16_t otMessageGetOffset(
  const otMessage *aMessage
)

پیام را بر حسب بایت دریافت کنید.

جزئیات
مولفه های
[in] aMessage
اشاره گر به بافر پیام.
برمی گرداند
مقدار افست پیام
همچنین ببینید:
otMessageFree
otMessageAppend
otMessageGetLength
otMessageSetLength
otMessageSetOffset
otMessageRead
otMessageWrite

otMessageGetOrigin

otMessageOrigin otMessageGetOrigin(
  const otMessage *aMessage
)

منشا پیام را دریافت می کند.

جزئیات
مولفه های
[in] aMessage
اشاره گر به بافر پیام.
برمی گرداند
منشا پیام

otMessageGetRss

int8_t otMessageGetRss(
  const otMessage *aMessage
)

میانگین RSS (قدرت سیگنال دریافتی) مرتبط با پیام را برمی‌گرداند.

جزئیات
برمی گرداند
مقدار متوسط ​​RSS (بر حسب dBm) یا OT_RADIO_RSSI_INVALID اگر RSS متوسطی در دسترس نباشد.

otMessageIsLinkSecurityEnabled

bool otMessageIsLinkSecurityEnabled(
  const otMessage *aMessage
)

نشان می دهد که آیا امنیت پیوند برای پیام فعال است یا خیر.

جزئیات
مولفه های
[in] aMessage
اشاره گر به بافر پیام.
ارزش های بازگشتی
TRUE
اگر امنیت لینک فعال باشد.
FALSE
اگر امنیت لینک فعال نباشد.

otMessageIsLoopbackToHostAllowed

bool otMessageIsLoopbackToHostAllowed(
  const otMessage *aMessage
)

نشان می دهد که آیا پیام مجاز است به میزبان بازگردانده شود یا خیر.

جزئیات
مولفه های
[in] aMessage
اشاره گر به بافر پیام.
ارزش های بازگشتی
TRUE
اگر پیام مجاز باشد به میزبان بازگردانده شود.
FALSE
اگر پیام مجاز به بازگشت به میزبان نیست.

otMessageIsMulticastLoopEnabled

bool otMessageIsMulticastLoopEnabled(
  otMessage *aMessage
)

نشان می دهد که آیا پیام داده شده ممکن است در یک مورد آدرس مقصد چندپخشی بازگردد یا خیر.

اگر aMessage همراه با یک otMessageInfo استفاده شود، فیلد mMulticastLoop از ساختار otMessageInfo اولویت دارد و به جای مقدار تنظیم شده در aMessage استفاده می شود.

این API عمدتاً برای استفاده همراه با otIp6Send() در نظر گرفته شده است که انتظار دارد یک پیام IPv6 از قبل آماده شده باشد.

جزئیات
مولفه های
[in] aMessage
اشاره گر به پیام

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 if اگر aMessage is not in the queue aMessage is the tail of queue. NULL is returned if .

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

otMessageSetLoopbackToHostAllowed

void otMessageSetLoopbackToHostAllowed(
  otMessage *aMessage,
  bool aAllowLoopbackToHost
)

تنظیم می کند که آیا پیام مجاز است به میزبان بازگردانده شود یا خیر.

جزئیات
مولفه های
[in] aMessage
اشاره گر به بافر پیام.
[in] aAllowLoopbackToHost
اجازه می‌دهیم پیام به میزبان بازگردانده شود یا خیر.

otMessageSetMulticastLoopEnabled

void otMessageSetMulticastLoopEnabled(
  otMessage *aMessage,
  bool aEnabled
)

کنترل می‌کند که آیا پیام داده‌شده ممکن است در یک آدرس مقصد چندپخشی به عقب بازگردد یا خیر.

جزئیات
مولفه های
[in] aMessage
اشاره گر به پیام
[in] aEnabled
مقدار پیکربندی

otMessageSetOffset

void otMessageSetOffset(
  otMessage *aMessage,
  uint16_t aOffset
)

افست پیام را بر حسب بایت تنظیم کنید.

جزئیات
مولفه های
[in] aMessage
اشاره گر به بافر پیام.
[in] aOffset
یک افست در بایت.
همچنین ببینید:
otMessageFree
otMessageAppend
otMessageGetLength
otMessageSetLength
otMessageGetOffset
otMessageRead
otMessageWrite

otMessageSetOrigin

void otMessageSetOrigin(
  otMessage *aMessage,
  otMessageOrigin aOrigin
)

مبدا پیام را تنظیم می کند.

جزئیات
مولفه های
[in] aMessage
اشاره گر به بافر پیام.
[in] aOrigin
منشا پیام

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 سرچشمه می گیرند. برای اطلاعات بیشتر، یا مشارکت در اسناد ما، به منابع مراجعه کنید.