ข้อความ

โมดูลนี้ประกอบด้วยฟังก์ชันที่จัดการบัฟเฟอร์ข้อความ OpenThread

สรุป

การแจกแจง

otMessagePriority{
  OT_MESSAGE_PRIORITY_LOW = 0,
  OT_MESSAGE_PRIORITY_NORMAL = 1,
  OT_MESSAGE_PRIORITY_HIGH = 2
}
enum
การแจกแจงนี้กําหนดลําดับความสําคัญของข้อความ OpenThread

ประเภทคําจํากัดความ

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
อ่านไบต์จากข้อความ
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

โครงสร้างนี้แสดงการตั้งค่าข้อความ

การแจกแจง

ลําดับความสําคัญของข้อความ

 otMessagePriority

การแจกแจงนี้กําหนดลําดับความสําคัญของข้อความ OpenThread

พร็อพเพอร์ตี้
OT_MESSAGE_PRIORITY_HIGH

ลําดับความสําคัญสูง

OT_MESSAGE_PRIORITY_LOW

ลําดับความสําคัญต่ํา

OT_MESSAGE_PRIORITY_NORMAL

ระดับความสําคัญปกติ

ประเภทคําจํากัดความ

ข้อมูล otBuffer

struct otBufferInfo otBufferInfo

โครงสร้างนี้แสดงข้อมูลการบัฟเฟอร์ของข้อความสําหรับคิวต่างๆ ที่สแต็ก OpenThread ใช้งาน

ข้อความ

struct otMessage otMessage

ข้อความประเภทนี้แสดงถึงการบัฟเฟอร์ของข้อความ OpenThread ที่คลุมเครือ

ลําดับความสําคัญของข้อความ

enum otMessagePriority otMessagePriority

การแจกแจงนี้กําหนดลําดับความสําคัญของข้อความ OpenThread

ข้อมูลคิวข้อความ

struct otMessageQueueInfo otMessageQueueInfo

โครงสร้างนี้แสดงข้อมูลเกี่ยวกับคิวข้อความ

การตั้งค่าข้อความ

struct otMessageSettings otMessageSettings

โครงสร้างนี้แสดงการตั้งค่าข้อความ

ฟังก์ชัน

ข้อความสิ้นสุดแอป

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

แบบไม่เสียค่าใช้จ่าย

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
ตัวชี้ที่มีการเขียนข้อความบัฟเฟอร์ของข้อความ

ความยาวข้อความ

uint16_t otMessageGetLength(
  const otMessage *aMessage
)

รับความยาวของข้อความเป็นไบต์

รายละเอียด
พารามิเตอร์
[in] aMessage
ตัวชี้ไปยังบัฟเฟอร์ข้อความ
การคืนสินค้า
ความยาวของข้อความในหน่วยไบต์
โปรดดูข้อมูลเพิ่มเติมดังนี้
otMessageFree
otMessageAppend
otMessageSetLength
otMessageGetOffset
otMessageSetOffset
otMessageRead
otMessageWrite
otMessageSetLength

ปิดข้อความ

uint16_t otMessageGetOffset(
  const otMessage *aMessage
)

รับการชดเชยข้อความในหน่วยไบต์

รายละเอียด
พารามิเตอร์
[in] aMessage
ตัวชี้ไปยังบัฟเฟอร์ข้อความ
การคืนสินค้า
ค่าออฟเซ็ตของข้อความ
โปรดดูข้อมูลเพิ่มเติมดังนี้
otMessageFree
otMessageAppend
otMessageGetLength
otMessageSetLength
otMessageSetOffset
otMessageRead
otMessageWrite

ข้อความข้อความรับ

int8_t otMessageGetRss(
  const otMessage *aMessage
)

โดยฟังก์ชันนี้จะแสดงผล RSS เฉลี่ย (ความแรงของสัญญาณที่ได้รับ) ที่เชื่อมโยงกับข้อความ

รายละเอียด
การคืนสินค้า
ค่า RSS เฉลี่ย (ใน dBm) หรือ OT_RADIO_RSSI_INVALID หากไม่มี RSS เฉลี่ยพร้อมใช้งาน

OTMessageIsLinkSecurityEnabled

bool otMessageIsLinkSecurityEnabled(
  const otMessage *aMessage
)

