Thông điệp

Mô-đun này bao gồm các hàm thao tác với vùng đệm thông báo OpenThread.

Tóm tắt

Bảng liệt kê

otMessageOrigin{
  OT_MESSAGE_ORIGIN_THREAD_NETIF = 0,
  OT_MESSAGE_ORIGIN_HOST_TRUSTED = 1,
  OT_MESSAGE_ORIGIN_HOST_UNTRUSTED = 2
}
enum
Xác định nguồn gốc thông báo OpenThread.
otMessagePriority{
  OT_MESSAGE_PRIORITY_LOW = 0,
  OT_MESSAGE_PRIORITY_NORMAL = 1,
  OT_MESSAGE_PRIORITY_HIGH = 2
}
enum
Xác định mức độ ưu tiên của thông báo OpenThread.

Typedef

otBufferInfo typedef
struct otBufferInfo
Biểu thị thông tin vùng đệm thông báo cho các hàng đợi khác nhau mà ngăn xếp OpenThread sử dụng.
otMessage typedef
struct otMessage
Hình đại diện mờ về vùng đệm thông báo OpenThread.
otMessageOrigin typedef
Xác định nguồn gốc thông báo OpenThread.
otMessagePriority typedef
Xác định mức độ ưu tiên của thông báo OpenThread.
otMessageQueueInfo typedef
Biểu thị thông tin về hàng đợi tin nhắn.
otMessageSettings typedef
Đại diện cho một chế độ cài đặt tin nhắn.

Hàm

otMessageAppend(otMessage *aMessage, const void *aBuf, uint16_t aLength)
Thêm byte vào một thông báo.
otMessageFree(otMessage *aMessage)
void
Giải phóng vùng đệm thư được phân bổ.
otMessageGetBufferInfo(otInstance *aInstance, otBufferInfo *aBufferInfo)
void
Nhận thông tin về Vùng đệm thư.
otMessageGetLength(const otMessage *aMessage)
uint16_t
Lấy độ dài thông báo tính bằng byte.
otMessageGetOffset(const otMessage *aMessage)
uint16_t
Lấy độ lệch của thông báo tính bằng byte.
otMessageGetOrigin(const otMessage *aMessage)
Lấy nguồn gốc của thư.
otMessageGetRss(const otMessage *aMessage)
int8_t
Trả về RSS trung bình (cường độ tín hiệu nhận được) liên quan đến tin nhắn.
otMessageIsLinkSecurityEnabled(const otMessage *aMessage)
bool
Cho biết liệu tính năng bảo mật đường liên kết có được bật cho tin nhắn hay không.
otMessageIsLoopbackToHostAllowed(const otMessage *aMessage)
bool
Cho biết liệu thư có được phép lặp lại tới máy chủ lưu trữ hay không.
otMessageIsMulticastLoopEnabled(otMessage *aMessage)
bool
Cho biết liệu thông báo đã cho có thể được lặp lại trong trường hợp địa chỉ đích phát đa hướng hay không.
otMessageQueueDequeue(otMessageQueue *aQueue, otMessage *aMessage)
void
Xoá một thư khỏi hàng đợi thư nhất định.
otMessageQueueEnqueue(otMessageQueue *aQueue, otMessage *aMessage)
void
Thêm một thông báo vào cuối hàng đợi thông báo đã cho.
otMessageQueueEnqueueAtHead(otMessageQueue *aQueue, otMessage *aMessage)
void
Thêm một thư vào đầu/trước hàng đợi thư đã cho.
otMessageQueueGetHead(otMessageQueue *aQueue)
Trả về một con trỏ tới tin nhắn ở đầu hàng đợi.
otMessageQueueGetNext(otMessageQueue *aQueue, const otMessage *aMessage)
Trả về một con trỏ đến thư tiếp theo trong hàng đợi bằng cách lặp lại tiến (từ đầu đến cuối).
otMessageQueueInit(otMessageQueue *aQueue)
void
Khởi động hàng đợi tin nhắn.
otMessageRead(const otMessage *aMessage, uint16_t aOffset, void *aBuf, uint16_t aLength)
uint16_t
Đọc các byte từ một tin nhắn.
otMessageResetBufferInfo(otInstance *aInstance)
void
Đặt lại bộ đếm thông tin Vùng đệm thư theo dõi vùng đệm số tối đa được sử dụng cùng một lúc.
otMessageSetDirectTransmission(otMessage *aMessage, bool aEnabled)
void
Đặt/buộc thư được chuyển tiếp bằng cách sử dụng truyền trực tiếp.
otMessageSetLength(otMessage *aMessage, uint16_t aLength)
Đặt độ dài thông báo bằng byte.
otMessageSetLoopbackToHostAllowed(otMessage *aMessage, bool aAllowLoopbackToHost)
void
Đặt có cho phép lặp lại thư tới máy chủ hay không.
otMessageSetMulticastLoopEnabled(otMessage *aMessage, bool aEnabled)
void
Kiểm soát việc thông báo đã cho có thể được lặp lại trong trường hợp địa chỉ đích phát đa hướng hay không.
otMessageSetOffset(otMessage *aMessage, uint16_t aOffset)
void
Đặt độ lệch thông báo theo byte.
otMessageSetOrigin(otMessage *aMessage, otMessageOrigin aOrigin)
void
Đặt nguồn gốc thông báo.
otMessageWrite(otMessage *aMessage, uint16_t aOffset, const void *aBuf, uint16_t aLength)
int
Ghi byte vào một tin nhắn.

