nl:: Weave:: ExchangeContext
#include <src/lib/core/WeaveExchangeMgr.h>
Cette classe représente une conversation en cours (ExchangeContext) entre deux nœuds ou plus.
Résumé
Il définit des méthodes d'encodage et de communication des messages Weave dans un ExchangeContext via divers mécanismes de transport, par exemple TCP, UDP ou Weave Reliable Messaging.
Types publics |
|
---|---|
@34{
|
énum |
@35{
|
énum |
ConnectionClosedFunct)(ExchangeContext *ec, WeaveConnection *con, WEAVE_ERROR conErr)
|
typedefvoid(*
Cette fonction est le rappel d'application à invoquer lorsqu'une connexion Weave existante a été fermée. |
KeyErrorFunct)(ExchangeContext *ec, WEAVE_ERROR keyErr)
|
typedefvoid(*
Type de fonction clé de gestion des messages d'erreur. |
MessageReceiveFunct)(ExchangeContext *ec, const IPPacketInfo *pktInfo, const WeaveMessageInfo *msgInfo, uint32_t profileId, uint8_t msgType, PacketBuffer *payload)
|
typedefvoid(*
Cette fonction est le rappel de l'application pour gérer un message Weave reçu. |
ResponseTimeoutFunct)(ExchangeContext *ec)
|
typedefvoid(*
Cette fonction est le rappel de l'application à invoquer lorsque le délai avant expiration de la réception d'un message de réponse a expiré. |
RetransmissionTimeoutFunct)(ExchangeContext *ec)
|
typedefvoid(*
Cette fonction est le rappel d'application à invoquer lorsque le délai avant expiration de la retransmission d'un message envoyé précédemment a expiré. |
Timeout
|
typedefuint32_t
Type utilisé pour exprimer le délai avant expiration dans ce ExchangeContext, en millisecondes. |
WRMPAckRcvdFunct)(ExchangeContext *ec, void *msgCtxt)
|
typedefvoid(*
Cette fonction est le rappel d'application à invoquer lorsqu'un accusé de réception est reçu pour un message Weave qui en a demandé un dans le cadre du protocole de messagerie fiable Weave. |
WRMPPauseRcvdFunct)(ExchangeContext *ec, uint32_t pauseTime)
|
typedefvoid(*
Cette fonction est le rappel de l'application à invoquer lorsqu'un message Throttle ou un message de distribution retardée est reçu dans le cadre du protocole de messagerie fiable Weave. |
WRMPSendErrorFunct)(ExchangeContext *ec, WEAVE_ERROR err, void *msgCtxt)
|
typedefvoid(*
Cette fonction est le rappel de l'application à invoquer lorsqu'une erreur se produit lors de l'envoi d'un message Weave. |
Attributs publics |
|
---|---|
AllowDuplicateMsgs
|
bool
Indicateur booléen qui détermine si des messages en double sont autorisés pour un échange donné.
|
AppState
|
void *
Pointeur vers un objet d'état spécifique à l'application.
|
Con
|
[LIRE UNIQUEMENT] Connexion Weave associée.
|
EncryptionType
|
uint8_t
Type de chiffrement à utiliser lors de l'envoi d'un message.
|
ExchangeId
|
uint16_t
[LIRE SEULE] ID de place de marché attribué.
|
ExchangeMgr
|
[LECTURE SEULE] Gestionnaire de place de marché propriétaire.
|
KeyId
|
uint16_t
Clé de chiffrement à utiliser lors de l'envoi d'un message.
|
OnAckRcvd
|
Rappel d'application pour l'accusé de réception reçu.
|
OnConnectionClosed
|
|
OnDDRcvd
|
Rappel d'application pour le message de livraison retardée reçu.
|
OnKeyError
|
Cette fonction est le rappel de l'application à invoquer lorsque le pair reçoit un message d'erreur clé.
|
OnMessageReceived
|
|
OnResponseTimeout
|
|
OnRetransmissionTimeout
|
|
OnSendError
|
Rappel de l'application en cas d'erreur lors de l'envoi.
|
OnThrottleRcvd
|
Rappel d'application pour le message Throttle reçu.
|
PeerAddr
|
IPAddress
[READ ONLY] Adresse IP du nœud pair.
|
PeerIntf
|
InterfaceId
[READ ONLY] Interface sortante à utiliser lors de l'envoi de messages au pair.
|
PeerNodeId
|
uint64_t
[LECTURE UNIQUEMENT] ID du nœud pair.
|
PeerPort
|
uint16_t
[READ ONLY] Port du nœud pair.
|
ResponseTimeout
|
Délai d'attente maximal pour la réponse (en millisecondes) 0 désactive le délai avant expiration de la réponse.
|
RetransInterval
|
uint32_t
Temps entre les retransmissions (en millisecondes) 0 désactive les retransmissions.
|
mMsgProtocolVersion
|
uint16_t
Version du protocole de message pour ExchangeContext.
|
mWRMPConfig
|
configuration WRMP.
|
Fonctions publiques |
|
---|---|
Abort(void)
|
void
Annulez immédiatement le contexte Exchange et libérez toutes les références à celui-ci.
|
AddRef(void)
|
void
Incrément d'une unité le compteur de référence pour le contexte de la place de marché.
|
AutoRequestAck() const
|
bool
Indique si un accusé de réception est demandé à chaque envoi d'un message.
|
CancelRetrans(void)
|
void
Annulez le mécanisme de retransmission Trickle.
|
Close(void)
|
void
Bouclez progressivement un contexte d'échange.
|
EncodeExchHeader(WeaveExchangeHeader *exchangeHeader, uint32_t profileId, uint8_t msgType, PacketBuffer *msgBuf, uint16_t sendFlags)
|
Encodez l'en-tête d'échange dans un tampon de message.
|
GetAutoReleaseKey() const
|
bool
Indique si la clé de chiffrement associée à l'échange doit être libérée une fois l'échange libéré.
|
GetCurrentRetransmitTimeout(void)
|
uint32_t
Permet d'obtenir le délai avant expiration actuel de la retransmission.
|
GetPeerDescription(char *buf, uint32_t bufSize) const
|
void
Construit une chaîne décrivant le nœud pair et les informations de connexion / adresse associées.
|
HandleTrickleMessage(const IPPacketInfo *pktInfo, const WeaveMessageInfo *msgInfo)
|
void
Gérer les messages minimes dans le contexte de l'échange.
|
HasPeerRequestedAck(void) const
|
bool
Déterminez si le pair a demandé un accusé de réception pour au moins un message sur cet échange.
|
HasRcvdMsgFromPeer(void) const
|
bool
Déterminez si au moins un message a été reçu de la part du pair sur cet échange.
|
IsAckPending(void) const
|
bool
Déterminez si un accusé de réception est déjà en attente d'envoi au pair sur cet échange.
|
IsConnectionClosed(void) const
|
bool
Déterminez si ExchangeContext est associé à un WeaveConnection actif.
|
IsInitiator(void) const
|
bool
Déterminez si le contexte est à l'origine de l'échange.
|
IsResponseExpected(void) const
|
bool
Déterminez si une réponse est attendue pour les messages envoyés via cet échange.
|
Release(void)
|
void
Libérez la référence à ce contexte de place de marché.
|
SendCommonNullMessage(void)
|
Envoyez un message Common::Null.
|
SendMessage(uint32_t profileId, uint8_t msgType, PacketBuffer *msgPayload, uint16_t sendFlags, void *msgCtxt)
|
Envoyez un message Weave sur cet échange.
|
SendMessage(uint32_t profileId, uint8_t msgType, PacketBuffer *msgBuf, uint16_t sendFlags, WeaveMessageInfo *msgInfo, void *msgCtxt)
|
Envoyez un message Weave sur cet échange.
|
SetAckPending(bool inAckPending)
|
void
Définissez si un accusé de réception doit être renvoyé au pair sur cet échange.
|
SetAutoReleaseKey(bool autoReleaseKey)
|
void
Indiquez si la clé de chiffrement associée à l'échange doit être libérée lors de la libération de l'échange.
|
SetAutoRequestAck(bool autoReqAck)
|
void
Définissez si un accusé de réception doit être demandé à chaque envoi d'un message.
|
SetConnectionClosed(bool inConnectionClosed)
|
void
Définissez le bit d'indicateur kFlagConnectionClosed.
|
SetDropAck(bool inDropAck)
|
void
Indiquez si WeaveExchangeManager ne doit pas envoyer d'accusés de réception pour ce contexte.
|
SetInitiator(bool inInitiator)
|
void
Définissez le bit d'indicateur kFlagInitiator.
|
SetMsgRcvdFromPeer(bool inMsgRcvdFromPeer)
|
void
Définissez si un message a été reçu du pair sur cet échange.
|
SetPeerRequestedAck(bool inPeerRequestedAck)
|
void
Définir si un accusé de réception a été demandé dans le dernier message reçu sur cet échange.
|
SetResponseExpected(bool inResponseExpected)
|
void
Indiquez si une réponse est attendue sur cet échange.
|
SetShouldAutoReleaseConnection(bool autoReleaseCon)
|
void
Indiquez si la connexion Weave associée à l'échange doit être libérée une fois l'échange libéré.
|
SetupTrickleRetransmit(uint32_t retransInterval, uint8_t threshold, uint32_t timeout)
|
Configurez le mécanisme de retransmission minime en définissant l'intervalle de retransmission et le seuil de retransmission correspondants.
|
ShouldAutoReleaseConnection() const
|
bool
Indique si la connexion Weave associée à l'échange doit être libérée une fois l'échange libéré.
|
ShouldDropAck(void) const
|
bool
Déterminez si WeaveExchangeManager ne doit pas envoyer de confirmation.
|
StartTimerT(void)
|
Démarre le mécanisme de minuteur de retransmission périodique de l'algorithme de rediffusion Trickle.
|
TeardownTrickleRetransmit(void)
|
void
Supprimez le mécanisme de retransmission Trickle en annulant les minuteurs périodiques dans Trickle et en libérant le tampon du message contenant le message Weave.
|
UseEphemeralUDPPort(void) const
|
bool
Indique si les messages sortants envoyés via l'échange doivent être envoyés à partir du port UDP local éphémère.
|
WRMPFlushAcks(void)
|
|
WRMPSendDelayedDelivery(uint32_t PauseTimeMillis, uint64_t DelayedNodeId)
|
Envoyez un message de distribution retardée pour avertir un nœud expéditeur que le message précédemment envoyé subirait un retard prévu avant d'être distribué au destinataire.
|
WRMPSendThrottleFlow(uint32_t PauseTimeMillis)
|
Envoyer un message de flux de limitation au nœud pair pour lui demander de limiter l'envoi de messages
|
Types publics
p. 34
@34
Propriétés | |
---|---|
kSendFlag_AlreadyEncoded
|
Indique que le message est déjà encodé. |
kSendFlag_AutoRetrans
|
Permet d'indiquer que la retransmission automatique est activée. |
kSendFlag_DefaultMulticastSourceAddress
|
Permet d'indiquer que la sélection de l'adresse source IPv6 par défaut doit être utilisée lors de l'envoi de messages IPv6 multicast. |
kSendFlag_DelaySend
|
Permet d'indiquer que l'envoi du message actuel doit être retardé. |
kSendFlag_ExpectResponse
|
Permet d'indiquer qu'une réponse est attendue dans un délai spécifié. |
kSendFlag_FromInitiator
|
Utilisé pour indiquer que le message actuel est l'initiateur de l'échange. |
kSendFlag_MulticastFromLinkLocal
|
Alias obsolète pour |
kSendFlag_NoAutoRequestAck
|
Supprimer la fonctionnalité d'accusé de réception des demandes automatiques lors de l'envoi d'un message |
kSendFlag_RequestAck
|
Utilisé pour envoyer un message WRM demandant un accusé de réception. |
kSendFlag_RetainBuffer
|
Permet d'indiquer que le tampon de messages ne doit pas être libéré après l'envoi. |
kSendFlag_RetransmissionTrickle
|
Utilisé pour indiquer l'exigence de retransmissions pour Trickle. |
kSendFlag_ReuseMessageId
|
Permet d'indiquer que l'ID du message dans l'en-tête du message peut être réutilisé. |
kSendFlag_ReuseSourceId
|
Permet d'indiquer que l'ID du nœud source dans l'en-tête du message peut être réutilisé. |
p. 35
@35
Propriétés | |
---|---|
kGetPeerDescription_MaxLength
|
Longueur maximale de la chaîne (caractère NUL compris) renvoyée par GetPeerDescription(). |
ConnectionClosedFunct
void(* ConnectionClosedFunct)(ExchangeContext *ec, WeaveConnection *con, WEAVE_ERROR conErr)
Cette fonction est le rappel d'application à invoquer lorsqu'une connexion Weave existante a été fermée.
Détails | |||||||
---|---|---|---|---|---|---|---|
Paramètres |
|
KeyErrorFunct
void(* KeyErrorFunct)(ExchangeContext *ec, WEAVE_ERROR keyErr)
Type de fonction clé de gestion des messages d'erreur.
Détails | |||||
---|---|---|---|---|---|
Paramètres |
|
MessageReceiveFunct
void(* MessageReceiveFunct)(ExchangeContext *ec, const IPPacketInfo *pktInfo, const WeaveMessageInfo *msgInfo, uint32_t profileId, uint8_t msgType, PacketBuffer *payload)
Cette fonction est le rappel de l'application pour gérer un message Weave reçu.
Détails | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Paramètres |
|
ResponseTimeoutFunct
void(* ResponseTimeoutFunct)(ExchangeContext *ec)
Cette fonction est le rappel de l'application à invoquer lorsque le délai avant expiration de la réception d'un message de réponse a expiré.
Détails | |||
---|---|---|---|
Paramètres |
|
RetransmissionTimeoutFunct
void(* RetransmissionTimeoutFunct)(ExchangeContext *ec)
Cette fonction est le rappel d'application à invoquer lorsque le délai avant expiration de la retransmission d'un message envoyé précédemment a expiré.
Détails | |||
---|---|---|---|
Paramètres |
|
Délai avant expiration
uint32_t Timeout
Type utilisé pour exprimer le délai avant expiration dans ce ExchangeContext, en millisecondes.
WRMPAckRcvdFunct
void(* WRMPAckRcvdFunct)(ExchangeContext *ec, void *msgCtxt)
Cette fonction est le rappel d'application à invoquer lorsqu'un accusé de réception est reçu pour un message Weave qui en a demandé un dans le cadre du protocole de messagerie fiable Weave.
Détails | |||||
---|---|---|---|---|---|
Paramètres |
|
WRMPPauseRcvdFunct
void(* WRMPPauseRcvdFunct)(ExchangeContext *ec, uint32_t pauseTime)
Cette fonction est le rappel de l'application à invoquer lorsqu'un message Throttle ou un message de distribution retardée est reçu dans le cadre du protocole de messagerie fiable Weave.
Chacun de ces messages est accompagné d'une valeur de temps (en millisecondes) indiquant le temps nécessaire pour suspendre l'envoi des messages Weave sur ce ExchangeContext.
Détails | |||||
---|---|---|---|---|---|
Paramètres |
|
WRMPSendErrorFunct
void(* WRMPSendErrorFunct)(ExchangeContext *ec, WEAVE_ERROR err, void *msgCtxt)
Cette fonction est le rappel de l'application à invoquer lorsqu'une erreur se produit lors de l'envoi d'un message Weave.
Détails | |||||||
---|---|---|---|---|---|---|---|
Paramètres |
|
Attributs publics
AllowDuplicateMsgs
bool AllowDuplicateMsgs
Indicateur booléen qui détermine si des messages en double sont autorisés pour un échange donné.
AppState
void * AppState
Pointeur vers un objet d'état spécifique à l'application.
EncryptionType
uint8_t EncryptionType
Type de chiffrement à utiliser lors de l'envoi d'un message.
ExchangeId
uint16_t ExchangeId
[LIRE SEULE] ID de place de marché attribué.
ExchangeMgr
WeaveExchangeManager * ExchangeMgr
[LECTURE SEULE] Gestionnaire de place de marché propriétaire.
KeyId
uint16_t KeyId
Clé de chiffrement à utiliser lors de l'envoi d'un message.
OnConnectionClosed
ConnectionClosedFunct OnConnectionClosed
OnDDRcvd
WRMPPauseRcvdFunct OnDDRcvd
Rappel d'application pour le message de livraison retardée reçu.
OnKeyError
KeyErrorFunct OnKeyError
Cette fonction est le rappel de l'application à invoquer lorsque le pair reçoit un message d'erreur clé.
OnMessageReceived
MessageReceiveFunct OnMessageReceived
OnResponseTimeout
ResponseTimeoutFunct OnResponseTimeout
OnRetransmissionTimeout
RetransmissionTimeoutFunct OnRetransmissionTimeout
OnThrottleRcvd
WRMPPauseRcvdFunct OnThrottleRcvd
Rappel d'application pour le message Throttle reçu.
PeerAddr
IPAddress PeerAddr
[READ ONLY] Adresse IP du nœud pair.
PeerIntf
InterfaceId PeerIntf
[READ ONLY] Interface sortante à utiliser lors de l'envoi de messages au pair.
(significatif uniquement pour UDP).
PeerNodeId
uint64_t PeerNodeId
[LECTURE UNIQUEMENT] ID du nœud pair.
PeerPort
uint16_t PeerPort
[READ ONLY] Port du nœud pair.
ResponseTimeout
Timeout ResponseTimeout
Délai d'attente maximal pour la réponse (en millisecondes) 0 désactive le délai avant expiration de la réponse.
RetransInterval
uint32_t RetransInterval
Temps entre les retransmissions (en millisecondes) 0 désactive les retransmissions.
mMsgProtocolVersion
uint16_t mMsgProtocolVersion
Version du protocole de message pour ExchangeContext.
Fonctions publiques
Annuler
void Abort( void )
Annulez immédiatement le contexte Exchange et libérez toutes les références à celui-ci.
AddRef
void AddRef( void )
Incrément d'une unité le compteur de référence pour le contexte de la place de marché.
AutoRequestAck
bool AutoRequestAck() const
Indique si un accusé de réception est demandé à chaque envoi d'un message.
CancelRetrans
void CancelRetrans( void )
Annulez le mécanisme de retransmission Trickle.
Fermer
void Close( void )
Bouclez progressivement un contexte d'échange.
Cet appel décrémente le nombre de références et libère l'échange lorsque ce nombre passe à zéro.
EncodeExchHeader
WEAVE_ERROR EncodeExchHeader( WeaveExchangeHeader *exchangeHeader, uint32_t profileId, uint8_t msgType, PacketBuffer *msgBuf, uint16_t sendFlags )
Encodez l'en-tête d'échange dans un tampon de message.
Détails | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Paramètres |
|
||||||||||
Valeurs renvoyées |
|
GetAutoReleaseKey
bool GetAutoReleaseKey() const
Indique si la clé de chiffrement associée à l'échange doit être libérée une fois l'échange libéré.
GetCurrentRetransmitTimeout
uint32_t GetCurrentRetransmitTimeout( void )
Permet d'obtenir le délai avant expiration actuel de la retransmission.
Il s'agit du délai avant expiration initial ou actif de la retransmission selon que ExchangeContext dispose ou non d'un échange de messages actif avec son pair.
Détails | |
---|---|
Renvoie |
l'heure de retransmission
actuelle.
|
GetPeerDescription
void GetPeerDescription( char *buf, uint32_t bufSize ) const
Construit une chaîne décrivant le nœud pair et les informations de connexion / adresse associées.
Détails | |||||
---|---|---|---|---|---|
Paramètres |
|
HandleTrickleMessage
void HandleTrickleMessage( const IPPacketInfo *pktInfo, const WeaveMessageInfo *msgInfo )
Gérer les messages minimes dans le contexte de l'échange.
Détails | |||||
---|---|---|---|---|---|
Paramètres |
|
HasPeerRequestedAck
bool HasPeerRequestedAck( void ) const
Déterminez si le pair a demandé un accusé de réception pour au moins un message sur cet échange.
Détails | |
---|---|
Renvoie |
Affiche la valeur "true". si une confirmation est demandée, sinon "false".
|
HasRcvdMsgFromPeer
bool HasRcvdMsgFromPeer( void ) const
Déterminez si au moins un message a été reçu de la part du pair sur cet échange.
Détails | |
---|---|
Renvoie |
Affiche la valeur "true". Si le message est reçu, sinon "false".
|
IsAckPending
bool IsAckPending( void ) const
Déterminez si un accusé de réception est déjà en attente d'envoi au pair sur cet échange.
IsConnectionClosed
bool IsConnectionClosed( void ) const
Déterminez si ExchangeContext est associé à un WeaveConnection actif.
Détails | |
---|---|
Renvoie |
Affiche la valeur "true". si la connexion est fermée, sinon "false".
|
IsInitiator
bool IsInitiator( void ) const
Déterminez si le contexte est à l'origine de l'échange.
Détails | |
---|---|
Renvoie |
Affiche la valeur "true". si c'est l'initiateur, sinon "false".
|
IsResponseExpected
bool IsResponseExpected( void ) const
Déterminez si une réponse est attendue pour les messages envoyés via cet échange.
Détails | |
---|---|
Renvoie |
Affiche la valeur "true". Si la réponse est attendue, sinon "false".
|
Version
void Release( void )
Libérez la référence à ce contexte de place de marché.
Si le décompte est inférieur à 1, fermez le contexte, réinitialisez tous les rappels de l'application et arrêtez tous les minuteurs.
SendCommonNullMessage
WEAVE_ERROR SendCommonNullMessage( void )
Envoyez un message Common::Null.
Détails | |||||||
---|---|---|---|---|---|---|---|
Valeurs renvoyées |
|
SendMessage
WEAVE_ERROR SendMessage( uint32_t profileId, uint8_t msgType, PacketBuffer *msgPayload, uint16_t sendFlags, void *msgCtxt )
Envoyez un message Weave sur cet échange.
Détails | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Paramètres |
|
||||||||||||
Valeurs renvoyées |
|
SendMessage
WEAVE_ERROR SendMessage( uint32_t profileId, uint8_t msgType, PacketBuffer *msgBuf, uint16_t sendFlags, WeaveMessageInfo *msgInfo, void *msgCtxt )
Envoyez un message Weave sur cet échange.
Détails | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Paramètres |
|
||||||||||||
Valeurs renvoyées |
|
SetAckPending
void SetAckPending( bool inAckPending )
Définissez si un accusé de réception doit être renvoyé au pair sur cet échange.
Détails | |||
---|---|---|---|
Paramètres |
|
SetAutoReleaseKey
void SetAutoReleaseKey( bool autoReleaseKey )
Indiquez si la clé de chiffrement associée à l'échange doit être libérée lors de la libération de l'échange.
Détails | |||
---|---|---|---|
Paramètres |
|
SetAutoRequestAck
void SetAutoRequestAck( bool autoReqAck )
Définissez si un accusé de réception doit être demandé à chaque envoi d'un message.
Détails | |||
---|---|---|---|
Paramètres |
|
SetConnectionClosed
void SetConnectionClosed( bool inConnectionClosed )
Définissez le bit d'indicateur kFlagConnectionClosed.
Cet indicateur est défini lorsqu'une WeaveConnection associée à un ExchangeContext est fermée.
Détails | |||
---|---|---|---|
Paramètres |
|
SetDropAck
void SetDropAck( bool inDropAck )
Indiquez si WeaveExchangeManager ne doit pas envoyer d'accusés de réception pour ce contexte.
Usage interne au débogage uniquement.
Détails | |||
---|---|---|---|
Paramètres |
|
SetInitiator
void SetInitiator( bool inInitiator )
Définissez le bit d'indicateur kFlagInitiator.
Cet indicateur est défini par le nœud qui lance un échange.
Détails | |||
---|---|---|---|
Paramètres |
|
SetMsgRcvdFromPeer
void SetMsgRcvdFromPeer( bool inMsgRcvdFromPeer )
Définissez si un message a été reçu du pair sur cet échange.
Détails | |||
---|---|---|---|
Paramètres |
|
SetPeerRequestedAck
void SetPeerRequestedAck( bool inPeerRequestedAck )
Définir si un accusé de réception a été demandé dans le dernier message reçu sur cet échange.
Détails | |||
---|---|---|---|
Paramètres |
|
SetResponseExpected
void SetResponseExpected( bool inResponseExpected )
Indiquez si une réponse est attendue sur cet échange.
Détails | |||
---|---|---|---|
Paramètres |
|
SetShouldAutoReleaseConnection
void SetShouldAutoReleaseConnection( bool autoReleaseCon )
Indiquez si la connexion Weave associée à l'échange doit être libérée une fois l'échange libéré.
Détails | |||
---|---|---|---|
Paramètres |
|
SetupTrickleRetransmit
WEAVE_ERROR SetupTrickleRetransmit( uint32_t retransInterval, uint8_t threshold, uint32_t timeout )
Configurez le mécanisme de retransmission minime en définissant l'intervalle de retransmission et le seuil de retransmission correspondants.
Détails | |||||||
---|---|---|---|---|---|---|---|
Paramètres |
|
||||||
Renvoie |
WEAVE_NO_ERROR si la configuration de Trickle a réussi, INET_ERROR est mappée à une erreur WEAVE_ERROR.
|
ShouldAutoReleaseConnection
bool ShouldAutoReleaseConnection() const
Indique si la connexion Weave associée à l'échange doit être libérée une fois l'échange libéré.
ShouldDropAck
bool ShouldDropAck( void ) const
Déterminez si WeaveExchangeManager ne doit pas envoyer de confirmation.
Usage interne au débogage uniquement.
StartTimerT
WEAVE_ERROR StartTimerT( void )
Démarre le mécanisme de minuteur de retransmission périodique de l'algorithme de rediffusion Trickle.
Détails | |
---|---|
Renvoie |
WEAVE_NO_ERROR en cas de réussite, sinon INET_ERROR mappée à WEAVE_ERROR.
|
TeardownTrickleRetransmit
void TeardownTrickleRetransmit( void )
Supprimez le mécanisme de retransmission Trickle en annulant les minuteurs périodiques dans Trickle et en libérant le tampon du message contenant le message Weave.
UseEphemeralUDPPort
bool UseEphemeralUDPPort( void ) const
Indique si les messages sortants envoyés via l'échange doivent être envoyés à partir du port UDP local éphémère.
WRMPFlushAcks
WEAVE_ERROR WRMPFlushAcks( void )
WRMPSendDelayedDelivery
WEAVE_ERROR WRMPSendDelayedDelivery( uint32_t PauseTimeMillis, uint64_t DelayedNodeId )
Envoyez un message de distribution retardée pour avertir un nœud expéditeur que le message précédemment envoyé subirait un retard prévu avant d'être distribué au destinataire.
L'une des causes possibles du retard de distribution des messages avant leur distribution est le fait que le nœud final destinataire est en veille. Ce message est potentiellement généré par un nœud intermédiaire approprié dans le chemin d'envoi qui dispose de suffisamment de connaissances sur le destinataire pour déduire le retard de distribution. À la réception de ce message, l'expéditeur ajuste ses minuteurs de retransmission pour les messages nécessitant des accusés de réception.
Détails | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Paramètres |
|
||||||||||
Valeurs renvoyées |
|
WRMPSendThrottleFlow
WEAVE_ERROR WRMPSendThrottleFlow( uint32_t PauseTimeMillis )
Envoyer un message de flux de limitation au nœud pair pour lui demander de limiter l'envoi de messages
Détails | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Paramètres |
|
||||||||||||
Valeurs renvoyées |
|