nl:: Weave:: WeaveMessageLayer
#include <src/lib/core/WeaveMessageLayer.h>
A definição da classe WeaveMessageLayer, que gerencia a comunicação com outros nós do Weave.
Resumo
Ele emprega um dos vários pontos de extremidade InetLayer para estabelecer um canal de comunicação com outros nós do Weave.
Construtores e destruidores |
|
---|---|
WeaveMessageLayer(void)
O construtor da camada Weave Message.
|
Tipos públicos |
|
---|---|
AcceptErrorFunct)(WeaveMessageLayer *msgLayer, WEAVE_ERROR err)
|
typedefvoid(*
Essa função é o callback da camada superior para informar um erro durante o tratamento de uma conexão TCP de entrada. |
CallbackRemovedFunct)(void *listenerState)
|
typedefvoid(*
Esta função é invocada para remover um callback. |
ConnectionReceiveFunct)(WeaveMessageLayer *msgLayer, WeaveConnection *con)
|
typedefvoid(*
Essa função é o callback da camada superior para lidar com uma conexão TCP de entrada. |
MessageLayerActivityChangeHandlerFunct)(bool messageLayerIsActive)
|
typedefvoid(*
Essa função é o callback do aplicativo para relatar a mudança na atividade da camada de mensagens. |
MessageReceiveFunct)(WeaveMessageLayer *msgLayer, WeaveMessageInfo *msgInfo, PacketBuffer *payload)
|
typedefvoid(*
Essa função é a chamada de retorno da camada superior invocada ao receber uma mensagem do Weave por UDP. |
ReceiveErrorFunct)(WeaveMessageLayer *msgLayer, WEAVE_ERROR err, const IPPacketInfo *pktInfo)
|
typedefvoid(*
Essa função é o callback da camada superior invocado ao encontrar um erro. |
State{
|
enum O estado da WeaveMessageLayer. |
TunneledMsgReceiveFunct)(WeaveMessageLayer *msgLayer, PacketBuffer *payload)
|
typedefvoid(*
Essa função é o callback da camada superior invocado ao receber um pacote encapsulado em um túnel UDP local. |
Atributos públicos |
|
---|---|
AppState
|
void *
Um ponteiro para um objeto de estado específico do aplicativo.
|
ExchangeMgr
|
[READ ONLY] O objeto WeaveExchangeManager associado.
|
FabricState
|
[READ ONLY] O objeto WeaveFabricState associado.
|
IncomingConIdleTimeout
|
uint32_t
Tempo limite de inatividade padrão (em milissegundos) para conexões de entrada.
|
Inet
|
InetLayer *
[READ ONLY] O objeto InetLayer associado.
|
IsListening
|
bool
[SOMENTE LEITURA] Verdadeiro se detectar conexões/mensagens recebidas. Caso contrário, será falso.
|
OnAcceptError
|
|
OnConnectionReceived
|
|
OnMessageReceived
|
|
OnReceiveError
|
|
OnUDPTunneledMessageReceived
|
|
SecurityMgr
|
[READ ONLY] O objeto WeaveSecurityManager associado.
|
State
|
uint8_t
[SOMENTE LEITURA] O estado do objeto WeaveMessageLayer.
|
SystemLayer
|
|
mDropMessage
|
bool
Interno e somente para depuração Quando definida, WeaveMessageLayer descarta a mensagem e retorna.
|
Funções públicas |
|
---|---|
ClearUnsecuredConnectionListener(ConnectionReceiveFunct oldOnUnsecuredConnectionReceived, CallbackRemovedFunct newOnUnsecuredConnectionCallbacksRemoved)
|
|
CloseEndpoints(void)
|
Feche todos os endpoints TCP e UDP abertos.
|
CreateTunnel(WeaveConnectionTunnel **tunPtr, WeaveConnection & conOne, WeaveConnection & conTwo, uint32_t inactivityTimeoutMS)
|
Crie um WeaveConnectionTunnel combinando dois WeaveConnections especificados.
|
DecodeHeader(PacketBuffer *msgBuf, WeaveMessageInfo *msgInfo, uint8_t **payloadStart)
|
Decodificar um cabeçalho da camada da mensagem do Weave a partir de uma mensagem do Weave recebida.
|
EncodeMessage(WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf, WeaveConnection *con, uint16_t maxLen, uint16_t reserve)
|
Codifique um cabeçalho WeaveMessageLayer em um PackageBuffer.
|
EncodeMessage(const IPAddress & destAddr, uint16_t destPort, InterfaceId sendIntId, WeaveMessageInfo *msgInfo, PacketBuffer *payload)
|
Codificar um cabeçalho de camada da mensagem do Weave em um PackageBuffer.
|
EphemeralUDPPortEnabled(void) const
|
bool
Verifique se as trocas do Weave UDP iniciadas localmente precisam ser enviadas de uma porta de origem UDP temporária.
|
GetConnectionPoolStats(nl::Weave::System::Stats::count_t & aOutInUse) const
|
void
Descubra o número de WeaveConnections em uso e o tamanho do pool.
|
IPv4ListenEnabled(void) const
|
bool
Verifique se o WeaveMessageLayer está configurado para detectar comunicações de entrada via IPv4.
|
IPv6ListenEnabled(void) const
|
bool
Verifique se o WeaveMessageLayer está configurado para detectar comunicações de entrada via IPv4.
|
Init(InitContext *context)
|
Inicialize o objeto da camada Weave Message.
|
IsBoundToLocalIPv4Address(void) const
|
bool
Verifique se WeaveMessageLayer está vinculado a um endereço IPv4 local.
|
IsBoundToLocalIPv6Address(void) const
|
bool
Verifique se WeaveMessageLayer está vinculada a um endereço IPv6 local.
|
IsMessageLayerActive(void)
|
bool
|
NewConnection(void)
|
Crie um novo objeto WeaveConnection a partir de um pool.
|
NewConnectionTunnel(void)
|
Crie um novo objeto WeaveConnectionTunnel a partir de um pool.
|
ReEncodeMessage(PacketBuffer *buf)
|
|
RefreshEndpoints(void)
|
Atualizar os endpoints InetLayer com base no estado atual das interfaces de rede do sistema.
|
ResendMessage(WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf)
|
Reenvie uma mensagem do Weave codificada usando o endpoint UDP Inetlayer subjacente.
|
ResendMessage(const IPAddress & destAddr, WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf)
|
Reenvie uma mensagem do Weave codificada usando o endpoint UDP Inetlayer subjacente.
|
ResendMessage(const IPAddress & destAddr, uint16_t destPort, WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf)
|
Reenvie uma mensagem do Weave codificada usando o endpoint UDP Inetlayer subjacente.
|
ResendMessage(const IPAddress & destAddr, uint16_t destPort, InterfaceId interfaceId, WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf)
|
Reenvie uma mensagem do Weave codificada usando o endpoint UDP Inetlayer subjacente.
|
SendMessage(WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf)
|
Envie uma mensagem do Weave usando o endpoint UDP Inetlayer subjacente após codificá-lo.
|
SendMessage(const IPAddress & destAddr, WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf)
|
Envie uma mensagem do Weave usando o endpoint UDP Inetlayer subjacente após codificá-lo.
|
SendMessage(const IPAddress & destAddr, uint16_t destPort, InterfaceId sendIntfId, WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf)
|
Envie uma mensagem do Weave usando o endpoint UDP Inetlayer subjacente após codificá-lo.
|
SendUDPTunneledMessage(const IPAddress & destAddr, WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf)
|
Função para enviar um pacote encapsulado por um túnel UDP local.
|
SetSignalMessageLayerActivityChanged(MessageLayerActivityChangeHandlerFunct messageLayerActivityChangeHandler)
|
void
Defina um gerenciador de aplicativos que será chamado sempre que a atividade da camada de mensagens mudar.
|
SetTCPListenEnabled(bool val)
|
void
Ative ou desative a detecção de conexões TCP de entrada no WeaveMessageLayer.
|
SetUDPListenEnabled(bool val)
|
void
Ative ou desative a detecção de mensagens UDP recebidas na WeaveMessageLayer.
|
SetUnsecuredConnectionListener(ConnectionReceiveFunct newOnUnsecuredConnectionReceived, CallbackRemovedFunct newOnUnsecuredConnectionCallbacksRemoved, bool force, void *listenerState)
|
|
Shutdown(void)
|
Encerre a WeaveMessageLayer.
|
TCPListenEnabled(void) const
|
bool
Verifique se o WeaveMessageLayer está configurado para detectar conexões TCP de entrada.
|
UDPListenEnabled(void) const
|
bool
Verifique se o WeaveMessageLayer está configurado para detectar mensagens UDP de entrada.
|
UnsecuredListenEnabled(void) const
|
bool
Ativa ou desativa o início de trocas UDP do Weave de uma porta de origem UDP temporária.
|
Funções estáticas públicas |
|
---|---|
GetMaxWeavePayloadSize(const PacketBuffer *msgBuf, bool isUDP, uint32_t udpMTU)
|
uint32_t
Recebe o tamanho máximo do payload do Weave para uma configuração de mensagem e o PacketBuffer fornecido.
|
GetPeerDescription(char *buf, size_t bufSize, uint64_t nodeId, const IPAddress *addr, uint16_t port, InterfaceId interfaceId, const WeaveConnection *con)
|
void
Constrói uma string que descreve um nó de peering e as informações de endereço / conexão associadas.
|
GetPeerDescription(char *buf, size_t bufSize, const WeaveMessageInfo *msgInfo)
|
void
Constrói uma string que descreve um nó de mesmo nível com base nas informações associadas a uma mensagem recebida do terminal.
|
Classes |
|
---|---|
nl:: |
A definição da classe InitContext. |
Tipos públicos
AcceptErrorFunct
void(* AcceptErrorFunct)(WeaveMessageLayer *msgLayer, WEAVE_ERROR err)
Essa função é o callback da camada superior para informar um erro durante o tratamento de uma conexão TCP de entrada.
Detalhes | |||||
---|---|---|---|---|---|
Parâmetros |
|
CallbackRemovedFunct
void(* CallbackRemovedFunct)(void *listenerState)
Esta função é invocada para remover um callback.
Detalhes | |||
---|---|---|---|
Parâmetros |
|
ConnectionReceiveFunct
void(* ConnectionReceiveFunct)(WeaveMessageLayer *msgLayer, WeaveConnection *con)
Essa função é o callback da camada superior para lidar com uma conexão TCP de entrada.
Detalhes | |||||
---|---|---|---|---|---|
Parâmetros |
|
MessageLayerActivityChangeHandlerFunct
void(* MessageLayerActivityChangeHandlerFunct)(bool messageLayerIsActive)
Essa função é o callback do aplicativo para relatar a mudança na atividade da camada de mensagens.
A camada de mensagens é considerada ativa quando há pelo menos uma troca aberta ou uma solicitação de sincronização do contador de mensagens pendente.
Detalhes | |||
---|---|---|---|
Parâmetros |
|
MessageReceiveFunct
void(* MessageReceiveFunct)(WeaveMessageLayer *msgLayer, WeaveMessageInfo *msgInfo, PacketBuffer *payload)
Essa função é a chamada de retorno da camada superior invocada ao receber uma mensagem do Weave por UDP.
Detalhes | |||||||
---|---|---|---|---|---|---|---|
Parâmetros |
|
ReceiveErrorFunct
void(* ReceiveErrorFunct)(WeaveMessageLayer *msgLayer, WEAVE_ERROR err, const IPPacketInfo *pktInfo)
Essa função é o callback da camada superior invocado ao encontrar um erro.
Detalhes | |||||||
---|---|---|---|---|---|---|---|
Parâmetros |
|
Estado
State
O estado da WeaveMessageLayer.
Propriedades | |
---|---|
kState_Initialized
|
Estado quando a WeaveMessageLayer é inicializada. |
kState_Initializing
|
Estado quando a WeaveMessageLayer está sendo inicializada. |
kState_NotInitialized
|
Estado quando a WeaveMessageLayer não é inicializada. |
TunneledMsgReceiveFunct
void(* TunneledMsgReceiveFunct)(WeaveMessageLayer *msgLayer, PacketBuffer *payload)
Essa função é o callback da camada superior invocado ao receber um pacote encapsulado em um túnel UDP local.
Detalhes | |||||
---|---|---|---|---|---|
Parâmetros |
|
Atributos públicos
AppState
void * AppState
Um ponteiro para um objeto de estado específico do aplicativo.
IncomingConIdleTimeout
uint32_t IncomingConIdleTimeout
Tempo limite de inatividade padrão (em milissegundos) para conexões de entrada.
Inet
InetLayer * Inet
[READ ONLY] O objeto InetLayer associado.
IsListening
bool IsListening
[SOMENTE LEITURA] Verdadeiro se detectar conexões/mensagens recebidas. Caso contrário, será falso.
OnAcceptError
AcceptErrorFunct OnAcceptError
OnConnectionReceived
ConnectionReceiveFunct OnConnectionReceived
OnMessageReceived
MessageReceiveFunct OnMessageReceived
OnReceiveError
ReceiveErrorFunct OnReceiveError
OnUDPTunneledMessageReceived
TunneledMsgReceiveFunct OnUDPTunneledMessageReceived
SystemLayer
System::Layer * SystemLayer
mDropMessage
bool mDropMessage
Interno e somente para depuração Quando definida, WeaveMessageLayer descarta a mensagem e retorna.
Funções públicas
ClearUnsecuredConnectionListener
WEAVE_ERROR ClearUnsecuredConnectionListener( ConnectionReceiveFunct oldOnUnsecuredConnectionReceived, CallbackRemovedFunct newOnUnsecuredConnectionCallbacksRemoved )
CloseEndpoints
WEAVE_ERROR CloseEndpoints( void )
Feche todos os endpoints TCP e UDP abertos.
Em seguida, cancele todos os WeaveConnections abertos e encerre todos os objetos WeaveConnectionTunnel abertos.
Consulte também:Shutdown().
CreateTunnel
WEAVE_ERROR CreateTunnel( WeaveConnectionTunnel **tunPtr, WeaveConnection & conOne, WeaveConnection & conTwo, uint32_t inactivityTimeoutMS )
Crie um WeaveConnectionTunnel acoplando dois WeaveConnections especificados.
Na criação, os TCPEndPoints correspondentes aos objetos WeaveConnection do componente são transferidos para o WeaveConnectionTunnel (links em inglês). Caso contrário, os WeaveConnections são fechados.
Detalhes | |||||||||
---|---|---|---|---|---|---|---|---|---|
Parâmetros |
|
||||||||
Valores de retorno |
|
DecodeHeader
WEAVE_ERROR DecodeHeader( PacketBuffer *msgBuf, WeaveMessageInfo *msgInfo, uint8_t **payloadStart )
Decodificar um cabeçalho da camada da mensagem do Weave a partir de uma mensagem do Weave recebida.
Detalhes | |||||||
---|---|---|---|---|---|---|---|
Parâmetros |
|
||||||
Valores de retorno |
|
EncodeMessage
WEAVE_ERROR EncodeMessage( WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf, WeaveConnection *con, uint16_t maxLen, uint16_t reserve )
Codifique um cabeçalho WeaveMessageLayer em um PackageBuffer.
Detalhes | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parâmetros |
|
||||||||||||||
Valores de retorno |
|
EncodeMessage
WEAVE_ERROR EncodeMessage( const IPAddress & destAddr, uint16_t destPort, InterfaceId sendIntId, WeaveMessageInfo *msgInfo, PacketBuffer *payload )
Codificar um cabeçalho de camada da mensagem do Weave em um PackageBuffer.
Detalhes | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parâmetros |
|
||||||||||||||
Valores de retorno |
|
EphemeralUDPPortEnabled
bool EphemeralUDPPortEnabled( void ) const
Verifique se as trocas do Weave UDP iniciadas localmente precisam ser enviadas de uma porta de origem UDP temporária.
GetConnectionPoolStats
void GetConnectionPoolStats( nl::Weave::System::Stats::count_t & aOutInUse ) const
Descubra o número de WeaveConnections em uso e o tamanho do pool.
Detalhes | |||
---|---|---|---|
Parâmetros |
|
IPv4ListenEnabled
bool IPv4ListenEnabled( void ) const
Verifique se o WeaveMessageLayer está configurado para detectar comunicações de entrada via IPv4.
IPv6ListenEnabled
bool IPv6ListenEnabled( void ) const
Verifique se o WeaveMessageLayer está configurado para detectar comunicações de entrada via IPv4.
Init
WEAVE_ERROR Init( InitContext *context )
Inicialize o objeto da camada Weave Message.
Detalhes | |||||||||
---|---|---|---|---|---|---|---|---|---|
Parâmetros |
|
||||||||
Valores de retorno |
|
IsBoundToLocalIPv4Address
bool IsBoundToLocalIPv4Address( void ) const
Verifique se WeaveMessageLayer está vinculado a um endereço IPv4 local.
IsBoundToLocalIPv6Address
bool IsBoundToLocalIPv6Address( void ) const
Verifique se WeaveMessageLayer está vinculada a um endereço IPv6 local.
IsMessageLayerActive
bool IsMessageLayerActive( void )
NewConnection
WeaveConnection * NewConnection( void )
Crie um novo objeto WeaveConnection a partir de um pool.
Detalhes | |
---|---|
Retornos |
um ponteiro para o objeto WeaveConnection recém-criado se for bem-sucedido. Caso contrário, será nulo.
|
NewConnectionTunnel
WeaveConnectionTunnel * NewConnectionTunnel( void )
Crie um novo objeto WeaveConnectionTunnel a partir de um pool.
Detalhes | |
---|---|
Retornos |
um ponteiro para o objeto WeaveConnectionTunnel recém-criado se for bem-sucedido. Caso contrário, será nulo.
|
ReEncodeMessage
WEAVE_ERROR ReEncodeMessage( PacketBuffer *buf )
RefreshEndpoints
WEAVE_ERROR RefreshEndpoints( void )
Atualizar os endpoints InetLayer com base no estado atual das interfaces de rede do sistema.
Detalhes | |||||
---|---|---|---|---|---|
Valores de retorno |
|
ResendMessage
WEAVE_ERROR ResendMessage( WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf )
Reenvie uma mensagem do Weave codificada usando o endpoint UDP Inetlayer subjacente.
Detalhes | |||||
---|---|---|---|---|---|
Parâmetros |
|
||||
Valores de retorno |
|
ResendMessage
WEAVE_ERROR ResendMessage( const IPAddress & destAddr, WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf )
Reenvie uma mensagem do Weave codificada usando o endpoint UDP Inetlayer subjacente.
Detalhes | |||||||
---|---|---|---|---|---|---|---|
Parâmetros |
|
||||||
Valores de retorno |
|
ResendMessage
WEAVE_ERROR ResendMessage( const IPAddress & destAddr, uint16_t destPort, WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf )
Reenvie uma mensagem do Weave codificada usando o endpoint UDP Inetlayer subjacente.
Detalhes | |||||||||
---|---|---|---|---|---|---|---|---|---|
Parâmetros |
|
||||||||
Valores de retorno |
|
ResendMessage
WEAVE_ERROR ResendMessage( const IPAddress & destAddr, uint16_t destPort, InterfaceId interfaceId, WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf )
Reenvie uma mensagem do Weave codificada usando o endpoint UDP Inetlayer subjacente.
Observação:se o endereço de destino não tiver sido fornecido, tente determiná-lo pelo identificador do nó no cabeçalho da mensagem. Reprovar se não for possível fazer isso. -Se o endereço de destino for um endereço de malha para a malha local e o autor da chamada não tiver especificado o ID do nó de destino, extraia-o do endereço de destino.
Detalhes | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parâmetros |
|
||||||||||
Valores de retorno |
|
SendMessage
WEAVE_ERROR SendMessage( WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf )
Envie uma mensagem do Weave usando o endpoint UDP Inetlayer subjacente após codificá-lo.
Detalhes | |||||
---|---|---|---|---|---|
Parâmetros |
|
||||
Valores de retorno |
|
SendMessage
WEAVE_ERROR SendMessage( const IPAddress & destAddr, WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf )
Envie uma mensagem do Weave usando o endpoint UDP Inetlayer subjacente após codificá-lo.
Observação:a porta de destino usada é WEAVE_PORT. -Se o endereço de destino não tiver sido fornecido, tente determiná-lo a partir do identificador do nó no cabeçalho da mensagem. Reprovar se não for possível fazer isso.
-Se o endereço de destino for um endereço de malha para a malha local e o autor da chamada não tiver especificado o ID do nó de destino, extraia-o do endereço de destino.
Detalhes | |||||||
---|---|---|---|---|---|---|---|
Parâmetros |
|
||||||
Valores de retorno |
|
SendMessage
WEAVE_ERROR SendMessage( const IPAddress & destAddr, uint16_t destPort, InterfaceId sendIntfId, WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf )
Envie uma mensagem do Weave usando o endpoint UDP Inetlayer subjacente após codificá-lo.
Observação:se o endereço de destino não tiver sido fornecido, tente determiná-lo pelo identificador do nó no cabeçalho da mensagem. Reprovar se não for possível fazer isso. -Se o endereço de destino for um endereço de malha para a malha local e o autor da chamada não tiver especificado o ID do nó de destino, extraia-o do endereço de destino.
Detalhes | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parâmetros |
|
||||||||||
Valores de retorno |
|
SendUDPTunneledMessage
WEAVE_ERROR SendUDPTunneledMessage( const IPAddress & destAddr, WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf )
Função para enviar um pacote encapsulado por um túnel UDP local.
Enviar uma mensagem de dados IPv6 em túnel por UDP.
Detalhes | |||||||
---|---|---|---|---|---|---|---|
Parâmetros |
|
||||||
Valores de retorno |
|
SetSignalMessageLayerActivityChanged
void SetSignalMessageLayerActivityChanged( MessageLayerActivityChangeHandlerFunct messageLayerActivityChangeHandler )
Defina um gerenciador de aplicativos que será chamado sempre que a atividade da camada de mensagens mudar.
Especificamente, o aplicativo será notificado todas as vezes:
- o número de alterações de trocas abertas.
- o número de solicitações pendentes de sincronização de contador de mensagens muda de zero para pelo menos um e de volta para zero. O manipulador é servido como um sinal geral que indica se há conversas do Weave em andamento ou respostas pendentes. O gerenciador precisa ser definido depois que WeaveMessageLayer é inicializada. Encerrar a WeaveMessageLayer limpará o gerenciador atual.
Detalhes | |||
---|---|---|---|
Parâmetros |
|
||
Valores de retorno |
|
SetTCPListenEnabled
void SetTCPListenEnabled( bool val )
Ative ou desative a detecção de conexões TCP de entrada no WeaveMessageLayer.
OBSERVAÇÃO: é preciso chamar RefreshEndpoints()
depois que o estado de detecção do TCP for alterado.
SetUDPListenEnabled
void SetUDPListenEnabled( bool val )
Ative ou desative a detecção de mensagens UDP recebidas na WeaveMessageLayer.
OBSERVAÇÃO: é preciso chamar RefreshEndpoints()
depois que o estado de detecção do UDP mudar.
SetUnsecuredConnectionListener
WEAVE_ERROR SetUnsecuredConnectionListener( ConnectionReceiveFunct newOnUnsecuredConnectionReceived, CallbackRemovedFunct newOnUnsecuredConnectionCallbacksRemoved, bool force, void *listenerState )
Encerramento
WEAVE_ERROR Shutdown( void )
Encerre a WeaveMessageLayer.
Feche todos os endpoints da camada Inet abertos, redefina todos os callbacks de camada superior, as variáveis de membro e os objetos. Uma chamada para Shutdown() encerra o objeto WeaveMessageLayer.
TCPListenEnabled
bool TCPListenEnabled( void ) const
Verifique se o WeaveMessageLayer está configurado para detectar conexões TCP de entrada.
UDPListenEnabled
bool UDPListenEnabled( void ) const
Verifique se o WeaveMessageLayer está configurado para detectar mensagens UDP de entrada.
UnsecuredListenEnabled
bool UnsecuredListenEnabled( void ) const
Ativa ou desativa o início de trocas UDP do Weave de uma porta de origem UDP temporária.
OBSERVAÇÃO: RefreshEndpoints()
precisará ser chamado depois que o estado temporário da porta for alterado. Verifique se a escuta desprotegida está ativada.
WeaveMessageLayer
WeaveMessageLayer( void )
O construtor da camada Weave Message.
Funções estáticas públicas
GetMaxWeavePayloadSize
uint32_t GetMaxWeavePayloadSize( const PacketBuffer *msgBuf, bool isUDP, uint32_t udpMTU )
Recebe o tamanho máximo do payload do Weave para uma configuração de mensagem e o PacketBuffer fornecido.
O tamanho máximo do payload retornado não excederá o espaço disponível para um payload dentro do PackageBuffer fornecido.
Se a mensagem for UDP, o tamanho máximo de payload retornado não vai resultar em uma mensagem do Weave que não ultrapasse a MTU UDP especificada.
Finalmente, o tamanho máximo de payload retornado não resultará em uma mensagem do Weave que estourará o tamanho máximo da mensagem do Weave.
Detalhes | |||||||
---|---|---|---|---|---|---|---|
Parâmetros |
|
||||||
Retornos |
o tamanho máximo de payload do Weave.
|
GetPeerDescription
void GetPeerDescription( char *buf, size_t bufSize, uint64_t nodeId, const IPAddress *addr, uint16_t port, InterfaceId interfaceId, const WeaveConnection *con )
Constrói uma string que descreve um nó de peering e as informações de endereço / conexão associadas.
A string gerada tem o seguinte formato:
([ ]: % , con )
Detalhes | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parâmetros |
|
GetPeerDescription
void GetPeerDescription( char *buf, size_t bufSize, const WeaveMessageInfo *msgInfo )
Constrói uma string que descreve um nó de mesmo nível com base nas informações associadas a uma mensagem recebida do terminal.
Detalhes | |||||||
---|---|---|---|---|---|---|---|
Parâmetros |
|