Cấu trúc

otBufferInfo

Biểu thị thông tin vùng đệm thông báo cho các hàng đợi khác nhau mà ngăn xếp OpenThread sử dụng.

otMessageQueue

Đại diện cho hàng đợi tin nhắn OpenThread.

otMessageQueueInfo

Biểu thị thông tin về hàng đợi tin nhắn.

otMessageSettings

Đại diện cho một chế độ cài đặt tin nhắn.

Bảng liệt kê

otMessageOrigin

 otMessageOrigin

Xác định nguồn gốc thông báo OpenThread.

Thuộc tính
OT_MESSAGE_ORIGIN_HOST_TRUSTED

Thư từ một nguồn đáng tin cậy trên máy chủ lưu trữ.

OT_MESSAGE_ORIGIN_HOST_UNTRUSTED

Thư từ một nguồn không đáng tin cậy trên máy chủ lưu trữ.

OT_MESSAGE_ORIGIN_THREAD_NETIF

Thông báo của Thread Netif.

otMessagePriority

 otMessagePriority

Xác định mức độ ưu tiên của thông báo OpenThread.

Thuộc tính
OT_MESSAGE_PRIORITY_HIGH

Mức độ ưu tiên cao.

OT_MESSAGE_PRIORITY_LOW

Mức độ ưu tiên thấp.

OT_MESSAGE_PRIORITY_NORMAL

Mức độ ưu tiên bình thường.

Typedef

otBufferInfo

struct otBufferInfo otBufferInfo

Biểu thị thông tin vùng đệm thông báo cho các hàng đợi khác nhau mà ngăn xếp OpenThread sử dụng.

otMessage

struct otMessage otMessage

Hình đại diện mờ về vùng đệm thông báo OpenThread.

otMessageOrigin

enum otMessageOrigin otMessageOrigin

Xác định nguồn gốc thông báo OpenThread.

otMessagePriority

enum otMessagePriority otMessagePriority

Xác định mức độ ưu tiên của thông báo OpenThread.

otMessageQueueInfo

struct otMessageQueueInfo otMessageQueueInfo

Biểu thị thông tin về hàng đợi tin nhắn.

otMessageSettings

struct otMessageSettings otMessageSettings

Đại diện cho một chế độ cài đặt tin nhắn.

Hàm

otMessageAppend

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

Thêm byte vào một thông báo.

Thông tin chi tiết
Thông số
[in] aMessage
Con trỏ đến vùng đệm thông báo.
[in] aBuf
Con trỏ đến dữ liệu cần nối.
[in] aLength
Số byte cần nối.
Giá trị trả về
OT_ERROR_NONE
Đã thêm thành công vào tin nhắn
OT_ERROR_NO_BUFS
Không có vùng đệm để phát triển thông báo.
Xem thêm:
otMessageFree
otMessageGetLength
otMessageSetLength
otMessageGetOffset
otMessageSetOffset
otMessageRead
otMessageWrite

