die Botschaft und
Dieses Modul enthält Funktionen zur Bearbeitung von OpenThread-Nachrichtenpuffern.
Zusammenfassung
Aufzählungen |
|
|---|---|
otMessageOrigin{
|
enum Definiert die OpenThread-Nachrichtenquellen. |
otMessagePriority{
|
enum Definiert die Prioritätsstufen für OpenThread-Nachrichten. |
Typedefs |
|
|---|---|
otBufferInfo
|
typedefstruct otBufferInfo
Stellt die Informationen zum Nachrichtenpuffer für verschiedene Warteschlangen dar, die vom OpenThread-Stack verwendet werden. |
otMessage
|
typedefstruct otMessage
Eine intransparente Darstellung eines OpenThread-Nachrichtenpuffers. |
otMessageOrigin
|
typedefenum otMessageOrigin
Definiert die OpenThread-Nachrichtenquellen. |
otMessagePriority
|
typedefenum otMessagePriority
Definiert die Prioritätsstufen für OpenThread-Nachrichten. |
otMessageQueueInfo
|
typedefstruct otMessageQueueInfo
Stellt Informationen zu einer Nachrichtenwarteschlange dar. |
otMessageSettings
|
typedefstruct otMessageSettings
Stellt eine Nachrichteneinstellungen dar. |
Funktionen |
|
|---|---|
otMessageAppend(otMessage *aMessage, const void *aBuf, uint16_t aLength)
|
Hängen Sie Byte an eine Nachricht an.
|
otMessageFree(otMessage *aMessage)
|
void
Geben Sie einen zugewiesenen Nachrichtenpuffer kostenlos.
|
otMessageGetBufferInfo(otInstance *aInstance, otBufferInfo *aBufferInfo)
|
void
Rufen Sie die Informationen zum Nachrichtenpuffer ab.
|
otMessageGetLength(const otMessage *aMessage)
|
uint16_t
Rufen Sie die Länge der Nachricht in Byte ab.
|
otMessageGetOffset(const otMessage *aMessage)
|
uint16_t
Ruft den Nachrichtenversatz in Byte ab.
|
otMessageGetOrigin(const otMessage *aMessage)
|
Ruft den Nachrichtenursprung ab.
|
otMessageGetRss(const otMessage *aMessage)
|
int8_t
Gibt den durchschnittlichen RSS-Wert (empfangene Signalstärke) für die Nachricht zurück.
|
otMessageIsLinkSecurityEnabled(const otMessage *aMessage)
|
bool
Gibt an, ob die Linksicherheit für die Nachricht aktiviert ist.
|
otMessageIsLoopbackToHostAllowed(const otMessage *aMessage)
|
bool
Gibt an, ob die Nachricht zurück an den Host gesendet werden darf.
|
otMessageIsMulticastLoopEnabled(otMessage *aMessage)
|
bool
Gibt an, ob die angegebene Nachricht im Fall einer Multicast-Zieladresse zurückgeführt werden kann.
|
otMessageQueueDequeue(otMessageQueue *aQueue, otMessage *aMessage)
|
void
Entfernt eine Nachricht aus der angegebenen Nachrichtenwarteschlange.
|
otMessageQueueEnqueue(otMessageQueue *aQueue, otMessage *aMessage)
|
void
Fügt eine Nachricht am Ende der angegebenen Nachrichtenwarteschlange hinzu.
|
otMessageQueueEnqueueAtHead(otMessageQueue *aQueue, otMessage *aMessage)
|
void
Fügt eine Nachricht am Anfang/Anfang der angegebenen Nachrichtenwarteschlange hinzu.
|
otMessageQueueGetHead(otMessageQueue *aQueue)
|
Gibt einen Zeiger auf die Nachricht am Anfang der Warteschlange zurück.
|
otMessageQueueGetNext(otMessageQueue *aQueue, const otMessage *aMessage)
|
Gibt einen Zeiger auf die nächste Nachricht in der Warteschlange zurück, indem sie von Kopf bis Ende vorwärts iteriert wird.
|
otMessageQueueInit(otMessageQueue *aQueue)
|
void
Initialisieren Sie die Nachrichtenwarteschlange.
|
otMessageRead(const otMessage *aMessage, uint16_t aOffset, void *aBuf, uint16_t aLength)
|
uint16_t
Bytes aus einer Nachricht lesen.
|
otMessageResetBufferInfo(otInstance *aInstance)
|
void
Setzen Sie den Informationszähler für den Nachrichtenpuffer zurück, der die maximale Anzahl gleichzeitig verwendeter Puffer verfolgt.
|
otMessageSetDirectTransmission(otMessage *aMessage, bool aEnabled)
|
void
Legt fest/erzwingt, dass die Nachricht über eine direkte Übertragung weitergeleitet wird.
|
otMessageSetLength(otMessage *aMessage, uint16_t aLength)
|
Legen Sie die Nachrichtenlänge in Byte fest.
|
otMessageSetLoopbackToHostAllowed(otMessage *aMessage, bool aAllowLoopbackToHost)
|
void
Legt fest, ob die Nachricht zurück an den Host gesendet werden darf.
|
otMessageSetMulticastLoopEnabled(otMessage *aMessage, bool aEnabled)
|
void
Steuert, ob die angegebene Nachricht bei einer Multicast-Zieladresse zurückgeführt werden kann.
|
otMessageSetOffset(otMessage *aMessage, uint16_t aOffset)
|
void
Legen Sie den Nachrichtenoffset in Byte fest.
|
otMessageSetOrigin(otMessage *aMessage, otMessageOrigin aOrigin)
|
void
Legt den Ursprung der Nachricht fest.
|
otMessageWrite(otMessage *aMessage, uint16_t aOffset, const void *aBuf, uint16_t aLength)
|
int
Bytes in eine Nachricht schreiben.
|
Strukturen |
|
|---|---|
| otBufferInfo |
Stellt die Informationen zum Nachrichtenpuffer für verschiedene Warteschlangen dar, die vom OpenThread-Stack verwendet werden. |
| otMessageQueue |
Stellt eine OpenThread-Nachrichtenwarteschlange dar. |
| otMessageQueueInfo |
Stellt Informationen zu einer Nachrichtenwarteschlange dar. |
| otMessageSettings |
Stellt eine Nachrichteneinstellungen dar. |
Aufzählungen
otMessageOrigin
otMessageOrigin
Definiert die OpenThread-Nachrichtenquellen.
| Attribute | |
|---|---|
OT_MESSAGE_ORIGIN_HOST_TRUSTED
|
Nachricht von einer vertrauenswürdigen Quelle auf dem Host. |
OT_MESSAGE_ORIGIN_HOST_UNTRUSTED
|
Nachricht von einer nicht vertrauenswürdigen Quelle auf dem Host. |
OT_MESSAGE_ORIGIN_THREAD_NETIF
|
Nachricht von Thread-Netif. |
otMessagePriority
otMessagePriority
Definiert die Prioritätsstufen für OpenThread-Nachrichten.
| Attribute | |
|---|---|
OT_MESSAGE_PRIORITY_HIGH
|
Hohe Prioritätsstufe. |
OT_MESSAGE_PRIORITY_LOW
|
Niedrige Prioritätsstufe. |
OT_MESSAGE_PRIORITY_NORMAL
|
Normale Prioritätsstufe. |
Typedefs
otBufferInfo
struct otBufferInfo otBufferInfo
Stellt die Informationen zum Nachrichtenpuffer für verschiedene Warteschlangen dar, die vom OpenThread-Stack verwendet werden.
otMessage
struct otMessage otMessage
Eine intransparente Darstellung eines OpenThread-Nachrichtenpuffers.
otMessagePriority
enum otMessagePriority otMessagePriority
Definiert die Prioritätsstufen für OpenThread-Nachrichten.
otMessageQueueInfo
struct otMessageQueueInfo otMessageQueueInfo
Stellt Informationen zu einer Nachrichtenwarteschlange dar.
otMessageSettings
struct otMessageSettings otMessageSettings
Stellt eine Nachrichteneinstellungen dar.
Funktionen
otMessageAppend
otError otMessageAppend( otMessage *aMessage, const void *aBuf, uint16_t aLength )
Hängen Sie Byte an eine Nachricht an.
| Details | |||||||
|---|---|---|---|---|---|---|---|
| Parameter |
|
||||||
| Rückgabewerte |
|
||||||
otMessageFree
otMessageGetLength
otMessageSetLength
otMessageGetOffset
otMessageSetOffset
otMessageRead
otMessageWrite
otMessageFree
void otMessageFree( otMessage *aMessage )
Geben Sie einen zugewiesenen Nachrichtenpuffer kostenlos.
| Details | |||
|---|---|---|---|
| Parameter |
|
||
otMessageAppend
otMessageGetLength
otMessageSetLength
otMessageGetOffset
otMessageSetOffset
otMessageRead
otMessageWrite
otMessageGetBufferInfo
void otMessageGetBufferInfo( otInstance *aInstance, otBufferInfo *aBufferInfo )
Rufen Sie die Informationen zum Nachrichtenpuffer ab.
| Details | |||||
|---|---|---|---|---|---|
| Parameter |
|
||||
otMessageGetLength
uint16_t otMessageGetLength( const otMessage *aMessage )
Rufen Sie die Länge der Nachricht in Byte ab.
| Details | |||
|---|---|---|---|
| Parameter |
|
||
| Rückgabe |
Die Länge der Nachricht in Byte.
|
||
otMessageFree
otMessageAppend
otMessageSetLength
otMessageGetOffset
otMessageSetOffset
otMessageRead
otMessageWrite
otMessageSetLength
otMessageGetOffset
uint16_t otMessageGetOffset( const otMessage *aMessage )
Ruft den Nachrichtenversatz in Byte ab.
| Details | |||
|---|---|---|---|
| Parameter |
|
||
| Rückgabe |
Der Nachrichtenversatzwert.
|
||
otMessageFree
otMessageAppend
otMessageGetLength
otMessageSetLength
otMessageSetOffset
otMessageRead
otMessageWrite
otMessageGetOrigin
otMessageOrigin otMessageGetOrigin( const otMessage *aMessage )
Ruft den Nachrichtenursprung ab.
| Details | |||
|---|---|---|---|
| Parameter |
|
||
| Rückgabe |
Der Nachrichtenursprung.
|
||
otMessageGetRss
int8_t otMessageGetRss( const otMessage *aMessage )
Gibt den durchschnittlichen RSS-Wert (empfangene Signalstärke) für die Nachricht zurück.
| Details | |
|---|---|
| Rückgabe |
Der durchschnittliche RSS-Wert (in dBm) oder OT_RADIO_RSSI_INVALID, wenn kein durchschnittlicher RSS-Wert verfügbar ist.
|
otMessageIsLinkSecurityEnabled
bool otMessageIsLinkSecurityEnabled( const otMessage *aMessage )
Gibt an, ob die Linksicherheit für die Nachricht aktiviert ist.
| Details | |||||
|---|---|---|---|---|---|
| Parameter |
|
||||
| Rückgabewerte |
|
||||
otMessageIsLoopbackToHostAllowed
bool otMessageIsLoopbackToHostAllowed( const otMessage *aMessage )
Gibt an, ob die Nachricht zurück an den Host gesendet werden darf.
| Details | |||||
|---|---|---|---|---|---|
| Parameter |
|
||||
| Rückgabewerte |
|
||||
otMessageIsMulticastLoopEnabled
bool otMessageIsMulticastLoopEnabled( otMessage *aMessage )
Gibt an, ob die angegebene Nachricht im Fall einer Multicast-Zieladresse zurückgeführt werden kann.
Wenn aMessage zusammen mit einem otMessageInfo verwendet wird, hat das Feld mMulticastLoop aus der otMessageInfo-Struktur Vorrang und wird anstelle des für aMessage festgelegten Werts verwendet.
Diese API ist hauptsächlich für die Verwendung zusammen mit otIp6Send() vorgesehen, da hier eine bereits vorbereitete IPv6-Nachricht erwartet wird.
| Details | |||
|---|---|---|---|
| Parameter |
|
||
otMessageQueueDequeue
void otMessageQueueDequeue( otMessageQueue *aQueue, otMessage *aMessage )
Entfernt eine Nachricht aus der angegebenen Nachrichtenwarteschlange.
| Details | |||||
|---|---|---|---|---|---|
| Parameter |
|
||||
otMessageQueueEnqueue
void otMessageQueueEnqueue( otMessageQueue *aQueue, otMessage *aMessage )
Fügt eine Nachricht am Ende der angegebenen Nachrichtenwarteschlange hinzu.
| Details | |||||
|---|---|---|---|---|---|
| Parameter |
|
||||
otMessageQueueEnqueueAtHead
void otMessageQueueEnqueueAtHead( otMessageQueue *aQueue, otMessage *aMessage )
Fügt eine Nachricht am Anfang/Anfang der angegebenen Nachrichtenwarteschlange hinzu.
| Details | |||||
|---|---|---|---|---|---|
| Parameter |
|
||||
otMessageQueueGetHead
otMessage * otMessageQueueGetHead( otMessageQueue *aQueue )
Gibt einen Zeiger auf die Nachricht am Anfang der Warteschlange zurück.
| Details | |||
|---|---|---|---|
| Parameter |
|
||
| Rückgabe |
Ein Zeiger auf die Nachricht am Anfang der Warteschlange oder NULL, wenn die Warteschlange leer ist.
|
||
otMessageQueueGetNext
otMessage * otMessageQueueGetNext( otMessageQueue *aQueue, const otMessage *aMessage )
Gibt einen Zeiger auf die nächste Nachricht in der Warteschlange zurück, indem sie von Kopf bis Ende vorwärts iteriert wird.
| Details | |||||
|---|---|---|---|---|---|
| Parameter |
|
||||
| Rückgabe |
Ein Zeiger auf die nächste Nachricht in der Warteschlange nach
aMessage oder NULL, wenn aMessage is the tail of queue. NULL is returned ifaMessageis not in the queueaQueue`. |
||||
otMessageQueueInit
void otMessageQueueInit( otMessageQueue *aQueue )
Initialisieren Sie die Nachrichtenwarteschlange.
MUSS einmal und nur einmal für eine otMessageQueue-Instanz vor allen anderen otMessageQueue-Funktionen aufgerufen werden. Das Verhalten ist nicht definiert, wenn andere Warteschlangen-APIs mit einem otMessageQueue verwendet werden, bevor er initialisiert wird, oder wenn er mehr als einmal initialisiert wird.
| Details | |||
|---|---|---|---|
| Parameter |
|
||
otMessageRead
uint16_t otMessageRead( const otMessage *aMessage, uint16_t aOffset, void *aBuf, uint16_t aLength )
Bytes aus einer Nachricht lesen.
| Details | |||||||||
|---|---|---|---|---|---|---|---|---|---|
| Parameter |
|
||||||||
| Rückgabe |
Die Anzahl der gelesenen Byte.
|
||||||||
otMessageFree
otMessageAppend
otMessageGetLength
otMessageSetLength
otMessageGetOffset
otMessageSetOffset
otMessageWrite
otMessageResetBufferInfo
void otMessageResetBufferInfo( otInstance *aInstance )
Setzen Sie den Informationszähler für den Nachrichtenpuffer zurück, der die maximale Anzahl gleichzeitig verwendeter Puffer verfolgt.
Dadurch wird mMaxUsedBuffers in otBufferInfo zurückgesetzt.
| Details | |||
|---|---|---|---|
| Parameter |
|
||
otMessageSetDirectTransmission
void otMessageSetDirectTransmission( otMessage *aMessage, bool aEnabled )
Legt fest/erzwingt, dass die Nachricht über eine direkte Übertragung weitergeleitet wird.
Die Standardeinstellung für neue Nachrichten ist false.
| Details | |||||
|---|---|---|---|---|---|
| Parameter |
|
||||
otMessageSetLength
otError otMessageSetLength( otMessage *aMessage, uint16_t aLength )
Legen Sie die Nachrichtenlänge in Byte fest.
| Details | |||||
|---|---|---|---|---|---|
| Parameter |
|
||||
| Rückgabewerte |
|
||||
otMessageFree
otMessageAppend
otMessageGetLength
otMessageGetOffset
otMessageSetOffset
otMessageRead
otMessageWrite
otMessageSetLoopbackToHostAllowed
void otMessageSetLoopbackToHostAllowed( otMessage *aMessage, bool aAllowLoopbackToHost )
Legt fest, ob die Nachricht zurück an den Host gesendet werden darf.
| Details | |||||
|---|---|---|---|---|---|
| Parameter |
|
||||
otMessageSetMulticastLoopEnabled
void otMessageSetMulticastLoopEnabled( otMessage *aMessage, bool aEnabled )
Steuert, ob die angegebene Nachricht bei einer Multicast-Zieladresse zurückgeführt werden kann.
| Details | |||||
|---|---|---|---|---|---|
| Parameter |
|
||||
otMessageSetOffset
void otMessageSetOffset( otMessage *aMessage, uint16_t aOffset )
Legen Sie den Nachrichtenoffset in Byte fest.
| Details | |||||
|---|---|---|---|---|---|
| Parameter |
|
||||
otMessageFree
otMessageAppend
otMessageGetLength
otMessageSetLength
otMessageGetOffset
otMessageRead
otMessageWrite
otMessageSetOrigin
void otMessageSetOrigin( otMessage *aMessage, otMessageOrigin aOrigin )
Legt den Ursprung der Nachricht fest.
| Details | |||||
|---|---|---|---|---|---|
| Parameter |
|
||||
otMessageWrite
int otMessageWrite( otMessage *aMessage, uint16_t aOffset, const void *aBuf, uint16_t aLength )
Bytes in eine Nachricht schreiben.
| Details | |||||||||
|---|---|---|---|---|---|---|---|---|---|
| Parameter |
|
||||||||
| Rückgabe |
Die Anzahl der geschriebenen Byte.
|
||||||||
otMessageFree
otMessageAppend
otMessageGetLength
otMessageSetLength
otMessageGetOffset
otMessageSetOffset
otMessageRead
Ressourcen
OpenThread API-Referenzthemen stammen aus dem Quellcode, der auf GitHub verfügbar ist. Weitere Informationen finden Sie unter Ressourcen. Dort können Sie auch einen Beitrag zu unserer Dokumentation leisten.