ฟังก์ชันนี้จะระบุไว้ว่ามีการเปิดใช้ความปลอดภัยของลิงก์สําหรับข้อความหรือไม่

รายละเอียด
พารามิเตอร์
[in] aMessage
ตัวชี้ไปยังบัฟเฟอร์ข้อความ
แสดงผลค่า
TRUE
หากเปิดใช้การรักษาความปลอดภัยลิงก์
FALSE
หากไม่ได้เปิดใช้ความปลอดภัยของลิงก์

คําอธิบายคิวข้อความ

void otMessageQueueDequeue(
  otMessageQueue *aQueue,
  otMessage *aMessage
)

ฟังก์ชันนี้จะนําข้อความออกจากคิวข้อความที่ระบุ

รายละเอียด
พารามิเตอร์
[in] aQueue
ตัวชี้ไปยังคิวข้อความ
[in] aMessage
ข้อความที่จะนําออก

จุดเริ่มคิวข้อความ

void otMessageQueueEnqueue(
  otMessageQueue *aQueue,
  otMessage *aMessage
)

ฟังก์ชันนี้จะเพิ่มข้อความไว้ที่ท้ายคิวข้อความที่ระบุ

รายละเอียด
พารามิเตอร์
[in] aQueue
ตัวชี้ไปยังคิวข้อความ
[in] aMessage
ข้อความที่จะเพิ่ม

OTMessageQueueEnqueueAtHead

void otMessageQueueEnqueueAtHead(
  otMessageQueue *aQueue,
  otMessage *aMessage
)

ฟังก์ชันนี้จะเพิ่มข้อความที่ส่วนหัว/ด้านหน้าของคิวข้อความที่ระบุ

รายละเอียด
พารามิเตอร์
[in] aQueue
ตัวชี้ไปยังคิวข้อความ
[in] aMessage
ข้อความที่จะเพิ่ม

คัดลอกคิวข้อความส่วนหัว

otMessage * otMessageQueueGetHead(
  otMessageQueue *aQueue
)

ฟังก์ชันนี้จะส่งคืนตัวชี้ไปยังข้อความที่ส่วนหัวของคิว

รายละเอียด
พารามิเตอร์
[in] aQueue
ตัวชี้ไปยังคิวข้อความ
การคืนสินค้า
ตัวชี้ไปยังข้อความที่ด้านบนของคิว หรือค่าว่างหากคิวว่างเปล่า

ข้อความคิวถัดไป

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 ก่อนที่พารามิเตอร์จะเริ่มต้น หรือมีการเริ่มต้นมากกว่า 1 ครั้ง

รายละเอียด
พารามิเตอร์
[in] aQueue
ตัวชี้ไปยังคิวข้อความ

อ่านข้อความ

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

ข้อความชุดโดยตรง

void otMessageSetDirectTransmission(
  otMessage *aMessage,
  bool aEnabled
)

โดยฟังก์ชันนี้จะกําหนด/บังคับให้มีการส่งต่อข้อความโดยใช้การส่งโดยตรง

การตั้งค่าเริ่มต้นสําหรับข้อความใหม่คือ false

รายละเอียด
พารามิเตอร์
[in] aMessage
ตัวชี้ไปยังบัฟเฟอร์ข้อความ
[in] aEnabled
หากเป็น true ข้อความจะถูกบังคับให้ใช้การส่งโดยตรง หากเป็น false ข้อความจะดําเนินตามขั้นตอนปกติ

ความยาวข้อความ

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

ออฟเซ็ตข้อความ

void otMessageSetOffset(
  otMessage *aMessage,
  uint16_t aOffset
)

ตั้งค่าการชดเชยข้อความในหน่วยไบต์

รายละเอียด
พารามิเตอร์
[in] aMessage
ตัวชี้ไปยังบัฟเฟอร์ข้อความ
[in] aOffset
ออฟเซ็ตเป็นไบต์
โปรดดูข้อมูลเพิ่มเติมดังนี้
otMessageFree
otMessageAppend
otMessageGetLength
otMessageSetLength
otMessageGetOffset
otMessageRead
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

ทรัพยากร

หัวข้ออ้างอิง API ของ OpenThread API มาจากซอร์สโค้ดซึ่งมีอยู่ใน GitHub ดูข้อมูลเพิ่มเติมหรือมีส่วนร่วมในเอกสารประกอบของเราได้ที่แหล่งข้อมูล