nl:: Weave:: ExchangeContext
#include <src/lib/core/WeaveExchangeMgr.h>
Questo corso rappresenta una conversazione in corso (ExchangeContext) tra due o più nodi.
Riepilogo
Definisce i metodi per la codifica e la comunicazione dei messaggi Weave all'interno di ExchangeContext su vari meccanismi di trasporto, ad esempio TCP, UDP o Messaggistica affidabile.
Tipi pubblici |
|
---|---|
@34{
|
enum |
@35{
|
enum |
ConnectionClosedFunct)(ExchangeContext *ec, WeaveConnection *con, WEAVE_ERROR conErr)
|
typedefvoid(*
Questa funzione è il callback dell'applicazione da attivare quando una connessione Weave esistente è stata chiusa. |
KeyErrorFunct)(ExchangeContext *ec, WEAVE_ERROR keyErr)
|
typedefvoid(*
Tipo di funzione di gestione dei messaggi di errore chiave. |
MessageReceiveFunct)(ExchangeContext *ec, const IPPacketInfo *pktInfo, const WeaveMessageInfo *msgInfo, uint32_t profileId, uint8_t msgType, PacketBuffer *payload)
|
typedefvoid(*
Questa funzione è il callback dell'applicazione per la gestione di un messaggio Weave ricevuto. |
ResponseTimeoutFunct)(ExchangeContext *ec)
|
typedefvoid(*
Questa funzione è il callback dell'applicazione da attivare quando il timeout per la ricezione di un messaggio di risposta è scaduto. |
RetransmissionTimeoutFunct)(ExchangeContext *ec)
|
typedefvoid(*
Questa funzione è il callback dell'applicazione da richiamare quando è scaduto il timeout per la ritrasmissione di un messaggio inviato in precedenza. |
Timeout
|
typedefuint32_t
Tipo utilizzato per esprimere il timeout in questo ExchangeContext, in millisecondi. |
WRMPAckRcvdFunct)(ExchangeContext *ec, void *msgCtxt)
|
typedefvoid(*
Questa funzione è il callback dell'applicazione da richiamare quando si riceve una conferma per un messaggio Weave che ne ha richiesto una come parte del protocollo di messaggistica Weave Reliable. |
WRMPPauseRcvdFunct)(ExchangeContext *ec, uint32_t pauseTime)
|
typedefvoid(*
Questa funzione è il callback dell'applicazione da richiamare quando un messaggio di limitazione o consegna ritardata viene ricevuto come parte del protocollo di messaggistica affidabile di Weave. |
WRMPSendErrorFunct)(ExchangeContext *ec, WEAVE_ERROR err, void *msgCtxt)
|
typedefvoid(*
Questa funzione è il callback dell'applicazione da richiamare quando si verifica un errore durante l'invio di un messaggio Weave. |
Attributi pubblici |
|
---|---|
AllowDuplicateMsgs
|
bool
Indicatore booleano che indica se i messaggi duplicati sono consentiti per un determinato scambio.
|
AppState
|
void *
Puntatore all'oggetto di stato specifico dell'applicazione.
|
Con
|
[SOLO LETTURA] Connessione Weave associata.
|
EncryptionType
|
uint8_t
Tipo di crittografia da utilizzare per l'invio di un messaggio.
|
ExchangeId
|
uint16_t
[SOLO LETTURA] ID piattaforma di scambio assegnata.
|
ExchangeMgr
|
[SOLO LETTURA] Possedere il gestore della piattaforma di scambio pubblicitario.
|
KeyId
|
uint16_t
Chiave di crittografia da utilizzare per l'invio di un messaggio.
|
OnAckRcvd
|
Callback dell'applicazione per conferma ricevuta.
|
OnConnectionClosed
|
|
OnDDRcvd
|
Callback dell'applicazione per il messaggio di consegna ritardata ricevuto.
|
OnKeyError
|
Questa funzione è il callback dell'applicazione da richiamare quando viene ricevuto un messaggio di errore chiave dal peer.
|
OnMessageReceived
|
|
OnResponseTimeout
|
|
OnRetransmissionTimeout
|
|
OnSendError
|
Callback dell'applicazione per errore durante l'invio.
|
OnThrottleRcvd
|
Callback dell'applicazione per il messaggio della limitazione ricevuto.
|
PeerAddr
|
IPAddress
[SOLO LETTURA] Indirizzo IP del nodo peer.
|
PeerIntf
|
InterfaceId
[SOLO LETTURA] Interfaccia in uscita da utilizzare per l'invio di messaggi al peer.
|
PeerNodeId
|
uint64_t
[SOLO LETTURA] ID nodo del nodo peer.
|
PeerPort
|
uint16_t
[SOLO LETTURA] Porta del nodo peer.
|
ResponseTimeout
|
Tempo massimo di attesa di una risposta (in millisecondi); 0 disabilita il timeout della risposta.
|
RetransInterval
|
uint32_t
Tempo tra una ritrasmissione (in millisecondi); 0 disabilita le ritrasmissioni.
|
mMsgProtocolVersion
|
uint16_t
Versione di Message Protocol per ExchangeContext.
|
mWRMPConfig
|
configurazione WRMP.
|
Funzioni pubbliche |
|
---|---|
Abort(void)
|
void
Interrompi immediatamente il contesto di Exchange e rilascia tutti i riferimenti a quel contesto.
|
AddRef(void)
|
void
Aumenta il contatore di riferimento per il contesto dello scambio di uno.
|
AutoRequestAck() const
|
bool
Indica se verrà richiesta una conferma ogni volta che viene inviato un messaggio.
|
CancelRetrans(void)
|
void
Annulla il meccanismo di ritrasmissione "trickle".
|
Close(void)
|
void
Chiudi con cura il contesto di uno scambio.
|
EncodeExchHeader(WeaveExchangeHeader *exchangeHeader, uint32_t profileId, uint8_t msgType, PacketBuffer *msgBuf, uint16_t sendFlags)
|
Codifica l'intestazione dello scambio in un buffer dei messaggi.
|
GetAutoReleaseKey() const
|
bool
Indica se la chiave di crittografia associata alla piattaforma di scambio deve essere rilasciata quando la piattaforma di scambio viene liberata.
|
GetCurrentRetransmitTimeout(void)
|
uint32_t
Recupera il timeout attuale per la ritrasmissione.
|
GetPeerDescription(char *buf, uint32_t bufSize) const
|
void
Crea una stringa che descrive il nodo peer e le informazioni relative a indirizzo / connessione associate.
|
HandleTrickleMessage(const IPPacketInfo *pktInfo, const WeaveMessageInfo *msgInfo)
|
void
Gestire il messaggio di inganno all'interno del contesto dello scambio.
|
HasPeerRequestedAck(void) const
|
bool
Determina se il peer ha richiesto la conferma per almeno un messaggio in questo scambio.
|
HasRcvdMsgFromPeer(void) const
|
bool
Determina se almeno un messaggio è stato ricevuto da questo scambio da un peer.
|
IsAckPending(void) const
|
bool
Determina se esiste già una conferma in attesa da inviare al peer in questa piattaforma di scambio pubblicitario.
|
IsConnectionClosed(void) const
|
bool
Determina se per ExchangeContext è associata una WeaveConnection attiva associata.
|
IsInitiator(void) const
|
bool
Determina se il contesto è l'iniziatore dello scambio.
|
IsResponseExpected(void) const
|
bool
Determina se è prevista una risposta per i messaggi inviati su questo scambio.
|
Release(void)
|
void
Rilascia il riferimento a questo contesto dello scambio.
|
SendCommonNullMessage(void)
|
Invia un messaggio Common::Null.
|
SendMessage(uint32_t profileId, uint8_t msgType, PacketBuffer *msgPayload, uint16_t sendFlags, void *msgCtxt)
|
Invia un messaggio Weave su questo scambio.
|
SendMessage(uint32_t profileId, uint8_t msgType, PacketBuffer *msgBuf, uint16_t sendFlags, WeaveMessageInfo *msgInfo, void *msgCtxt)
|
Invia un messaggio Weave su questo scambio.
|
SetAckPending(bool inAckPending)
|
void
Specifica se una conferma deve essere inviata al peer in questa piattaforma di scambio pubblicitario.
|
SetAutoReleaseKey(bool autoReleaseKey)
|
void
Specifica se la chiave di crittografia associata alla piattaforma di scambio deve essere rilasciata quando la piattaforma di scambio viene liberata.
|
SetAutoRequestAck(bool autoReqAck)
|
void
Consente di impostare se una conferma deve essere richiesta ogni volta che viene inviato un messaggio.
|
SetConnectionClosed(bool inConnectionClosed)
|
void
Imposta il bit del flag kFlagConnectionClosed.
|
SetDropAck(bool inDropAck)
|
void
Stabilisci se WeaveExchangeManager non deve inviare conferme per questo contesto.
|
SetInitiator(bool inInitiator)
|
void
Imposta il bit del flag kFlagInitiator.
|
SetMsgRcvdFromPeer(bool inMsgRcvdFromPeer)
|
void
Imposta questa opzione se è stato ricevuto un messaggio dal peer in questa piattaforma di scambio pubblicitario.
|
SetPeerRequestedAck(bool inPeerRequestedAck)
|
void
Indica se è stata richiesta una conferma nell'ultimo messaggio ricevuto su questo scambio.
|
SetResponseExpected(bool inResponseExpected)
|
void
Imposta se è prevista una risposta su questo scambio.
|
SetShouldAutoReleaseConnection(bool autoReleaseCon)
|
void
Imposta se la connessione Weave associata alla piattaforma di scambio deve essere rilasciata quando questa viene liberata.
|
SetupTrickleRetransmit(uint32_t retransInterval, uint8_t threshold, uint32_t timeout)
|
Configura il meccanismo di ritrasmissione di corrente impostando l'intervallo di ritrasmissione e la soglia di ritrasmissione corrispondenti.
|
ShouldAutoReleaseConnection() const
|
bool
Indica se la connessione Weave associata alla piattaforma di scambio deve essere rilasciata quando questa viene liberata.
|
ShouldDropAck(void) const
|
bool
Determina se WeaveExchangeManager non deve inviare una conferma.
|
StartTimerT(void)
|
Avvia il meccanismo del timer di ritrasmissione periodica dell'algoritmo di ritrasmissione di Trickle.
|
TeardownTrickleRetransmit(void)
|
void
Elimina il meccanismo di ritrasmissione "Trickle" annullando i timer periodici all'interno di Trickle e liberando il buffer dei messaggi contenente il messaggio Weave.
|
UseEphemeralUDPPort(void) const
|
bool
Indica se i messaggi in uscita inviati tramite lo scambio devono essere inviati dalla porta UDP temporanea locale.
|
WRMPFlushAcks(void)
|
|
WRMPSendDelayedDelivery(uint32_t PauseTimeMillis, uint64_t DelayedNodeId)
|
Invia un messaggio di consegna ritardata per informare un nodo mittente che il messaggio inviato in precedenza avrebbe subito un ritardo previsto prima di essere recapitato al destinatario.
|
WRMPSendThrottleFlow(uint32_t PauseTimeMillis)
|
Invia un messaggio di flusso di limitazione al nodo peer chiedendo di limitare l'invio di messaggi.
|
Tipi pubblici
@34
@34
Proprietà | |
---|---|
kSendFlag_AlreadyEncoded
|
Utilizzato per indicare che il messaggio è già codificato. |
kSendFlag_AutoRetrans
|
Utilizzato per indicare che la ritrasmissione automatica è abilitata. |
kSendFlag_DefaultMulticastSourceAddress
|
Utilizzato per indicare che deve essere utilizzata la selezione predefinita dell'indirizzo di origine IPv6 per inviare messaggi multicast IPv6. |
kSendFlag_DelaySend
|
Utilizzato per indicare che l'invio del messaggio corrente deve subire un ritardo. |
kSendFlag_ExpectResponse
|
Utilizzato per indicare che è prevista una risposta entro un timeout specificato. |
kSendFlag_FromInitiator
|
Utilizzato per indicare che il messaggio corrente è l'iniziatore dello scambio. |
kSendFlag_MulticastFromLinkLocal
|
Alias obsoleto per |
kSendFlag_NoAutoRequestAck
|
Elimina la funzionalità di conferma della richiesta automatica durante l'invio di un messaggio. |
kSendFlag_RequestAck
|
Utilizzato per inviare un messaggio WRM che richiede una conferma. |
kSendFlag_RetainBuffer
|
Utilizzato per indicare che il buffer dei messaggi non deve essere liberato dopo l'invio. |
kSendFlag_RetransmissionTrickle
|
Utilizzato per indicare il requisito di ritrasmissioni per Trickle. |
kSendFlag_ReuseMessageId
|
Utilizzato per indicare che l'ID messaggio nell'intestazione può essere riutilizzato. |
kSendFlag_ReuseSourceId
|
Utilizzato per indicare che l'ID del nodo di origine nell'intestazione del messaggio può essere riutilizzato. |
@35
@35
Proprietà | |
---|---|
kGetPeerDescription_MaxLength
|
Lunghezza massima della stringa (incluso il carattere NUL) restituita da GetPeerDescription(). |
ConnectionClosedFunct
void(* ConnectionClosedFunct)(ExchangeContext *ec, WeaveConnection *con, WEAVE_ERROR conErr)
Questa funzione è il callback dell'applicazione da attivare quando una connessione Weave esistente è stata chiusa.
Dettagli | |||||||
---|---|---|---|---|---|---|---|
Parametri |
|
KeyErrorFunct
void(* KeyErrorFunct)(ExchangeContext *ec, WEAVE_ERROR keyErr)
Tipo di funzione di gestione dei messaggi di errore chiave.
Dettagli | |||||
---|---|---|---|---|---|
Parametri |
|
MessageReceiveFunct
void(* MessageReceiveFunct)(ExchangeContext *ec, const IPPacketInfo *pktInfo, const WeaveMessageInfo *msgInfo, uint32_t profileId, uint8_t msgType, PacketBuffer *payload)
Questa funzione è il callback dell'applicazione per la gestione di un messaggio Weave ricevuto.
Dettagli | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parametri |
|
ResponseTimeoutFunct
void(* ResponseTimeoutFunct)(ExchangeContext *ec)
Questa funzione è il callback dell'applicazione da attivare quando il timeout per la ricezione di un messaggio di risposta è scaduto.
Dettagli | |||
---|---|---|---|
Parametri |
|
RetransmissionTimeoutFunct
void(* RetransmissionTimeoutFunct)(ExchangeContext *ec)
Questa funzione è il callback dell'applicazione da richiamare quando è scaduto il timeout per la ritrasmissione di un messaggio inviato in precedenza.
Dettagli | |||
---|---|---|---|
Parametri |
|
Timeout
uint32_t Timeout
Tipo utilizzato per esprimere il timeout in questo ExchangeContext, in millisecondi.
WRMPAckRcvdFunct
void(* WRMPAckRcvdFunct)(ExchangeContext *ec, void *msgCtxt)
Questa funzione è il callback dell'applicazione da richiamare quando si riceve una conferma per un messaggio Weave che ne ha richiesto una come parte del protocollo di messaggistica Weave Reliable.
Dettagli | |||||
---|---|---|---|---|---|
Parametri |
|
WRMPPauseRcvdFunct
void(* WRMPPauseRcvdFunct)(ExchangeContext *ec, uint32_t pauseTime)
Questa funzione è il callback dell'applicazione da richiamare quando un messaggio di limitazione o consegna ritardata viene ricevuto come parte del protocollo di messaggistica affidabile di Weave.
Ciascuno di questi messaggi è accompagnato da un valore di tempo (in millisecondi) che indica il momento in cui mettere in pausa l'invio dei messaggi Weave in ExchangeContext.
Dettagli | |||||
---|---|---|---|---|---|
Parametri |
|
WRMPSendErrorFunct
void(* WRMPSendErrorFunct)(ExchangeContext *ec, WEAVE_ERROR err, void *msgCtxt)
Questa funzione è il callback dell'applicazione da richiamare quando si verifica un errore durante l'invio di un messaggio Weave.
Dettagli | |||||||
---|---|---|---|---|---|---|---|
Parametri |
|
Attributi pubblici
AllowDuplicateMsgs
bool AllowDuplicateMsgs
Indicatore booleano che indica se i messaggi duplicati sono consentiti per un determinato scambio.
AppState
void * AppState
Puntatore all'oggetto di stato specifico dell'applicazione.
EncryptionType
uint8_t EncryptionType
Tipo di crittografia da utilizzare per l'invio di un messaggio.
ExchangeId
uint16_t ExchangeId
[SOLO LETTURA] ID piattaforma di scambio assegnata.
ExchangeMgr
WeaveExchangeManager * ExchangeMgr
[SOLO LETTURA] Possedere il gestore della piattaforma di scambio pubblicitario.
KeyId
uint16_t KeyId
Chiave di crittografia da utilizzare per l'invio di un messaggio.
OnConnectionClosed
ConnectionClosedFunct OnConnectionClosed
OnDDRcvd
WRMPPauseRcvdFunct OnDDRcvd
Callback dell'applicazione per il messaggio di consegna ritardata ricevuto.
OnKeyError
KeyErrorFunct OnKeyError
Questa funzione è il callback dell'applicazione da richiamare quando viene ricevuto un messaggio di errore chiave dal peer.
OnMessageReceived
MessageReceiveFunct OnMessageReceived
OnResponseTimeout
ResponseTimeoutFunct OnResponseTimeout
OnRetransmissionTimeout
RetransmissionTimeoutFunct OnRetransmissionTimeout
OnThrottleRcvd
WRMPPauseRcvdFunct OnThrottleRcvd
Callback dell'applicazione per il messaggio della limitazione ricevuto.
PeerAddr
IPAddress PeerAddr
[SOLO LETTURA] Indirizzo IP del nodo peer.
PeerIntf
InterfaceId PeerIntf
[SOLO LETTURA] Interfaccia in uscita da utilizzare per l'invio di messaggi al peer.
(significato solo per UDP).
PeerNodeId
uint64_t PeerNodeId
[SOLO LETTURA] ID nodo del nodo peer.
PeerPort
uint16_t PeerPort
[SOLO LETTURA] Porta del nodo peer.
ResponseTimeout
Timeout ResponseTimeout
Tempo massimo di attesa di una risposta (in millisecondi); 0 disabilita il timeout della risposta.
RetransInterval
uint32_t RetransInterval
Tempo tra una ritrasmissione (in millisecondi); 0 disabilita le ritrasmissioni.
Funzioni pubbliche
Interrompi
void Abort( void )
Interrompi immediatamente il contesto di Exchange e rilascia tutti i riferimenti a quel contesto.
AddRef
void AddRef( void )
Aumenta il contatore di riferimento per il contesto dello scambio di uno.
AutoRequestAck
bool AutoRequestAck() const
Indica se verrà richiesta una conferma ogni volta che viene inviato un messaggio.
CancelRetrans
void CancelRetrans( void )
Annulla il meccanismo di ritrasmissione "trickle".
Chiudi
void Close( void )
Chiudi con cura il contesto di uno scambio.
Questa chiamata diminuisce il conteggio dei riferimenti e rilascia lo scambio quando il conteggio dei riferimenti diventa zero.
EncodeExchHeader
WEAVE_ERROR EncodeExchHeader( WeaveExchangeHeader *exchangeHeader, uint32_t profileId, uint8_t msgType, PacketBuffer *msgBuf, uint16_t sendFlags )
Codifica l'intestazione dello scambio in un buffer dei messaggi.
Dettagli | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parametri |
|
||||||||||
Valori restituiti |
|
GetAutoReleaseKey
bool GetAutoReleaseKey() const
Indica se la chiave di crittografia associata alla piattaforma di scambio deve essere rilasciata quando la piattaforma di scambio viene liberata.
GetCurrentRetransmitTimeout
uint32_t GetCurrentRetransmitTimeout( void )
Recupera il timeout attuale per la ritrasmissione.
Corrisponde al timeout iniziale o a quello attivo per la ritrasmissione, a seconda che per ExchangeContext sia in corso uno scambio di messaggi con il peer.
Dettagli | |
---|---|
Restituisce |
l'ora attuale della ritrasmissione.
|
GetPeerDescription
void GetPeerDescription( char *buf, uint32_t bufSize ) const
Crea una stringa che descrive il nodo peer e le informazioni relative a indirizzo / connessione associate.
Dettagli | |||||
---|---|---|---|---|---|
Parametri |
|
HandleTrickleMessage
void HandleTrickleMessage( const IPPacketInfo *pktInfo, const WeaveMessageInfo *msgInfo )
Gestire il messaggio di inganno all'interno del contesto dello scambio.
Dettagli | |||||
---|---|---|---|---|---|
Parametri |
|
HasPeerRequestedAck
bool HasPeerRequestedAck( void ) const
Determina se il peer ha richiesto la conferma per almeno un messaggio in questo scambio.
Dettagli | |
---|---|
Restituisce |
Restituisce "true" se la conferma viene richiesta, altrimenti è "false".
|
HasRcvdMsgFromPeer
bool HasRcvdMsgFromPeer( void ) const
Determina se almeno un messaggio è stato ricevuto da questo scambio da un peer.
Dettagli | |
---|---|
Restituisce |
Restituisce "true" se il messaggio viene ricevuto, altrimenti è "false".
|
IsAckPending
bool IsAckPending( void ) const
Determina se esiste già una conferma in attesa da inviare al peer in questa piattaforma di scambio pubblicitario.
IsConnectionClosed
bool IsConnectionClosed( void ) const
Determina se per ExchangeContext è associata una WeaveConnection attiva associata.
Dettagli | |
---|---|
Restituisce |
Restituisce "true" se la connessione è chiusa, altrimenti è "false".
|
IsInitiator
bool IsInitiator( void ) const
Determina se il contesto è l'iniziatore dello scambio.
Dettagli | |
---|---|
Restituisce |
Restituisce "true" se è l'iniziatore, altrimenti "false".
|
IsResponseExpected
bool IsResponseExpected( void ) const
Determina se è prevista una risposta per i messaggi inviati su questo scambio.
Dettagli | |
---|---|
Restituisce |
Restituisce "true" se è prevista una risposta, altrimenti è "false".
|
Rilascia
void Release( void )
Rilascia il riferimento a questo contesto dello scambio.
Se il conteggio è alla rovescia a uno, chiudi il contesto, reimposta tutti i callback delle applicazioni e interrompi tutti i timer.
SendCommonNullMessage
WEAVE_ERROR SendCommonNullMessage( void )
Invia un messaggio Common::Null.
Dettagli | |||||||
---|---|---|---|---|---|---|---|
Valori restituiti |
|
SendMessage
WEAVE_ERROR SendMessage( uint32_t profileId, uint8_t msgType, PacketBuffer *msgPayload, uint16_t sendFlags, void *msgCtxt )
Invia un messaggio Weave su questo scambio.
Dettagli | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parametri |
|
||||||||||||
Valori restituiti |
|
SendMessage
WEAVE_ERROR SendMessage( uint32_t profileId, uint8_t msgType, PacketBuffer *msgBuf, uint16_t sendFlags, WeaveMessageInfo *msgInfo, void *msgCtxt )
Invia un messaggio Weave su questo scambio.
Dettagli | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parametri |
|
||||||||||||
Valori restituiti |
|
SetAckPending
void SetAckPending( bool inAckPending )
Specifica se una conferma deve essere inviata al peer in questa piattaforma di scambio pubblicitario.
Dettagli | |||
---|---|---|---|
Parametri |
|
SetAutoReleaseKey
void SetAutoReleaseKey( bool autoReleaseKey )
Specifica se la chiave di crittografia associata alla piattaforma di scambio deve essere rilasciata quando la piattaforma di scambio viene liberata.
Dettagli | |||
---|---|---|---|
Parametri |
|
SetAutoRequestAck
void SetAutoRequestAck( bool autoReqAck )
Consente di impostare se una conferma deve essere richiesta ogni volta che viene inviato un messaggio.
Dettagli | |||
---|---|---|---|
Parametri |
|
SetConnectionClosed
void SetConnectionClosed( bool inConnectionClosed )
Imposta il bit del flag kFlagConnectionClosed.
Questo flag viene impostato quando viene chiusa una WeaveConnection associata a un valore ExchangeContext.
Dettagli | |||
---|---|---|---|
Parametri |
|
SetDropAck
void SetDropAck( bool inDropAck )
Stabilisci se WeaveExchangeManager non deve inviare conferme per questo contesto.
Solo per uso interno, debug.
Dettagli | |||
---|---|---|---|
Parametri |
|
SetInitiator
void SetInitiator( bool inInitiator )
Imposta il bit del flag kFlagInitiator.
Questo flag è impostato dal nodo che avvia uno scambio.
Dettagli | |||
---|---|---|---|
Parametri |
|
SetMsgRcvdFromPeer
void SetMsgRcvdFromPeer( bool inMsgRcvdFromPeer )
Imposta questa opzione se è stato ricevuto un messaggio dal peer in questa piattaforma di scambio pubblicitario.
Dettagli | |||
---|---|---|---|
Parametri |
|
SetPeerRequestedAck
void SetPeerRequestedAck( bool inPeerRequestedAck )
Indica se è stata richiesta una conferma nell'ultimo messaggio ricevuto su questo scambio.
Dettagli | |||
---|---|---|---|
Parametri |
|
SetResponseExpected
void SetResponseExpected( bool inResponseExpected )
Imposta se è prevista una risposta su questo scambio.
Dettagli | |||
---|---|---|---|
Parametri |
|
SetShouldAutoReleaseConnection
void SetShouldAutoReleaseConnection( bool autoReleaseCon )
Imposta se la connessione Weave associata alla piattaforma di scambio deve essere rilasciata quando questa viene liberata.
Dettagli | |||
---|---|---|---|
Parametri |
|
SetupTrickleRetransmit
WEAVE_ERROR SetupTrickleRetransmit( uint32_t retransInterval, uint8_t threshold, uint32_t timeout )
Configura il meccanismo di ritrasmissione di corrente impostando l'intervallo di ritrasmissione e la soglia di ritrasmissione corrispondenti.
Dettagli | |||||||
---|---|---|---|---|---|---|---|
Parametri |
|
||||||
Restituisce |
WEAVE_NO_ERROR se la configurazione in modalità Trickle è riuscita, altrimenti viene mappato un INET_ERROR in un WEAVE_ERROR.
|
ShouldAutoReleaseConnection
bool ShouldAutoReleaseConnection() const
Indica se la connessione Weave associata alla piattaforma di scambio deve essere rilasciata quando questa viene liberata.
ShouldDropAck
bool ShouldDropAck( void ) const
Determina se WeaveExchangeManager non deve inviare una conferma.
Solo per uso interno, debug.
StartTimerT
WEAVE_ERROR StartTimerT( void )
Avvia il meccanismo del timer di ritrasmissione periodica dell'algoritmo di ritrasmissione di Trickle.
Dettagli | |
---|---|
Restituisce |
WEAVE_NO_ERROR in caso di esito positivo, altrimenti viene associato un INET_ERROR a un WEAVE_ERROR.
|
TeardownTrickleRetransmit
void TeardownTrickleRetransmit( void )
Elimina il meccanismo di ritrasmissione "Trickle" annullando i timer periodici all'interno di Trickle e liberando il buffer dei messaggi contenente il messaggio Weave.
UseEphemeralUDPPort
bool UseEphemeralUDPPort( void ) const
Indica se i messaggi in uscita inviati tramite lo scambio devono essere inviati dalla porta UDP temporanea locale.
WRMPFlushAcks
WEAVE_ERROR WRMPFlushAcks( void )
WRMPSendDelayedDelivery
WEAVE_ERROR WRMPSendDelayedDelivery( uint32_t PauseTimeMillis, uint64_t DelayedNodeId )
Invia un messaggio di consegna ritardata per informare un nodo mittente che il messaggio inviato in precedenza avrebbe subito un ritardo previsto prima di essere recapitato al destinatario.
Una delle cause possibili del ritardo dei messaggi prima della consegna è quando il nodo finale del destinatario ha un sonno assonnato. Questo messaggio è potenzialmente generato da un nodo intermedio adatto nel percorso di invio che dispone di una conoscenza sufficiente del destinatario per dedurre il ritardo della consegna. Alla ricezione di questo messaggio, il mittente regolava nuovamente i timer per la ritrasmissione per i messaggi che cercano di ricevere conferma.
Dettagli | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parametri |
|
||||||||||
Valori restituiti |
|
WRMPSendThrottleFlow
WEAVE_ERROR WRMPSendThrottleFlow( uint32_t PauseTimeMillis )
Invia un messaggio di flusso di limitazione al nodo peer chiedendo di limitare l'invio di messaggi.
Dettagli | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parametri |
|
||||||||||||
Valori restituiti |
|