otMessageFree

void otMessageFree(
  otMessage *aMessage
)

Giải phóng vùng đệm thư được phân bổ.

Thông tin chi tiết
Thông số
[in] aMessage
Con trỏ đến vùng đệm thông báo.
Xem thêm:
otMessageAppend
otMessageGetLength
otMessageSetLength
otMessageGetOffset
otMessageSetOffset
otMessageRead
otMessageWrite

otMessageGetBufferInfo

void otMessageGetBufferInfo(
  otInstance *aInstance,
  otBufferInfo *aBufferInfo
)

Nhận thông tin về Vùng đệm thư.

Thông tin chi tiết
Thông số
[in] aInstance
Con trỏ đến thực thể OpenThread.
[out] aBufferInfo
Một con trỏ nơi ghi thông tin vùng đệm thông báo.

otMessageGetLength

uint16_t otMessageGetLength(
  const otMessage *aMessage
)

Lấy độ dài thông báo tính bằng byte.

Thông tin chi tiết
Thông số
[in] aMessage
Con trỏ đến vùng đệm thông báo.
Trả về
Độ dài thông báo tính bằng byte.
Xem thêm:
otMessageFree
otMessageAppend
otMessageSetLength
otMessageGetOffset
otMessageSetOffset
otMessageRead
otMessageWrite
otMessageWrite
otMessageSet trịotMessageSetLength

otMessageGetOffset

uint16_t otMessageGetOffset(
  const otMessage *aMessage
)

Lấy độ lệch của thông báo tính bằng byte.

Thông tin chi tiết
Thông số
[in] aMessage
Con trỏ đến vùng đệm thông báo.
Trả về
Giá trị chênh lệch tin nhắn.
Xem thêm:
otMessageFree
otMessageAppend
otMessageGetLength
otMessageSetLength
otMessageSetOffset
otMessageRead
otMessageWrite

otMessageGetOrigin

otMessageOrigin otMessageGetOrigin(
  const otMessage *aMessage
)

Lấy nguồn gốc của thư.

Thông tin chi tiết
Thông số
[in] aMessage
Con trỏ đến vùng đệm thông báo.
Trả về
Nguồn gốc của thông báo.

otMessageGetRss

int8_t otMessageGetRss(
  const otMessage *aMessage
)

Trả về RSS trung bình (cường độ tín hiệu nhận được) liên quan đến tin nhắn.

Thông tin chi tiết
Trả về
Giá trị RSS trung bình (tính bằng dBm) hoặc OT_Radio_RSSI_INVALID nếu không có RSS trung bình.

otMessageIsLinkSecurityEnabled

bool otMessageIsLinkSecurityEnabled(
  const otMessage *aMessage
)

Cho biết liệu tính năng bảo mật đường liên kết có được bật cho tin nhắn hay không.

Thông tin chi tiết
Thông số
[in] aMessage
Con trỏ đến vùng đệm thông báo.
Giá trị trả về
TRUE
Nếu bảo mật đường liên kết đang bật.
FALSE
Nếu tính năng bảo mật đường liên kết chưa được bật.

otMessageIsLoopbackToHostAllowed

bool otMessageIsLoopbackToHostAllowed(
  const otMessage *aMessage
)

Cho biết liệu thư có được phép lặp lại tới máy chủ lưu trữ hay không.

Thông tin chi tiết
Thông số
[in] aMessage
Con trỏ đến vùng đệm thông báo.
Giá trị trả về
TRUE
Nếu thư được phép lặp lại đến máy chủ.
FALSE
Nếu thư không được phép lặp lại đến máy chủ.

otMessageIsMulticastLoopEnabled

bool otMessageIsMulticastLoopEnabled(
  otMessage *aMessage
)

Cho biết liệu thông báo đã cho có thể được lặp lại trong trường hợp địa chỉ đích phát đa hướng hay không.

