nl:: Weave:: ExchangeKontext
#include <src/lib/core/WeaveExchangeMgr.h>
Diese Klasse stellt eine laufende Unterhaltung (ExchangeContext) zwischen zwei oder mehr Knoten dar.
Fazit
Es werden Methoden für die Codierung und Kommunikation von Weave-Nachrichten in einem ExchangeContext über verschiedene Transportmechanismen wie TCP, UDP oder Weave Trusted Messaging definiert.
Öffentliche Typen |
|
---|---|
@34{
|
enum |
@35{
|
enum |
ConnectionClosedFunct)(ExchangeContext *ec, WeaveConnection *con, WEAVE_ERROR conErr)
|
Typdefvoid(*
Diese Funktion ist der Callback der Anwendung, der aufgerufen wird, wenn eine vorhandene Weave-Verbindung geschlossen wurde. |
KeyErrorFunct)(ExchangeContext *ec, WEAVE_ERROR keyErr)
|
Typdefvoid(*
Typ der Funktion zur Umgang mit Fehlermeldungen. |
MessageReceiveFunct)(ExchangeContext *ec, const IPPacketInfo *pktInfo, const WeaveMessageInfo *msgInfo, uint32_t profileId, uint8_t msgType, PacketBuffer *payload)
|
Typdefvoid(*
Diese Funktion ist der Anwendungs-Callback für die Verarbeitung einer empfangenen Weave-Nachricht. |
ResponseTimeoutFunct)(ExchangeContext *ec)
|
Typdefvoid(*
Diese Funktion ist der Callback der Anwendung, der ausgelöst wird, wenn das Zeitlimit für den Empfang einer Antwortnachricht abgelaufen ist. |
RetransmissionTimeoutFunct)(ExchangeContext *ec)
|
Typdefvoid(*
Diese Funktion ist der Callback der Anwendung, der abläuft, wenn das Zeitlimit für die erneute Übertragung einer zuvor gesendeten Nachricht abgelaufen ist. |
Timeout
|
Typdefuint32_t
Typ für die Zeitüberschreitung in ExchangeContext in Millisekunden. |
WRMPAckRcvdFunct)(ExchangeContext *ec, void *msgCtxt)
|
Typdefvoid(*
Diese Funktion ist der Anwendungsrückruf, der aufgerufen wird, wenn eine Bestätigung für eine Weave-Nachricht empfangen wird, die eine als Teil des Weave Trusted Messaging Protocol angefordert hat. |
WRMPPauseRcvdFunct)(ExchangeContext *ec, uint32_t pauseTime)
|
Typdefvoid(*
Diese Funktion ist der Callback der Anwendung, der aufgerufen wird, wenn eine Nachricht vom Typ „Drosselung“ oder „Verzögerte Zustellung“ im Rahmen des Weave Trusted Messaging Protocol empfangen wird. |
WRMPSendErrorFunct)(ExchangeContext *ec, WEAVE_ERROR err, void *msgCtxt)
|
Typdefvoid(*
Diese Funktion ist der Anwendungs-Callback, der aufgerufen wird, wenn beim Senden einer Weave-Nachricht ein Fehler auftritt. |
Öffentliche Attribute |
|
---|---|
AllowDuplicateMsgs
|
bool
Boolescher Indikator, ob doppelte Nachrichten für einen bestimmten Exchange zulässig sind.
|
AppState
|
void *
Mauszeiger auf anwendungsspezifisches Statusobjekt.
|
Con
|
[NUR LESEN] Verknüpfte Weave-Verbindung.
|
EncryptionType
|
uint8_t
Verschlüsselungstyp zum Senden einer Nachricht
|
ExchangeId
|
uint16_t
[NUR LESEN] ID der zugewiesenen Anzeigenplattform.
|
ExchangeMgr
|
[NUR LESEN] Exchange-Manager ist Inhaber.
|
KeyId
|
uint16_t
Verschlüsselungsschlüssel zum Senden einer Nachricht
|
OnAckRcvd
|
Rückruf der Anwendung für die erhaltene Bestätigung.
|
OnConnectionClosed
|
|
OnDDRcvd
|
Rückruf einer verzögerten Zustellung für die Anwendung.
|
OnKeyError
|
Diese Funktion ist der Callback der Anwendung, der aufgerufen wird, wenn eine wichtige Fehlermeldung vom Peer empfangen wurde.
|
OnMessageReceived
|
|
OnResponseTimeout
|
|
OnRetransmissionTimeout
|
|
OnSendError
|
Anwendungsrückruf für Fehler beim Senden.
|
OnThrottleRcvd
|
Callback der Anwendung für empfangene Drosselung.
|
PeerAddr
|
IPAddress
[NUR LESEN] IP-Adresse des Peer-Knotens.
|
PeerIntf
|
InterfaceId
[NUR LESEN] Schnittstelle für ausgehenden Traffic, der beim Senden von Nachrichten an den Peer verwendet wird.
|
PeerNodeId
|
uint64_t
[NUR LESEN] Knoten-ID des Peer-Knotens.
|
PeerPort
|
uint16_t
[NUR LESEN] Port des Peer-Knotens.
|
ResponseTimeout
|
Maximale Wartezeit bis zur Antwort in Millisekunden; 0 deaktiviert das Zeitlimit für Antworten.
|
RetransInterval
|
uint32_t
Zeit zwischen den Übertragungen (in Millisekunden); 0 deaktiviert die Übertragung.
|
mMsgProtocolVersion
|
uint16_t
Version des Nachrichtenprotokolls für ExchangeContext
|
mWRMPConfig
|
WRMP-Konfiguration.
|
Öffentliche Funktionen |
|
---|---|
Abort(void)
|
void
Den Exchange-Kontext sofort abbrechen und alle Verweise darauf freigeben
|
AddRef(void)
|
void
Erhöhen Sie den Referenzzähler für den Exchange-Kontext um eins.
|
AutoRequestAck() const
|
bool
Gibt an, ob eine Bestätigung angefordert werden soll, wenn eine Nachricht gesendet wird.
|
CancelRetrans(void)
|
void
Brechen Sie den Trickle-Übertragungsmechanismus ab.
|
Close(void)
|
void
Exchange-Kontext wurde korrekt geschlossen.
|
EncodeExchHeader(WeaveExchangeHeader *exchangeHeader, uint32_t profileId, uint8_t msgType, PacketBuffer *msgBuf, uint16_t sendFlags)
|
Codieren Sie den Exchange-Header in einen Nachrichtenzwischenspeicher.
|
GetAutoReleaseKey() const
|
bool
Gibt zurück, ob der mit der Anzeigenplattform verknüpfte Verschlüsselungsschlüssel freigegeben werden soll, wenn der Datenpool freigegeben wird.
|
GetCurrentRetransmitTimeout(void)
|
uint32_t
Aktuelle Zeitüberschreitung für erneute Übertragung abrufen.
|
GetPeerDescription(char *buf, uint32_t bufSize) const
|
void
Erstellt einen String, der den Peer-Knoten und die zugehörigen Adressen-/Verbindungsinformationen beschreibt.
|
HandleTrickleMessage(const IPPacketInfo *pktInfo, const WeaveMessageInfo *msgInfo)
|
void
Verarbeiten Sie Mitteilung zugunsten von Anzeigenplattformen.
|
HasPeerRequestedAck(void) const
|
bool
Finden Sie heraus, ob ein Peer die Bestätigung für mindestens eine Nachricht auf dieser Anzeigenplattform angefordert hat.
|
HasRcvdMsgFromPeer(void) const
|
bool
Legen Sie fest, ob mindestens eine Nachricht von dieser Peer-Gruppe an dieser Anzeigenplattform empfangen wurde.
|
IsAckPending(void) const
|
bool
Stellen Sie fest, ob bereits eine Bestätigung ausstehend ist, die an den Peer dieser Exchange gesendet wird.
|
IsConnectionClosed(void) const
|
bool
Bestimmen Sie, ob dem ExchangeContext eine aktive WeaveConnection zugeordnet ist.
|
IsInitiator(void) const
|
bool
Legen Sie fest, ob der Kontext Initiator der Anzeigenplattform ist.
|
IsResponseExpected(void) const
|
bool
Legt fest, ob eine Antwort für Nachrichten gesendet wird, die über diese Anzeigenplattform gesendet werden.
|
Release(void)
|
void
Verweis auf diesen Kontext der Anzeigenplattform veröffentlichen
|
SendCommonNullMessage(void)
|
Sende eine Common::Null-Nachricht.
|
SendMessage(uint32_t profileId, uint8_t msgType, PacketBuffer *msgPayload, uint16_t sendFlags, void *msgCtxt)
|
Sende eine Weave-Nachricht auf dieser Anzeigenplattform.
|
SendMessage(uint32_t profileId, uint8_t msgType, PacketBuffer *msgBuf, uint16_t sendFlags, WeaveMessageInfo *msgInfo, void *msgCtxt)
|
Sende eine Weave-Nachricht auf dieser Anzeigenplattform.
|
SetAckPending(bool inAckPending)
|
void
Legen Sie fest, ob eine Bestätigung an den Peer der Anzeigenplattform gesendet werden soll.
|
SetAutoReleaseKey(bool autoReleaseKey)
|
void
Legen Sie fest, ob der mit der Anzeigenplattform verknüpfte Verschlüsselungsschlüssel freigegeben werden soll, wenn der Datenpool freigegeben wird.
|
SetAutoRequestAck(bool autoReqAck)
|
void
Legt fest, ob eine Bestätigung beim Senden einer Nachricht angefordert werden soll.
|
SetConnectionClosed(bool inConnectionClosed)
|
void
Legen Sie das Flag „kFlagConnectionClosed“ fest.
|
SetDropAck(bool inDropAck)
|
void
Legt fest, ob WeaveExchangeManager keine Bestätigungen für diesen Kontext senden soll.
|
SetInitiator(bool inInitiator)
|
void
Legt das kFlagInitiator-Flag-Bit fest.
|
SetMsgRcvdFromPeer(bool inMsgRcvdFromPeer)
|
void
Legen Sie fest, ob eine Nachricht vom Peer auf dieser Anzeigenplattform empfangen wurde.
|
SetPeerRequestedAck(bool inPeerRequestedAck)
|
void
Damit legen Sie fest, ob für die letzte auf dieser Anzeigenplattform eingegangene Nachricht eine Bestätigung angefordert wurde.
|
SetResponseExpected(bool inResponseExpected)
|
void
Legt fest, ob auf dieser Anzeigenplattform eine Antwort erwartet wird.
|
SetShouldAutoReleaseConnection(bool autoReleaseCon)
|
void
Legen Sie fest, ob die mit der Anzeigenplattform verknüpfte Weave-Verbindung freigegeben werden soll, wenn der Austausch freigegeben wird.
|
SetupTrickleRetransmit(uint32_t retransInterval, uint8_t threshold, uint32_t timeout)
|
Richten Sie den Trick-Mechanismus für die erneute Übertragung ein, indem Sie das entsprechende Übertragungsintervall und den Grenzwert für die erneute Übertragung festlegen.
|
ShouldAutoReleaseConnection() const
|
bool
Geben Sie an, ob die mit der Anzeigenplattform verknüpfte Weave-Verbindung freigegeben werden soll, wenn der Austausch beendet ist.
|
ShouldDropAck(void) const
|
bool
Legen Sie fest, ob WeaveExchangeManager keine Bestätigung senden soll.
|
StartTimerT(void)
|
Starten Sie den Trickle-Algorithmus für die erneute Übertragung des Timers.
|
TeardownTrickleRetransmit(void)
|
void
Reißen Sie den Trickle-Transmission-Mechanismus ab, indem Sie die regelmäßigen Timer innerhalb von Trickle abbrechen und den Nachrichtenpuffer freigeben, der die Weave-Nachricht enthält.
|
UseEphemeralUDPPort(void) const
|
bool
Gibt an, ob ausgehende Nachrichten, die über die Anzeigenplattform gesendet werden, vom lokalen flüchtigen UDP-Port gesendet werden dürfen.
|
WRMPFlushAcks(void)
|
|
WRMPSendDelayedDelivery(uint32_t PauseTimeMillis, uint64_t DelayedNodeId)
|
Verspäteten Sie eine Nachricht für die verzögerte Zustellung, um einen Absenderknoten darüber zu informieren, dass es bei der zuvor gesendeten Nachricht zu einer erwarteten Verzögerung kommt, bevor sie an den Empfänger zugestellt wird.
|
WRMPSendThrottleFlow(uint32_t PauseTimeMillis)
|
Senden Sie eine Drosselungsmeldung an den Peer-Knoten, um dessen Drohung von Nachrichten zu drosseln.
|
Öffentliche Typen
@34
@34
Attribute | |
---|---|
kSendFlag_AlreadyEncoded
|
Gibt an, dass die Nachricht bereits codiert ist |
kSendFlag_AutoRetrans
|
Gibt an, dass die automatische erneute Übertragung aktiviert ist. |
kSendFlag_DefaultMulticastSourceAddress
|
Gibt an, dass beim Senden von IPv6-Multicast-Nachrichten die standardmäßige IPv6-Quelladresse ausgewählt werden soll. |
kSendFlag_DelaySend
|
Gibt an, dass das Senden der aktuellen Nachricht verzögert werden muss. |
kSendFlag_ExpectResponse
|
Gibt an, dass eine Antwort innerhalb eines bestimmten Zeitlimits erwartet wird. |
kSendFlag_FromInitiator
|
Gibt an, dass die aktuelle Nachricht der Initiator der Anzeigenplattform ist. |
kSendFlag_MulticastFromLinkLocal
|
Eingestellter Alias für |
kSendFlag_NoAutoRequestAck
|
Funktion zur Bestätigung der automatischen Anfrage beim Senden einer Nachricht unterdrücken |
kSendFlag_RequestAck
|
Dient zum Senden einer WRM-Nachricht, die eine Bestätigung anfordert. |
kSendFlag_RetainBuffer
|
Gibt an, dass der Nachrichtenpuffer nach dem Senden nicht freigegeben werden soll |
kSendFlag_RetransmissionTrickle
|
Hiermit wird angegeben, ob ein erneutes Übertragen von Trickle erforderlich ist. |
kSendFlag_ReuseMessageId
|
Gibt an, dass die Nachrichten-ID im Nachrichtenheader wiederverwendet werden kann. |
kSendFlag_ReuseSourceId
|
Gibt an, dass die Quellknoten-ID im Nachrichtenheader wiederverwendet werden kann. |
@35
@35
Attribute | |
---|---|
kGetPeerDescription_MaxLength
|
Maximale Länge des Strings (einschließlich NUL-Zeichen), die von GetPeerDescription() zurückgegeben wird |
Verbindung geschlossen
void(* ConnectionClosedFunct)(ExchangeContext *ec, WeaveConnection *con, WEAVE_ERROR conErr)
Diese Funktion ist der Callback der Anwendung, der aufgerufen wird, wenn eine vorhandene Weave-Verbindung geschlossen wurde.
Details | |||||||
---|---|---|---|---|---|---|---|
Parameter |
|
KeyErrorFunct
void(* KeyErrorFunct)(ExchangeContext *ec, WEAVE_ERROR keyErr)
Typ der Funktion zur Umgang mit Fehlermeldungen.
Details | |||||
---|---|---|---|---|---|
Parameter |
|
Nachricht empfangen
void(* MessageReceiveFunct)(ExchangeContext *ec, const IPPacketInfo *pktInfo, const WeaveMessageInfo *msgInfo, uint32_t profileId, uint8_t msgType, PacketBuffer *payload)
Diese Funktion ist der Anwendungs-Callback für die Verarbeitung einer empfangenen Weave-Nachricht.
Details | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parameter |
|
Antwortzeitüberschreitung
void(* ResponseTimeoutFunct)(ExchangeContext *ec)
Diese Funktion ist der Callback der Anwendung, der ausgelöst wird, wenn das Zeitlimit für den Empfang einer Antwortnachricht abgelaufen ist.
Details | |||
---|---|---|---|
Parameter |
|
Zeit bis zur erneuten Übertragung
void(* RetransmissionTimeoutFunct)(ExchangeContext *ec)
Diese Funktion ist der Callback der Anwendung, der abläuft, wenn das Zeitlimit für die erneute Übertragung einer zuvor gesendeten Nachricht abgelaufen ist.
Details | |||
---|---|---|---|
Parameter |
|
WRMPAckRcvd
void(* WRMPAckRcvdFunct)(ExchangeContext *ec, void *msgCtxt)
Diese Funktion ist der Anwendungsrückruf, der aufgerufen wird, wenn eine Bestätigung für eine Weave-Nachricht empfangen wird, die eine als Teil des Weave Trusted Messaging Protocol angefordert hat.
Details | |||||
---|---|---|---|---|---|
Parameter |
|
WRMPPauseRcvdFunct
void(* WRMPPauseRcvdFunct)(ExchangeContext *ec, uint32_t pauseTime)
Diese Funktion ist der Callback der Anwendung, der aufgerufen wird, wenn eine Nachricht vom Typ „Drosselung“ oder „Verzögerte Zustellung“ im Rahmen des Weave Trusted Messaging Protocol empfangen wird.
Jede dieser Nachrichten ist mit einem Zeitwert (in Millisekunden) verknüpft, der angibt, wie lange das Senden von Weave-Nachrichten in diesem ExchangeContext pausiert wird.
Details | |||||
---|---|---|---|---|---|
Parameter |
|
WRMPSendenFehler
void(* WRMPSendErrorFunct)(ExchangeContext *ec, WEAVE_ERROR err, void *msgCtxt)
Diese Funktion ist der Anwendungs-Callback, der aufgerufen wird, wenn beim Senden einer Weave-Nachricht ein Fehler auftritt.
Details | |||||||
---|---|---|---|---|---|---|---|
Parameter |
|
Öffentliche Attribute
Duplizierte Nachrichten zulassen
bool AllowDuplicateMsgs
Boolescher Indikator, ob doppelte Nachrichten für einen bestimmten Exchange zulässig sind.
App-Status
void * AppState
Mauszeiger auf anwendungsspezifisches Statusobjekt.
EncryptionType
uint8_t EncryptionType
Verschlüsselungstyp zum Senden einer Nachricht
Anzeigenplattform-ID
uint16_t ExchangeId
[NUR LESEN] ID der zugewiesenen Anzeigenplattform.
KeyId
uint16_t KeyId
Verschlüsselungsschlüssel zum Senden einer Nachricht
OnConnectionGeschlossen
ConnectionClosedFunct OnConnectionClosed
OnKeyFehler
KeyErrorFunct OnKeyError
Diese Funktion ist der Callback der Anwendung, der aufgerufen wird, wenn eine wichtige Fehlermeldung vom Peer empfangen wurde.
OnMessageReceived
MessageReceiveFunct OnMessageReceived
Zeitlimit für OnResponse
ResponseTimeoutFunct OnResponseTimeout
Zeitlimit für erneute Übertragung
RetransmissionTimeoutFunct OnRetransmissionTimeout
Peer-Add-in
IPAddress PeerAddr
[NUR LESEN] IP-Adresse des Peer-Knotens.
Peer-Intf
InterfaceId PeerIntf
[NUR LESEN] Schnittstelle für ausgehenden Traffic, der beim Senden von Nachrichten an den Peer verwendet wird.
Dies ist nur für UDP sinnvoll.
PeerNode-ID
uint64_t PeerNodeId
[NUR LESEN] Knoten-ID des Peer-Knotens.
Peer-Port
uint16_t PeerPort
[NUR LESEN] Port des Peer-Knotens.
Zeitüberschreitung der Antwort
Timeout ResponseTimeout
Maximale Wartezeit bis zur Antwort in Millisekunden; 0 deaktiviert das Zeitlimit für Antworten.
TransIntervall
uint32_t RetransInterval
Zeit zwischen den Übertragungen (in Millisekunden); 0 deaktiviert die Übertragung.
mMsgProtokollVersion
uint16_t mMsgProtocolVersion
Version des Nachrichtenprotokolls für ExchangeContext
Öffentliche Funktionen
Abbrechen
void Abort( void )
Den Exchange-Kontext sofort abbrechen und alle Verweise darauf freigeben
Hinzufügen Ref
void AddRef( void )
Erhöhen Sie den Referenzzähler für den Exchange-Kontext um eins.
AutoRequestAck
bool AutoRequestAck() const
Gibt an, ob eine Bestätigung angefordert werden soll, wenn eine Nachricht gesendet wird.
Abbrechen
void CancelRetrans( void )
Brechen Sie den Trickle-Übertragungsmechanismus ab.
Schließen
void Close( void )
Exchange-Kontext wurde korrekt geschlossen.
Durch diesen Aufruf wird die Referenzanzahl verringert und die Anzeigenplattform freigegeben, sobald die Referenzanzahl auf null fällt.
CodiererExchHeader
WEAVE_ERROR EncodeExchHeader( WeaveExchangeHeader *exchangeHeader, uint32_t profileId, uint8_t msgType, PacketBuffer *msgBuf, uint16_t sendFlags )
Codieren Sie den Exchange-Header in einen Nachrichtenzwischenspeicher.
Details | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parameter |
|
||||||||||
Rückgabewerte |
|
Automatisch abrufen
bool GetAutoReleaseKey() const
Gibt zurück, ob der mit der Anzeigenplattform verknüpfte Verschlüsselungsschlüssel freigegeben werden soll, wenn der Datenpool freigegeben wird.
GetCurrentRetransmitTimeout
uint32_t GetCurrentRetransmitTimeout( void )
Aktuelle Zeitüberschreitung für erneute Übertragung abrufen.
Es wäre entweder die anfängliche oder die Zeitüberschreitung beim erneuten Senden, je nachdem, ob ExchangeContext einen aktiven Nachrichtenaustausch mit seinem Peer hat.
Details | |
---|---|
Rückgabe |
aktuelle Sendezeit.
|
GetPeerDescription
void GetPeerDescription( char *buf, uint32_t bufSize ) const
Erstellt einen String, der den Peer-Knoten und die zugehörigen Adressen-/Verbindungsinformationen beschreibt.
Details | |||||
---|---|---|---|---|---|
Parameter |
|
HandleTrickleMessage (HandleTrickleMessage)
void HandleTrickleMessage( const IPPacketInfo *pktInfo, const WeaveMessageInfo *msgInfo )
Verarbeiten Sie Mitteilung zugunsten von Anzeigenplattformen.
Details | |||||
---|---|---|---|---|---|
Parameter |
|
HasPeerRequest Ack
bool HasPeerRequestedAck( void ) const
Finden Sie heraus, ob ein Peer die Bestätigung für mindestens eine Nachricht auf dieser Anzeigenplattform angefordert hat.
Details | |
---|---|
Rückgabe |
Gibt 'true' zurück, wenn Bestätigung angefordert wird, andernfalls 'false'
|
HasRcvdMsgFromPeer
bool HasRcvdMsgFromPeer( void ) const
Legen Sie fest, ob mindestens eine Nachricht von dieser Peer-Gruppe an dieser Anzeigenplattform empfangen wurde.
Details | |
---|---|
Rückgabe |
Gibt 'true' zurück, wenn die Nachricht empfangen wurde, andernfalls 'false'
|
IsAckAusstehend
bool IsAckPending( void ) const
Stellen Sie fest, ob bereits eine Bestätigung ausstehend ist, die an den Peer dieser Exchange gesendet wird.
IsConnectionClosed (IsConnectionClosed)
bool IsConnectionClosed( void ) const
Bestimmen Sie, ob dem ExchangeContext eine aktive WeaveConnection zugeordnet ist.
Details | |
---|---|
Rückgabe |
Gibt 'true' zurück, wenn die Verbindung beendet ist, andernfalls 'false'.
|
Initiator
bool IsInitiator( void ) const
Legen Sie fest, ob der Kontext Initiator der Anzeigenplattform ist.
Details | |
---|---|
Rückgabe |
Gibt 'true' zurück, wenn es der Initiator ist, andernfalls ##9;false'
|
Antwort erwartet
bool IsResponseExpected( void ) const
Legt fest, ob eine Antwort für Nachrichten gesendet wird, die über diese Anzeigenplattform gesendet werden.
Details | |
---|---|
Rückgabe |
Gibt 'true' zurück, wenn eine Antwort erwartet wird, andernfalls 'false'
|
Release
void Release( void )
Verweis auf diesen Kontext der Anzeigenplattform veröffentlichen
Wenn die Anzahl auf eins gesetzt ist, schließen Sie den Kontext, setzen Sie alle Anwendungs-Callbacks zurück und stoppen Sie alle Timer.
Nachricht CommonCommonMessage
WEAVE_ERROR SendCommonNullMessage( void )
Sende eine Common::Null-Nachricht.
Details | |||||||
---|---|---|---|---|---|---|---|
Rückgabewerte |
|
Nachricht senden
WEAVE_ERROR SendMessage( uint32_t profileId, uint8_t msgType, PacketBuffer *msgPayload, uint16_t sendFlags, void *msgCtxt )
Sende eine Weave-Nachricht auf dieser Anzeigenplattform.
Details | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parameter |
|
||||||||||||
Rückgabewerte |
|
Nachricht senden
WEAVE_ERROR SendMessage( uint32_t profileId, uint8_t msgType, PacketBuffer *msgBuf, uint16_t sendFlags, WeaveMessageInfo *msgInfo, void *msgCtxt )
Sende eine Weave-Nachricht auf dieser Anzeigenplattform.
Details | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parameter |
|
||||||||||||
Rückgabewerte |
|
SetAck ausstehend
void SetAckPending( bool inAckPending )
Legen Sie fest, ob eine Bestätigung an den Peer der Anzeigenplattform gesendet werden soll.
Details | |||
---|---|---|---|
Parameter |
|
SetAutoReleaseKey
void SetAutoReleaseKey( bool autoReleaseKey )
Legen Sie fest, ob der mit der Anzeigenplattform verknüpfte Verschlüsselungsschlüssel freigegeben werden soll, wenn der Datenpool freigegeben wird.
Details | |||
---|---|---|---|
Parameter |
|
SetAutoRequestAck
void SetAutoRequestAck( bool autoReqAck )
Legt fest, ob eine Bestätigung beim Senden einer Nachricht angefordert werden soll.
Details | |||
---|---|---|---|
Parameter |
|
SetConnectionGeschlossen
void SetConnectionClosed( bool inConnectionClosed )
Legen Sie das Flag „kFlagConnectionClosed“ fest.
Dieses Flag wird festgelegt, wenn eine WeaveConnection, die mit einem ExchangeContext verknüpft ist, geschlossen wird.
Details | |||
---|---|---|---|
Parameter |
|
SetDrop-Angriffe
void SetDropAck( bool inDropAck )
Legt fest, ob WeaveExchangeManager keine Bestätigungen für diesen Kontext senden soll.
Nur für die interne Fehlerbehebung.
Details | |||
---|---|---|---|
Parameter |
|
Initiator festlegen
void SetInitiator( bool inInitiator )
Legt das kFlagInitiator-Flag-Bit fest.
Dieses Flag wird von dem Knoten festgelegt, der eine Anzeigenplattform initiiert.
Details | |||
---|---|---|---|
Parameter |
|
SetMsgRcvdFromPeer
void SetMsgRcvdFromPeer( bool inMsgRcvdFromPeer )
Legen Sie fest, ob eine Nachricht vom Peer auf dieser Anzeigenplattform empfangen wurde.
Details | |||
---|---|---|---|
Parameter |
|
SetPeerAngefragt
void SetPeerRequestedAck( bool inPeerRequestedAck )
Damit legen Sie fest, ob für die letzte auf dieser Anzeigenplattform eingegangene Nachricht eine Bestätigung angefordert wurde.
Details | |||
---|---|---|---|
Parameter |
|
Erwartete Antwort
void SetResponseExpected( bool inResponseExpected )
Legt fest, ob auf dieser Anzeigenplattform eine Antwort erwartet wird.
Details | |||
---|---|---|---|
Parameter |
|
SetShouldAutoReleaseConnection
void SetShouldAutoReleaseConnection( bool autoReleaseCon )
Legen Sie fest, ob die mit der Anzeigenplattform verknüpfte Weave-Verbindung freigegeben werden soll, wenn der Austausch freigegeben wird.
Details | |||
---|---|---|---|
Parameter |
|
EinrichtenTrickleRetransmit
WEAVE_ERROR SetupTrickleRetransmit( uint32_t retransInterval, uint8_t threshold, uint32_t timeout )
Richten Sie den Trick-Mechanismus für die erneute Übertragung ein, indem Sie das entsprechende Übertragungsintervall und den Grenzwert für die erneute Übertragung festlegen.
Details | |||||||
---|---|---|---|---|---|---|---|
Parameter |
|
||||||
Rückgabe |
WEAVE_NO_ERROR, wenn die Trickle-Einrichtung erfolgreich war. Andernfalls wurde ein INET_ERROR zu einem WEAVE_ERROR zugeordnet.
|
Sollte AutoReleaseConnection
bool ShouldAutoReleaseConnection() const
Geben Sie an, ob die mit der Anzeigenplattform verknüpfte Weave-Verbindung freigegeben werden soll, wenn der Austausch beendet ist.
Schulterfall
bool ShouldDropAck( void ) const
Legen Sie fest, ob WeaveExchangeManager keine Bestätigung senden soll.
Nur für die interne Fehlerbehebung.
StartTimerT
WEAVE_ERROR StartTimerT( void )
Starten Sie den Trickle-Algorithmus für die erneute Übertragung des Timers.
Details | |
---|---|
Rückgabe |
WEAVE_NO_ERROR, wenn erfolgreich, andernfalls ein INET_ERROR, der einem WEAVE_ERROR zugeordnet ist.
|
TeardownTrickleRetransmit
void TeardownTrickleRetransmit( void )
Reißen Sie den Trickle-Transmission-Mechanismus ab, indem Sie die regelmäßigen Timer innerhalb von Trickle abbrechen und den Nachrichtenpuffer freigeben, der die Weave-Nachricht enthält.
EphemeralUDPPort
bool UseEphemeralUDPPort( void ) const
Gibt an, ob ausgehende Nachrichten, die über die Anzeigenplattform gesendet werden, vom lokalen flüchtigen UDP-Port gesendet werden dürfen.
WRMP-Flush-Geräte
WEAVE_ERROR WRMPFlushAcks( void )
WRMPSendDelayedAuslieferung
WEAVE_ERROR WRMPSendDelayedDelivery( uint32_t PauseTimeMillis, uint64_t DelayedNodeId )
Verspäteten Sie eine Nachricht für die verzögerte Zustellung, um einen Absenderknoten darüber zu informieren, dass es bei der zuvor gesendeten Nachricht zu einer erwarteten Verzögerung kommt, bevor sie an den Empfänger zugestellt wird.
Einer der möglichen Gründe dafür, dass Nachrichten vor der Zustellung verzögert werden, ist der Ruhemodus-Endpunkt des Empfängers. Diese Nachricht wird möglicherweise von einem geeigneten Zwischenknoten im Sendepfad generiert, der genügend Informationen zum Empfänger hat, um Rückschlüsse auf die verzögerte Zustellung zu ziehen. Wenn sie diese Nachricht erhalten, wird der Absender ihre Timer für Nachrichten, die eine Bestätigung zurücksenden sollen, entsprechend angepasst.
Details | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parameter |
|
||||||||||
Rückgabewerte |
|
WRMPSendThrottleFlow
WEAVE_ERROR WRMPSendThrottleFlow( uint32_t PauseTimeMillis )
Senden Sie eine Drosselungsmeldung an den Peer-Knoten, um dessen Drohung von Nachrichten zu drosseln.
Details | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parameter |
|
||||||||||||
Rückgabewerte |
|