nl:: Weave:: ExchangeContext
#include <src/lib/core/WeaveExchangeMgr.h>
Esta classe representa uma conversa em andamento (ExchangeContext) entre dois ou mais nós.
Resumo
Ele define métodos para codificar e comunicar mensagens do Weave em um ExchangeContext por vários mecanismos de transporte, por exemplo, TCP, UDP ou Weave Trust Messaging.
Tipos públicos |
|
---|---|
@34{
|
enum |
@35{
|
enum |
ConnectionClosedFunct)(ExchangeContext *ec, WeaveConnection *con, WEAVE_ERROR conErr)
|
typedefvoid(*
Essa função é o retorno de chamada do aplicativo a ser invocado quando uma conexão do Weave for encerrada. |
KeyErrorFunct)(ExchangeContext *ec, WEAVE_ERROR keyErr)
|
typedefvoid(*
Tipo da função de tratamento de mensagens de erro importantes. |
MessageReceiveFunct)(ExchangeContext *ec, const IPPacketInfo *pktInfo, const WeaveMessageInfo *msgInfo, uint32_t profileId, uint8_t msgType, PacketBuffer *payload)
|
typedefvoid(*
Essa função é o retorno de chamada do aplicativo para lidar com uma mensagem Weave recebida. |
ResponseTimeoutFunct)(ExchangeContext *ec)
|
typedefvoid(*
Essa função é o callback do aplicativo a ser invocado quando o tempo limite do recebimento de uma mensagem de resposta tiver expirado. |
RetransmissionTimeoutFunct)(ExchangeContext *ec)
|
typedefvoid(*
Esta função é o retorno de chamada do aplicativo a ser invocado quando o tempo limite para a retransmissão de uma mensagem enviada anteriormente expirar. |
Timeout
|
typedefuint32_t
Tipo usado para expressar o tempo limite neste ExchangeContext, em milissegundos. |
WRMPAckRcvdFunct)(ExchangeContext *ec, void *msgCtxt)
|
typedefvoid(*
Essa função é o retorno de chamada do aplicativo a ser invocado quando uma confirmação é recebida para uma mensagem do Weave que solicitou uma como parte do protocolo Weave Continuous Messaging. |
WRMPPauseRcvdFunct)(ExchangeContext *ec, uint32_t pauseTime)
|
typedefvoid(*
Essa função é o retorno de chamada do aplicativo a ser invocado quando uma mensagem de limitação ou entrega atrasada é recebida como parte do protocolo de mensagens confiáveis do Weave. |
WRMPSendErrorFunct)(ExchangeContext *ec, WEAVE_ERROR err, void *msgCtxt)
|
typedefvoid(*
Essa função é o retorno de chamada do aplicativo a ser invocado quando um erro for encontrado ao enviar uma mensagem do Weave. |
Atributos públicos |
|
---|---|
AllowDuplicateMsgs
|
bool
Indicador booleano que mostra se mensagens duplicadas são permitidas em uma determinada troca.
|
AppState
|
void *
Ponteiro para o objeto de estado específico do aplicativo.
|
Con
|
[SOMENTE LEITURA] Conexão do Weave associada.
|
EncryptionType
|
uint8_t
Tipo de criptografia a ser usado ao enviar uma mensagem.
|
ExchangeId
|
uint16_t
[SOMENTE LEITURA] ID da troca atribuído.
|
ExchangeMgr
|
[SOMENTE LEITURA] Proprietário do gerenciador de troca.
|
KeyId
|
uint16_t
Chave de criptografia a ser usada ao enviar uma mensagem.
|
OnAckRcvd
|
Callback do aplicativo para confirmação recebida.
|
OnConnectionClosed
|
|
OnDDRcvd
|
Callback do aplicativo para a mensagem de entrega atrasada recebida.
|
OnKeyError
|
Essa função é o callback do aplicativo a ser invocado quando a mensagem de erro principal for recebida do peering.
|
OnMessageReceived
|
|
OnResponseTimeout
|
|
OnRetransmissionTimeout
|
|
OnSendError
|
Callback do aplicativo para erro durante o envio.
|
OnThrottleRcvd
|
Callback do aplicativo para a mensagem Throttle recebida.
|
PeerAddr
|
IPAddress
[SOMENTE LEITURA] Endereço IP do nó de peering.
|
PeerIntf
|
InterfaceId
[SOMENTE LEITURA] Interface de saída a ser usada ao enviar mensagens para o ponto.
|
PeerNodeId
|
uint64_t
[SOMENTE LEITURA] ID do nó do peering.
|
PeerPort
|
uint16_t
[SOMENTE LEITURA] Porta do nó de peering.
|
ResponseTimeout
|
Tempo máximo de espera pela resposta (em milissegundos); 0 desativa o tempo limite da resposta.
|
RetransInterval
|
uint32_t
Tempo entre as retransmissões (em milissegundos); 0 desativa as retransmissões.
|
mMsgProtocolVersion
|
uint16_t
Versão do protocolo de mensagens para o ExchangeContext.
|
mWRMPConfig
|
Configuração do WRMP.
|
Funções públicas |
|
---|---|
Abort(void)
|
void
Cancele o contexto do Exchange imediatamente e libere todas as referências a ele.
|
AddRef(void)
|
void
Incremente o contador de referência para o contexto da troca em um.
|
AutoRequestAck() const
|
bool
Retorna se uma confirmação será solicitada sempre que uma mensagem for enviada.
|
CancelRetrans(void)
|
void
Cancele o mecanismo de retransmissão do Trickle.
|
Close(void)
|
void
Encerre um contexto de troca.
|
EncodeExchHeader(WeaveExchangeHeader *exchangeHeader, uint32_t profileId, uint8_t msgType, PacketBuffer *msgBuf, uint16_t sendFlags)
|
Codifique o cabeçalho da troca em um buffer de mensagem.
|
GetAutoReleaseKey() const
|
bool
Retorne se a chave de criptografia associada à troca precisa ser liberada quando a troca for liberada.
|
GetCurrentRetransmitTimeout(void)
|
uint32_t
Acessa o tempo limite de retransmissão atual.
|
GetPeerDescription(char *buf, uint32_t bufSize) const
|
void
Constrói uma string que descreve o nó de peering e as informações de endereço / conexão associadas.
|
HandleTrickleMessage(const IPPacketInfo *pktInfo, const WeaveMessageInfo *msgInfo)
|
void
Processe a mensagem do truque no contexto de troca.
|
HasPeerRequestedAck(void) const
|
bool
Determine se o peering solicitou confirmação para pelo menos uma mensagem nesta troca.
|
HasRcvdMsgFromPeer(void) const
|
bool
Determine se pelo menos uma mensagem foi recebida nesta troca do peering.
|
IsAckPending(void) const
|
bool
Determine se já há uma confirmação pendente a ser enviada ao peering nesta troca.
|
IsConnectionClosed(void) const
|
bool
Determine se ExchangeContext tem um WeaveConnection ativo associado.
|
IsInitiator(void) const
|
bool
Determine se o contexto é o iniciador da troca.
|
IsResponseExpected(void) const
|
bool
Determine se é esperada uma resposta para as mensagens enviadas por essa troca.
|
Release(void)
|
void
Referência de lançamento a esse contexto de troca.
|
SendCommonNullMessage(void)
|
Envie uma mensagem Common::Null.
|
SendMessage(uint32_t profileId, uint8_t msgType, PacketBuffer *msgPayload, uint16_t sendFlags, void *msgCtxt)
|
Envie uma mensagem do Weave nesta troca.
|
SendMessage(uint32_t profileId, uint8_t msgType, PacketBuffer *msgBuf, uint16_t sendFlags, WeaveMessageInfo *msgInfo, void *msgCtxt)
|
Envie uma mensagem do Weave nesta troca.
|
SetAckPending(bool inAckPending)
|
void
Defina se uma confirmação precisa ser enviada de volta ao semelhante nesta troca.
|
SetAutoReleaseKey(bool autoReleaseKey)
|
void
Defina se a chave de criptografia associada à troca precisa ser liberada quando a troca for liberada.
|
SetAutoRequestAck(bool autoReqAck)
|
void
Definir se uma confirmação deve ser solicitada sempre que uma mensagem é enviada.
|
SetConnectionClosed(bool inConnectionClosed)
|
void
Defina o bit de sinalização kFlagConnectionClosed.
|
SetDropAck(bool inDropAck)
|
void
Defina se o WeaveExchangeManager não deve enviar confirmações para este contexto.
|
SetInitiator(bool inInitiator)
|
void
Defina o bit de sinalização kFlagInitiator.
|
SetMsgRcvdFromPeer(bool inMsgRcvdFromPeer)
|
void
Defina se uma mensagem foi recebida do peering nesta troca.
|
SetPeerRequestedAck(bool inPeerRequestedAck)
|
void
Defina se uma confirmação foi solicitada na última mensagem recebida nesta troca.
|
SetResponseExpected(bool inResponseExpected)
|
void
Defina se uma resposta é esperada nesta troca.
|
SetShouldAutoReleaseConnection(bool autoReleaseCon)
|
void
Defina se a conexão Weave associada à troca precisa ser liberada quando a troca for liberada.
|
SetupTrickleRetransmit(uint32_t retransInterval, uint8_t threshold, uint32_t timeout)
|
Configure o mecanismo de retransmissão de retransmissão definindo o intervalo de retransmissão correspondente e o limite de retransmissão.
|
ShouldAutoReleaseConnection() const
|
bool
Retorne se a conexão do Weave associada à troca precisa ser liberada quando a troca for liberada.
|
ShouldDropAck(void) const
|
bool
Determine se o WeaveExchangeManager não deve enviar uma confirmação.
|
StartTimerT(void)
|
Inicia o mecanismo de timer do algoritmo de retransmissão periódica do Trickle.
|
TeardownTrickleRetransmit(void)
|
void
Eliminar o mecanismo de retransmissão do Trickle cancelando os timers periódicos no Trickle e liberando o buffer de mensagem que contém a mensagem do Weave.
|
UseEphemeralUDPPort(void) const
|
bool
Retorne se as mensagens enviadas pela troca precisam ser enviadas pela porta UDP temporária local.
|
WRMPFlushAcks(void)
|
|
WRMPSendDelayedDelivery(uint32_t PauseTimeMillis, uint64_t DelayedNodeId)
|
Envie uma mensagem de entrega atrasada para notificar um nó do remetente de que a mensagem enviada anteriormente pode passar por um atraso esperado antes de ser entregue ao destinatário.
|
WRMPSendThrottleFlow(uint32_t PauseTimeMillis)
|
Enviar uma mensagem de fluxo de limite para o nó de peering solicitando que ele limite o envio de mensagens.
|
Tipos públicos
@34
@34
Propriedades | |
---|---|
kSendFlag_AlreadyEncoded
|
Usado para indicar que a mensagem já está codificada. |
kSendFlag_AutoRetrans
|
Usado para indicar que a retransmissão automática está ativada. |
kSendFlag_DefaultMulticastSourceAddress
|
Usado para indicar que a seleção do endereço de origem IPv6 padrão deve ser usada ao enviar mensagens multicast IPv6. |
kSendFlag_DelaySend
|
Usado para indicar que o envio da mensagem atual precisa ser adiado. |
kSendFlag_ExpectResponse
|
Usado para indicar que uma resposta é esperada dentro de um tempo limite especificado. |
kSendFlag_FromInitiator
|
Usado para indicar que a mensagem atual é o iniciador da troca. |
kSendFlag_MulticastFromLinkLocal
|
Alias descontinuado de |
kSendFlag_NoAutoRequestAck
|
Suprima o recurso de confirmação de solicitação automática ao enviar uma mensagem. |
kSendFlag_RequestAck
|
Usado para enviar uma mensagem WRM solicitando uma confirmação. |
kSendFlag_RetainBuffer
|
Usado para indicar que o buffer de mensagens não deve ser liberado após o envio. |
kSendFlag_RetransmissionTrickle
|
Usado para indicar o requisito de retransmissões para o Trickle. |
kSendFlag_ReuseMessageId
|
Usado para indicar que o ID no cabeçalho da mensagem pode ser reutilizado. |
kSendFlag_ReuseSourceId
|
Usado para indicar que o ID do nó de origem no cabeçalho da mensagem pode ser reutilizado. |
@35
@35
Propriedades | |
---|---|
kGetPeerDescription_MaxLength
|
Comprimento máximo da string (incluindo o caractere NUL) retornado por GetPeerDescription(). |
ConnectionClosedFunct
void(* ConnectionClosedFunct)(ExchangeContext *ec, WeaveConnection *con, WEAVE_ERROR conErr)
Essa função é o retorno de chamada do aplicativo a ser invocado quando uma conexão do Weave for encerrada.
Detalhes | |||||||
---|---|---|---|---|---|---|---|
Parâmetros |
|
KeyErrorFunct
void(* KeyErrorFunct)(ExchangeContext *ec, WEAVE_ERROR keyErr)
Tipo da função de tratamento de mensagens de erro importantes.
Detalhes | |||||
---|---|---|---|---|---|
Parâmetros |
|
MessageReceiveFunct
void(* MessageReceiveFunct)(ExchangeContext *ec, const IPPacketInfo *pktInfo, const WeaveMessageInfo *msgInfo, uint32_t profileId, uint8_t msgType, PacketBuffer *payload)
Essa função é o retorno de chamada do aplicativo para lidar com uma mensagem Weave recebida.
Detalhes | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parâmetros |
|
ResponseTimeoutFunct
void(* ResponseTimeoutFunct)(ExchangeContext *ec)
Essa função é o callback do aplicativo a ser invocado quando o tempo limite do recebimento de uma mensagem de resposta tiver expirado.
Detalhes | |||
---|---|---|---|
Parâmetros |
|
RetransmissionTimeoutFunct
void(* RetransmissionTimeoutFunct)(ExchangeContext *ec)
Esta função é o retorno de chamada do aplicativo a ser invocado quando o tempo limite para a retransmissão de uma mensagem enviada anteriormente expirar.
Detalhes | |||
---|---|---|---|
Parâmetros |
|
Tempo limite
uint32_t Timeout
Tipo usado para expressar o tempo limite neste ExchangeContext, em milissegundos.
WRMPAckRcvdFunct
void(* WRMPAckRcvdFunct)(ExchangeContext *ec, void *msgCtxt)
Essa função é o retorno de chamada do aplicativo a ser invocado quando uma confirmação é recebida para uma mensagem do Weave que solicitou uma como parte do protocolo Weave Continuous Messaging.
Detalhes | |||||
---|---|---|---|---|---|
Parâmetros |
|
WRMPPauseRcvdFunct
void(* WRMPPauseRcvdFunct)(ExchangeContext *ec, uint32_t pauseTime)
Essa função é o retorno de chamada do aplicativo a ser invocado quando uma mensagem de limitação ou entrega atrasada é recebida como parte do protocolo de mensagens confiáveis do Weave.
Cada uma dessas mensagens é acompanhada de um valor de tempo (em milissegundos) que indica o momento para pausar o envio de mensagens do Weave no ExchangeContext.
Detalhes | |||||
---|---|---|---|---|---|
Parâmetros |
|
WRMPSendErrorFunct
void(* WRMPSendErrorFunct)(ExchangeContext *ec, WEAVE_ERROR err, void *msgCtxt)
Essa função é o retorno de chamada do aplicativo a ser invocado quando um erro for encontrado ao enviar uma mensagem do Weave.
Detalhes | |||||||
---|---|---|---|---|---|---|---|
Parâmetros |
|
Atributos públicos
AllowDuplicateMsgs
bool AllowDuplicateMsgs
Indicador booleano que mostra se mensagens duplicadas são permitidas em uma determinada troca.
AppState
void * AppState
Ponteiro para o objeto de estado específico do aplicativo.
EncryptionType
uint8_t EncryptionType
Tipo de criptografia a ser usado ao enviar uma mensagem.
ExchangeId
uint16_t ExchangeId
[SOMENTE LEITURA] ID da troca atribuído.
ExchangeMgr
WeaveExchangeManager * ExchangeMgr
[SOMENTE LEITURA] Proprietário do gerenciador de troca.
KeyId
uint16_t KeyId
Chave de criptografia a ser usada ao enviar uma mensagem.
OnConnectionClosed
ConnectionClosedFunct OnConnectionClosed
OnDDRcvd
WRMPPauseRcvdFunct OnDDRcvd
Callback do aplicativo para a mensagem de entrega atrasada recebida.
OnKeyError
KeyErrorFunct OnKeyError
Essa função é o callback do aplicativo a ser invocado quando a mensagem de erro principal for recebida do peering.
OnMessageReceived
MessageReceiveFunct OnMessageReceived
OnResponseTimeout
ResponseTimeoutFunct OnResponseTimeout
OnRetransmissionTimeout
RetransmissionTimeoutFunct OnRetransmissionTimeout
OnThrottleRcvd
WRMPPauseRcvdFunct OnThrottleRcvd
Callback do aplicativo para a mensagem Throttle recebida.
PeerAddr
IPAddress PeerAddr
[SOMENTE LEITURA] Endereço IP do nó de peering.
PeerIntf
InterfaceId PeerIntf
[SOMENTE LEITURA] Interface de saída a ser usada ao enviar mensagens para o ponto.
Isso só é significativo para UDP.
PeerNodeId
uint64_t PeerNodeId
[SOMENTE LEITURA] ID do nó do peering.
PeerPort
uint16_t PeerPort
[SOMENTE LEITURA] Porta do nó de peering.
ResponseTimeout
Timeout ResponseTimeout
Tempo máximo de espera pela resposta (em milissegundos); 0 desativa o tempo limite da resposta.
RetransInterval
uint32_t RetransInterval
Tempo entre as retransmissões (em milissegundos); 0 desativa as retransmissões.
mMsgProtocolVersion
uint16_t mMsgProtocolVersion
Versão do protocolo de mensagens para o ExchangeContext.
Funções públicas
Cancelar
void Abort( void )
Cancele o contexto do Exchange imediatamente e libere todas as referências a ele.
AddRef
void AddRef( void )
Incremente o contador de referência para o contexto da troca em um.
AutoRequestAck
bool AutoRequestAck() const
Retorna se uma confirmação será solicitada sempre que uma mensagem for enviada.
CancelRetrans
void CancelRetrans( void )
Cancele o mecanismo de retransmissão do Trickle.
Fechar
void Close( void )
Encerre um contexto de troca.
Essa chamada diminui a contagem de referência e libera a troca quando ela chega a zero.
EncodeExchHeader
WEAVE_ERROR EncodeExchHeader( WeaveExchangeHeader *exchangeHeader, uint32_t profileId, uint8_t msgType, PacketBuffer *msgBuf, uint16_t sendFlags )
Codifique o cabeçalho da troca em um buffer de mensagem.
Detalhes | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parâmetros |
|
||||||||||
Valores de retorno |
|
GetAutoReleaseKey
bool GetAutoReleaseKey() const
Retorne se a chave de criptografia associada à troca precisa ser liberada quando a troca for liberada.
GetCurrentRetransmitTimeout
uint32_t GetCurrentRetransmitTimeout( void )
Acessa o tempo limite de retransmissão atual.
Esse tempo pode ser o tempo limite inicial ou de retransmissão ativa dependendo do fato de ExchangeContext ter uma troca de mensagens ativa com seu peering.
Detalhes | |
---|---|
Retorna |
e o tempo de retransmissão atual.
|
GetPeerDescription
void GetPeerDescription( char *buf, uint32_t bufSize ) const
Constrói uma string que descreve o nó de peering e as informações de endereço / conexão associadas.
Detalhes | |||||
---|---|---|---|---|---|
Parâmetros |
|
HandleTrickleMessage
void HandleTrickleMessage( const IPPacketInfo *pktInfo, const WeaveMessageInfo *msgInfo )
Processe a mensagem do truque no contexto de troca.
Detalhes | |||||
---|---|---|---|---|---|
Parâmetros |
|
HasPeerRequestedAck
bool HasPeerRequestedAck( void ) const
Determine se o peering solicitou confirmação para pelo menos uma mensagem nesta troca.
Detalhes | |
---|---|
Retorna |
Retorna "true" se a confirmação for solicitada. Caso contrário, retorna "false".
|
HasRcvdMsgFromPeer
bool HasRcvdMsgFromPeer( void ) const
Determine se pelo menos uma mensagem foi recebida nesta troca do peering.
Detalhes | |
---|---|
Retorna |
Retorna "true" se a mensagem foi recebida. Caso contrário, retorna "false".
|
IsAckPending
bool IsAckPending( void ) const
Determine se já há uma confirmação pendente a ser enviada ao peering nesta troca.
IsConnectionClosed
bool IsConnectionClosed( void ) const
Determine se ExchangeContext tem um WeaveConnection ativo associado.
Detalhes | |
---|---|
Retorna |
Retorna "true" se a conexão for encerrada. Caso contrário, retorna "false".
|
IsInitiator
bool IsInitiator( void ) const
Determine se o contexto é o iniciador da troca.
Detalhes | |
---|---|
Retorna |
Retorna "true" se for o iniciador. Caso contrário, retorna "false".
|
IsResponseExpected
bool IsResponseExpected( void ) const
Determine se é esperada uma resposta para as mensagens enviadas por essa troca.
Detalhes | |
---|---|
Retorna |
Retorna "true" se a resposta era esperada. Caso contrário, retorna "false".
|
Versão
void Release( void )
Referência de lançamento a esse contexto de troca.
Se a contagem for até 1, feche o contexto, redefina todos os callbacks do aplicativo e interrompa todos os timers.
SendCommonNullMessage
WEAVE_ERROR SendCommonNullMessage( void )
Envie uma mensagem Common::Null.
Detalhes | |||||||
---|---|---|---|---|---|---|---|
Valores de retorno |
|
SendMessage
WEAVE_ERROR SendMessage( uint32_t profileId, uint8_t msgType, PacketBuffer *msgPayload, uint16_t sendFlags, void *msgCtxt )
Envie uma mensagem do Weave nesta troca.
Detalhes | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parâmetros |
|
||||||||||||
Valores de retorno |
|
SendMessage
WEAVE_ERROR SendMessage( uint32_t profileId, uint8_t msgType, PacketBuffer *msgBuf, uint16_t sendFlags, WeaveMessageInfo *msgInfo, void *msgCtxt )
Envie uma mensagem do Weave nesta troca.
Detalhes | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parâmetros |
|
||||||||||||
Valores de retorno |
|
SetAckPending
void SetAckPending( bool inAckPending )
Defina se uma confirmação precisa ser enviada de volta ao semelhante nesta troca.
Detalhes | |||
---|---|---|---|
Parâmetros |
|
SetAutoReleaseKey
void SetAutoReleaseKey( bool autoReleaseKey )
Defina se a chave de criptografia associada à troca precisa ser liberada quando a troca for liberada.
Detalhes | |||
---|---|---|---|
Parâmetros |
|
SetAutoRequestAck
void SetAutoRequestAck( bool autoReqAck )
Definir se uma confirmação deve ser solicitada sempre que uma mensagem é enviada.
Detalhes | |||
---|---|---|---|
Parâmetros |
|
SetConnectionClosed
void SetConnectionClosed( bool inConnectionClosed )
Defina o bit de sinalização kFlagConnectionClosed.
Essa sinalização é definida quando uma WeaveConnection associada a um ExchangeContext é fechada.
Detalhes | |||
---|---|---|---|
Parâmetros |
|
SetDropAck
void SetDropAck( bool inDropAck )
Defina se o WeaveExchangeManager não deve enviar confirmações para este contexto.
Para uso interno, somente para depuração.
Detalhes | |||
---|---|---|---|
Parâmetros |
|
SetInitiator
void SetInitiator( bool inInitiator )
Defina o bit de sinalização kFlagInitiator.
Essa sinalização é definida pelo nó que inicia uma troca.
Detalhes | |||
---|---|---|---|
Parâmetros |
|
SetMsgRcvdFromPeer
void SetMsgRcvdFromPeer( bool inMsgRcvdFromPeer )
Defina se uma mensagem foi recebida do peering nesta troca.
Detalhes | |||
---|---|---|---|
Parâmetros |
|
SetPeerRequestedAck
void SetPeerRequestedAck( bool inPeerRequestedAck )
Defina se uma confirmação foi solicitada na última mensagem recebida nesta troca.
Detalhes | |||
---|---|---|---|
Parâmetros |
|
SetResponseExpected
void SetResponseExpected( bool inResponseExpected )
Defina se uma resposta é esperada nesta troca.
Detalhes | |||
---|---|---|---|
Parâmetros |
|
SetShouldAutoReleaseConnection
void SetShouldAutoReleaseConnection( bool autoReleaseCon )
Defina se a conexão Weave associada à troca precisa ser liberada quando a troca for liberada.
Detalhes | |||
---|---|---|---|
Parâmetros |
|
SetupTrickleRetransmit
WEAVE_ERROR SetupTrickleRetransmit( uint32_t retransInterval, uint8_t threshold, uint32_t timeout )
Configure o mecanismo de retransmissão de retransmissão definindo o intervalo de retransmissão correspondente e o limite de retransmissão.
Detalhes | |||||||
---|---|---|---|---|---|---|---|
Parâmetros |
|
||||||
Retorna |
WEAVE_NO_ERROR se a configuração do Trickle tiver sido bem-sucedida. Caso contrário, um INET_ERROR mapeado em um WEAVE_ERROR.
|
ShouldAutoReleaseConnection
bool ShouldAutoReleaseConnection() const
Retorne se a conexão do Weave associada à troca precisa ser liberada quando a troca for liberada.
ShouldDropAck
bool ShouldDropAck( void ) const
Determine se o WeaveExchangeManager não deve enviar uma confirmação.
Para uso interno, somente para depuração.
StartTimerT
WEAVE_ERROR StartTimerT( void )
Inicia o mecanismo de timer do algoritmo de retransmissão periódica do Trickle.
Detalhes | |
---|---|
Retorna |
WEAVE_NO_ERROR em caso de êxito, caso contrário, INET_ERROR mapeado em WEAVE_ERROR.
|
TeardownTrickleRetransmit
void TeardownTrickleRetransmit( void )
Eliminar o mecanismo de retransmissão do Trickle cancelando os timers periódicos no Trickle e liberando o buffer de mensagem que contém a mensagem do Weave.
UseEphemeralUDPPort
bool UseEphemeralUDPPort( void ) const
Retorne se as mensagens enviadas pela troca precisam ser enviadas pela porta UDP temporária local.
WRMPFlushAcks
WEAVE_ERROR WRMPFlushAcks( void )
WRMPSendDelayedDelivery
WEAVE_ERROR WRMPSendDelayedDelivery( uint32_t PauseTimeMillis, uint64_t DelayedNodeId )
Envie uma mensagem de entrega atrasada para notificar um nó do remetente de que a mensagem enviada anteriormente pode passar por um atraso esperado antes de ser entregue ao destinatário.
Uma das possíveis causas para o atraso das mensagens antes de serem entregues é quando o nó final do destinatário está com sono. Essa mensagem pode ter sido gerada por um nó intermediário adequado no caminho de envio com conhecimento suficiente do destinatário para inferir sobre o atraso na entrega. Ao receber essa mensagem, o remetente ajustava novamente os timers de retransmissão para mensagens que buscam confirmações.
Detalhes | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parâmetros |
|
||||||||||
Valores de retorno |
|
WRMPSendThrottleFlow
WEAVE_ERROR WRMPSendThrottleFlow( uint32_t PauseTimeMillis )
Enviar uma mensagem de fluxo de limite para o nó de peering solicitando que ele limite o envio de mensagens.
Detalhes | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parâmetros |
|
||||||||||||
Valores de retorno |
|