Nếu dùng aMessage cùng với otMessageInfo, thì trường mMulticastLoop trong cấu trúc otMessageInfo sẽ được ưu tiên và dùng thay cho giá trị được đặt trên aMessage.

API này chủ yếu để sử dụng cùng với otIp6Send() với dự kiến sẽ có thông báo IPv6 đã chuẩn bị.

Thông tin chi tiết
Thông số
[in] aMessage
Con trỏ đến tin nhắn.

otMessageQueueDequeue

void otMessageQueueDequeue(
  otMessageQueue *aQueue,
  otMessage *aMessage
)

Xoá một thư khỏi hàng đợi thư nhất định.

Thông tin chi tiết
Thông số
[in] aQueue
Con trỏ đến hàng đợi tin nhắn.
[in] aMessage
Thông báo cần xoá.

otMessageQueueEnqueue

void otMessageQueueEnqueue(
  otMessageQueue *aQueue,
  otMessage *aMessage
)

Thêm một thông báo vào cuối hàng đợi thông báo đã cho.

Thông tin chi tiết
Thông số
[in] aQueue
Con trỏ đến hàng đợi tin nhắn.
[in] aMessage
Tin nhắn cần thêm.

otMessageQueueEnqueueAtHead

void otMessageQueueEnqueueAtHead(
  otMessageQueue *aQueue,
  otMessage *aMessage
)

Thêm một thư vào đầu/trước hàng đợi thư đã cho.

Thông tin chi tiết
Thông số
[in] aQueue
Con trỏ đến hàng đợi tin nhắn.
[in] aMessage
Tin nhắn cần thêm.

otMessageQueueGetHead

otMessage * otMessageQueueGetHead(
  otMessageQueue *aQueue
)

Trả về một con trỏ tới tin nhắn ở đầu hàng đợi.

Thông tin chi tiết
Thông số
[in] aQueue
Con trỏ đến hàng đợi tin nhắn.
Trả về
Con trỏ đến thông báo ở đầu hàng đợi hoặc NULL nếu hàng đợi trống.

otMessageQueueGetNext

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

Trả về một con trỏ đến thư tiếp theo trong hàng đợi bằng cách lặp lại tiến (từ đầu đến cuối).

