Message
This module includes functions that manipulate OpenThread message buffers.
Summary
Enumerations |
|
---|---|
otMessageOrigin{
|
enum Defines the OpenThread message origins. |
otMessagePriority{
|
enum Defines the OpenThread message priority levels. |
Typedefs |
|
---|---|
otBufferInfo
|
typedefstruct otBufferInfo
Represents the message buffer information for different queues used by OpenThread stack. |
otMessage
|
typedefstruct otMessage
An opaque representation of an OpenThread message buffer. |
otMessageOrigin
|
typedefenum otMessageOrigin
Defines the OpenThread message origins. |
otMessagePriority
|
typedefenum otMessagePriority
Defines the OpenThread message priority levels. |
otMessageQueueInfo
|
typedefstruct otMessageQueueInfo
Represents information about a message queue. |
otMessageSettings
|
typedefstruct otMessageSettings
Represents a message settings. |
otThreadLinkInfo
|
typedefstruct otThreadLinkInfo
Represents link-specific information for messages received from the Thread radio. |
Functions |
|
---|---|
otMessageAppend(otMessage *aMessage, const void *aBuf, uint16_t aLength)
|
Append bytes to a message.
|
otMessageFree(otMessage *aMessage)
|
void
Free an allocated message buffer.
|
otMessageGetBufferInfo(otInstance *aInstance, otBufferInfo *aBufferInfo)
|
void
Get the Message Buffer information.
|
otMessageGetLength(const otMessage *aMessage)
|
uint16_t
Get the message length in bytes.
|
otMessageGetOffset(const otMessage *aMessage)
|
uint16_t
Get the message offset in bytes.
|
otMessageGetOrigin(const otMessage *aMessage)
|
Gets the message origin.
|
otMessageGetRss(const otMessage *aMessage)
|
int8_t
Returns the average RSS (received signal strength) associated with the message.
|
otMessageGetThreadLinkInfo(const otMessage *aMessage, otThreadLinkInfo *aLinkInfo)
|
Retrieves the link-specific information for a message received over Thread radio.
|
otMessageIsLinkSecurityEnabled(const otMessage *aMessage)
|
bool
Indicates whether or not link security is enabled for the message.
|
otMessageIsLoopbackToHostAllowed(const otMessage *aMessage)
|
bool
Indicates whether or not the message is allowed to be looped back to host.
|
otMessageIsMulticastLoopEnabled(otMessage *aMessage)
|
bool
Indicates whether the given message may be looped back in a case of a multicast destination address.
|
otMessageQueueDequeue(otMessageQueue *aQueue, otMessage *aMessage)
|
void
Removes a message from the given message queue.
|
otMessageQueueEnqueue(otMessageQueue *aQueue, otMessage *aMessage)
|
void
Adds a message to the end of the given message queue.
|
otMessageQueueEnqueueAtHead(otMessageQueue *aQueue, otMessage *aMessage)
|
void
Adds a message at the head/front of the given message queue.
|
otMessageQueueGetHead(otMessageQueue *aQueue)
|
Returns a pointer to the message at the head of the queue.
|
otMessageQueueGetNext(otMessageQueue *aQueue, const otMessage *aMessage)
|
Returns a pointer to the next message in the queue by iterating forward (from head to tail).
|
otMessageQueueInit(otMessageQueue *aQueue)
|
void
Initialize the message queue.
|
otMessageRead(const otMessage *aMessage, uint16_t aOffset, void *aBuf, uint16_t aLength)
|
uint16_t
Read bytes from a message.
|
otMessageResetBufferInfo(otInstance *aInstance)
|
void
Reset the Message Buffer information counter tracking the maximum number buffers in use at the same time.
|
otMessageSetDirectTransmission(otMessage *aMessage, bool aEnabled)
|
void
Sets/forces the message to be forwarded using direct transmission.
|
otMessageSetLength(otMessage *aMessage, uint16_t aLength)
|
Set the message length in bytes.
|
otMessageSetLoopbackToHostAllowed(otMessage *aMessage, bool aAllowLoopbackToHost)
|
void
Sets whether or not the message is allowed to be looped back to host.
|
otMessageSetMulticastLoopEnabled(otMessage *aMessage, bool aEnabled)
|
void
Controls whether the given message may be looped back in a case of a multicast destination address.
|
otMessageSetOffset(otMessage *aMessage, uint16_t aOffset)
|
void
Set the message offset in bytes.
|
otMessageSetOrigin(otMessage *aMessage, otMessageOrigin aOrigin)
|
void
Sets the message origin.
|
otMessageWrite(otMessage *aMessage, uint16_t aOffset, const void *aBuf, uint16_t aLength)
|
int
Write bytes to a message.
|
Structs |
|
---|---|
otBufferInfo |
Represents the message buffer information for different queues used by OpenThread stack. |
otMessageQueue |
Represents an OpenThread message queue. |
otMessageQueueInfo |
Represents information about a message queue. |
otMessageSettings |
Represents a message settings. |
otThreadLinkInfo |
Represents link-specific information for messages received from the Thread radio. |
Enumerations
otMessageOrigin
otMessageOrigin
otMessagePriority
otMessagePriority
Typedefs
otBufferInfo
struct otBufferInfo otBufferInfo
Represents the message buffer information for different queues used by OpenThread stack.
otMessagePriority
enum otMessagePriority otMessagePriority
Defines the OpenThread message priority levels.
otMessageQueueInfo
struct otMessageQueueInfo otMessageQueueInfo
Represents information about a message queue.
otThreadLinkInfo
struct otThreadLinkInfo otThreadLinkInfo
Represents link-specific information for messages received from the Thread radio.
Functions
otMessageAppend
otError otMessageAppend( otMessage *aMessage, const void *aBuf, uint16_t aLength )
Append bytes to a message.
Details | |||||||
---|---|---|---|---|---|---|---|
Parameters |
|
||||||
Return Values |
|
otMessageFree
otMessageGetLength
otMessageSetLength
otMessageGetOffset
otMessageSetOffset
otMessageRead
otMessageWrite
otMessageFree
void otMessageFree( otMessage *aMessage )
Free an allocated message buffer.
Details | |||
---|---|---|---|
Parameters |
|
otMessageAppend
otMessageGetLength
otMessageSetLength
otMessageGetOffset
otMessageSetOffset
otMessageRead
otMessageWrite
otMessageGetBufferInfo
void otMessageGetBufferInfo( otInstance *aInstance, otBufferInfo *aBufferInfo )
Get the Message Buffer information.
Details | |||||
---|---|---|---|---|---|
Parameters |
|
otMessageGetLength
uint16_t otMessageGetLength( const otMessage *aMessage )
Get the message length in bytes.
Details | |||
---|---|---|---|
Parameters |
|
||
Returns |
The message length in bytes.
|
otMessageFree
otMessageAppend
otMessageSetLength
otMessageGetOffset
otMessageSetOffset
otMessageRead
otMessageWrite
otMessageSetLength
otMessageGetOffset
uint16_t otMessageGetOffset( const otMessage *aMessage )
Get the message offset in bytes.
Details | |||
---|---|---|---|
Parameters |
|
||
Returns |
The message offset value.
|
otMessageFree
otMessageAppend
otMessageGetLength
otMessageSetLength
otMessageSetOffset
otMessageRead
otMessageWrite
otMessageGetOrigin
otMessageOrigin otMessageGetOrigin( const otMessage *aMessage )
Gets the message origin.
Details | |||
---|---|---|---|
Parameters |
|
||
Returns |
The message origin.
|
otMessageGetRss
int8_t otMessageGetRss( const otMessage *aMessage )
Returns the average RSS (received signal strength) associated with the message.
Details | |||
---|---|---|---|
Parameters |
|
||
Returns |
The average RSS value (in dBm) or OT_RADIO_RSSI_INVALID if no average RSS is available.
|
otMessageGetThreadLinkInfo
otError otMessageGetThreadLinkInfo( const otMessage *aMessage, otThreadLinkInfo *aLinkInfo )
Retrieves the link-specific information for a message received over Thread radio.
Details | |||||
---|---|---|---|---|---|
Parameters |
|
||||
Return Values |
|
otMessageIsLinkSecurityEnabled
bool otMessageIsLinkSecurityEnabled( const otMessage *aMessage )
Indicates whether or not link security is enabled for the message.
Details | |||||
---|---|---|---|---|---|
Parameters |
|
||||
Return Values |
|
otMessageIsLoopbackToHostAllowed
bool otMessageIsLoopbackToHostAllowed( const otMessage *aMessage )
Indicates whether or not the message is allowed to be looped back to host.
Details | |||||
---|---|---|---|---|---|
Parameters |
|
||||
Return Values |
|
otMessageIsMulticastLoopEnabled
bool otMessageIsMulticastLoopEnabled( otMessage *aMessage )
Indicates whether the given message may be looped back in a case of a multicast destination address.
If aMessage
is used along with an otMessageInfo
, the mMulticastLoop
field from otMessageInfo
structure takes precedence and will be used instead of the the value set on aMessage
.
This API is mainly intended for use along with otIp6Send()
which expects an already prepared IPv6 message.
Details | |||
---|---|---|---|
Parameters |
|
otMessageQueueDequeue
void otMessageQueueDequeue( otMessageQueue *aQueue, otMessage *aMessage )
Removes a message from the given message queue.
Details | |||||
---|---|---|---|---|---|
Parameters |
|
otMessageQueueEnqueue
void otMessageQueueEnqueue( otMessageQueue *aQueue, otMessage *aMessage )
Adds a message to the end of the given message queue.
Details | |||||
---|---|---|---|---|---|
Parameters |
|
otMessageQueueEnqueueAtHead
void otMessageQueueEnqueueAtHead( otMessageQueue *aQueue, otMessage *aMessage )
Adds a message at the head/front of the given message queue.
Details | |||||
---|---|---|---|---|---|
Parameters |
|
otMessageQueueGetHead
otMessage * otMessageQueueGetHead( otMessageQueue *aQueue )
Returns a pointer to the message at the head of the queue.
Details | |||
---|---|---|---|
Parameters |
|
||
Returns |
A pointer to the message at the head of queue or NULL if queue is empty.
|
otMessageQueueGetNext
otMessage * otMessageQueueGetNext( otMessageQueue *aQueue, const otMessage *aMessage )
Returns a pointer to the next message in the queue by iterating forward (from head to tail).
Details | |||||
---|---|---|---|---|---|
Parameters |
|
||||
Returns |
A pointer to the next message in the queue after
aMessage or NULL if aMessage is the tail of queue. NULL is returned if aMessageis not in the queue aQueue`. |
otMessageQueueInit
void otMessageQueueInit( otMessageQueue *aQueue )
Initialize the message queue.
MUST be called once and only once for a otMessageQueue
instance before any other otMessageQueue
functions. The behavior is undefined if other queue APIs are used with an otMessageQueue
before it being initialized or if it is initialized more than once.
Details | |||
---|---|---|---|
Parameters |
|
otMessageRead
uint16_t otMessageRead( const otMessage *aMessage, uint16_t aOffset, void *aBuf, uint16_t aLength )
Read bytes from a message.
Details | |||||||||
---|---|---|---|---|---|---|---|---|---|
Parameters |
|
||||||||
Returns |
The number of bytes read.
|
otMessageFree
otMessageAppend
otMessageGetLength
otMessageSetLength
otMessageGetOffset
otMessageSetOffset
otMessageWrite
otMessageResetBufferInfo
void otMessageResetBufferInfo( otInstance *aInstance )
Reset the Message Buffer information counter tracking the maximum number buffers in use at the same time.
This resets mMaxUsedBuffers
in otBufferInfo
.
Details | |||
---|---|---|---|
Parameters |
|
otMessageSetDirectTransmission
void otMessageSetDirectTransmission( otMessage *aMessage, bool aEnabled )
Sets/forces the message to be forwarded using direct transmission.
Default setting for a new message is false
.
Details | |||||
---|---|---|---|---|---|
Parameters |
|
otMessageSetLength
otError otMessageSetLength( otMessage *aMessage, uint16_t aLength )
Set the message length in bytes.
Details | |||||
---|---|---|---|---|---|
Parameters |
|
||||
Return Values |
|
otMessageFree
otMessageAppend
otMessageGetLength
otMessageGetOffset
otMessageSetOffset
otMessageRead
otMessageWrite
otMessageSetLoopbackToHostAllowed
void otMessageSetLoopbackToHostAllowed( otMessage *aMessage, bool aAllowLoopbackToHost )
Sets whether or not the message is allowed to be looped back to host.
Details | |||||
---|---|---|---|---|---|
Parameters |
|
otMessageSetMulticastLoopEnabled
void otMessageSetMulticastLoopEnabled( otMessage *aMessage, bool aEnabled )
Controls whether the given message may be looped back in a case of a multicast destination address.
Details | |||||
---|---|---|---|---|---|
Parameters |
|
otMessageSetOffset
void otMessageSetOffset( otMessage *aMessage, uint16_t aOffset )
Set the message offset in bytes.
Details | |||||
---|---|---|---|---|---|
Parameters |
|
otMessageFree
otMessageAppend
otMessageGetLength
otMessageSetLength
otMessageGetOffset
otMessageRead
otMessageWrite
otMessageSetOrigin
void otMessageSetOrigin( otMessage *aMessage, otMessageOrigin aOrigin )
Sets the message origin.
Details | |||||
---|---|---|---|---|---|
Parameters |
|
otMessageWrite
int otMessageWrite( otMessage *aMessage, uint16_t aOffset, const void *aBuf, uint16_t aLength )
Write bytes to a message.
Details | |||||||||
---|---|---|---|---|---|---|---|---|---|
Parameters |
|
||||||||
Returns |
The number of bytes written.
|
otMessageFree
otMessageAppend
otMessageGetLength
otMessageSetLength
otMessageGetOffset
otMessageSetOffset
otMessageRead
Resources
OpenThread API Reference topics originate from the source code, available on GitHub. For more information, or to contribute to our documentation, refer to Resources.