Thông tin chi tiết
Thông số
[in] aQueue
Con trỏ đến hàng đợi tin nhắn.
[in] aMessage
Con trỏ đến vùng đệm thông báo hiện tại.
Trả về
Con trỏ đến thông báo tiếp theo trong hàng đợi sau aMessage hoặc NULL nếu là aMessage is the tail of queue. NULL is returned ifaMessageis not in the queueaQueue`.

otMessageQueueInit

void otMessageQueueInit(
  otMessageQueue *aQueue
)

Khởi động hàng đợi tin nhắn.

PHẢI được gọi một lần và chỉ một lần cho một thực thể otMessageQueue trước bất kỳ hàm otMessageQueue nào khác. Hành vi này không được xác định nếu các API hàng đợi khác được sử dụng với otMessageQueue trước khi được khởi tạo hoặc nếu API được khởi tạo nhiều lần.

Thông tin chi tiết
Thông số
[in] aQueue
Con trỏ đến hàng đợi tin nhắn.

otMessageRead

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

Đọc các byte từ một tin nhắn.

Thông tin chi tiết
Thông số
[in] aMessage
Con trỏ đến vùng đệm thông báo.
[in] aOffset
Một mức chênh lệch tính bằng byte.
[in] aBuf
Con trỏ đến một vùng đệm nơi chứa các byte thông báo sẽ được đọc.
[in] aLength
Số byte cần đọc.
Trả về
Số byte đã đọc.
Xem thêm:
otMessageFree
otMessageAppend
otMessageGetLength
otMessageSetLength
otMessageGetOffset
otMessageSetOffset
otMessageWrite

otMessageResetBufferInfo

void otMessageResetBufferInfo(
  otInstance *aInstance
)

Đặt lại bộ đếm thông tin Vùng đệm thư theo dõi vùng đệm số tối đa được sử dụng cùng một lúc.

Thao tác này sẽ đặt lại mMaxUsedBuffers trong otBufferInfo.

Thông tin chi tiết
Thông số
[in] aInstance
Con trỏ đến thực thể OpenThread.

otMessageSetDirectTransmission

void otMessageSetDirectTransmission(
  otMessage *aMessage,
  bool aEnabled
)

Đặt/buộc thư được chuyển tiếp bằng cách sử dụng truyền trực tiếp.

Chế độ cài đặt mặc định cho thông báo mới là false.

Thông tin chi tiết
Thông số
[in] aMessage
Con trỏ đến vùng đệm thông báo.
[in] aEnabled
Nếu true, tin nhắn buộc phải sử dụng tính năng truyền trực tiếp. Nếu là false, thông báo sẽ tuân theo quy trình bình thường.

otMessageSetLength

otError otMessageSetLength(
  otMessage *aMessage,
  uint16_t aLength
)

Đặt độ dài thông báo bằng byte.

Thông tin chi tiết
Thông số
[in] aMessage
Con trỏ đến vùng đệm thông báo.
[in] aLength
Độ dài tính bằng byte.
Giá trị trả về
OT_ERROR_NONE
Đã đặt thành công thời lượng tin nhắn.
OT_ERROR_NO_BUFS
Không có vùng đệm để phát triển thông báo.
Xem thêm:
otMessageFree
otMessageAppend
otMessageGetLength
otMessageGetOffset
otMessageSetOffset
otMessageRead
otMessageWrite

otMessageSetLoopbackToHostAllowed

void otMessageSetLoopbackToHostAllowed(
  otMessage *aMessage,
  bool aAllowLoopbackToHost
)

Đặt có cho phép lặp lại thư tới máy chủ hay không.

Thông tin chi tiết
Thông số
[in] aMessage
Con trỏ đến vùng đệm thông báo.
[in] aAllowLoopbackToHost
Liệu có cho phép thư được lặp lại cho máy chủ hay không.

otMessageSetMulticastLoopEnabled

void otMessageSetMulticastLoopEnabled(
  otMessage *aMessage,
  bool aEnabled
)

Kiểm soát việc thông báo đã cho có thể được lặp lại trong trường hợp địa chỉ đích phát đa hướng hay không.

Thông tin chi tiết
Thông số
[in] aMessage
Con trỏ đến tin nhắn.
[in] aEnabled
Giá trị cấu hình.

otMessageSetOffset

void otMessageSetOffset(
  otMessage *aMessage,
  uint16_t aOffset
)

Đặt độ lệch thông báo theo byte.

Thông tin chi tiết
Thông số
[in] aMessage
Con trỏ đến vùng đệm thông báo.
[in] aOffset
Một mức chênh lệch tính bằng byte.
Xem thêm:
otMessageFree
otMessageAppend
otMessageGetLength
otMessageSetLength
otMessageGetOffset
otMessageRead
otMessageWrite

otMessageSetOrigin

void otMessageSetOrigin(
  otMessage *aMessage,
  otMessageOrigin aOrigin
)

Đặt nguồn gốc thông báo.

Thông tin chi tiết
Thông số
[in] aMessage
Con trỏ đến vùng đệm thông báo.
[in] aOrigin
Nguồn gốc của thông báo.

otMessageWrite

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

Ghi byte vào một tin nhắn.

Thông tin chi tiết
Thông số
[in] aMessage
Con trỏ đến vùng đệm thông báo.
[in] aOffset
Một mức chênh lệch tính bằng byte.
[in] aBuf
Con trỏ đến vùng đệm chứa các byte thông báo.
[in] aLength
Số byte cần ghi.
Trả về
Số byte đã ghi.
Xem thêm:
otMessageFree
otMessageAppend
otMessageGetLength
otMessageSetLength
otMessageGetOffset
otMessageSetOffset
otMessageRead

Tài nguyên

Các chủ đề tham khảo API OpenThread bắt nguồn từ mã nguồn, có trên GitHub. Để biết thêm thông tin hoặc để đóng góp cho tài liệu của chúng tôi, hãy tham khảo Tài nguyên.