nl:: Weave:: WeaveMessageLayer
#include <src/lib/core/WeaveMessageLayer.h>
La definizione della classe WeaveMessageLayer, che gestisce la comunicazione con altri nodi Weave.
Riepilogo
Utilizza uno dei diversi endpoint InetLayer per stabilire un canale di comunicazione con altri nodi Weave.
Costruttori e distruttori |
|
---|---|
WeaveMessageLayer(void)
Il costruttore del livello Messaggio Weave.
|
Tipi pubblici |
|
---|---|
AcceptErrorFunct)(WeaveMessageLayer *msgLayer, WEAVE_ERROR err)
|
typedefvoid(*
Questa funzione è il callback di livello superiore per segnalare un errore durante la gestione di una connessione TCP in arrivo. |
CallbackRemovedFunct)(void *listenerState)
|
typedefvoid(*
Questa funzione viene richiamata per rimuovere un callback. |
ConnectionReceiveFunct)(WeaveMessageLayer *msgLayer, WeaveConnection *con)
|
typedefvoid(*
Questa funzione è il callback di livello superiore per la gestione di una connessione TCP in entrata. |
MessageLayerActivityChangeHandlerFunct)(bool messageLayerIsActive)
|
typedefvoid(*
Questa funzione è il callback dell'applicazione per la segnalazione della modifica dell'attività del livello di messaggio. |
MessageReceiveFunct)(WeaveMessageLayer *msgLayer, WeaveMessageInfo *msgInfo, PacketBuffer *payload)
|
typedefvoid(*
Questa funzione è il callback di livello superiore che viene invocato al ricevimento di un messaggio Weave tramite UDP. |
ReceiveErrorFunct)(WeaveMessageLayer *msgLayer, WEAVE_ERROR err, const IPPacketInfo *pktInfo)
|
typedefvoid(*
Questa funzione è il callback di livello superiore invocato in caso di errore. |
State{
|
enum Lo stato di WeaveMessageLayer. |
TunneledMsgReceiveFunct)(WeaveMessageLayer *msgLayer, PacketBuffer *payload)
|
typedefvoid(*
Questa funzione è il callback di livello superiore che viene invocato al ricevimento di un pacchetto in tunnel su un tunnel UDP locale. |
Attributi pubblici |
|
---|---|
AppState
|
void *
Un puntatore a un oggetto stato specifico dell'applicazione.
|
ExchangeMgr
|
[SOLO LETTURA] L'oggetto WeaveExchangeManager associato.
|
FabricState
|
[SOLO LETTURA] L'oggetto WeaveFabricState associato.
|
IncomingConIdleTimeout
|
uint32_t
Timeout di inattività predefinito (in millisecondi) per le connessioni in entrata.
|
Inet
|
InetLayer *
[SOLO LETTURA] L'oggetto Inetlayer associato.
|
IsListening
|
bool
[SOLO LETTURA] True se è in ascolto per connessioni/messaggi in arrivo, false in caso contrario.
|
OnAcceptError
|
|
OnConnectionReceived
|
|
OnMessageReceived
|
|
OnReceiveError
|
|
OnUDPTunneledMessageReceived
|
|
SecurityMgr
|
[SOLO LETTURA] L'oggetto WeaveSecurityManager associato.
|
State
|
uint8_t
[SOLO LETTURA] Lo stato dell'oggetto WeaveMessageLayer.
|
SystemLayer
|
|
mDropMessage
|
bool
Interno e solo per debug; se impostato, WeaveMessageLayer elimina il messaggio e restituisce.
|
Funzioni pubbliche |
|
---|---|
ClearUnsecuredConnectionListener(ConnectionReceiveFunct oldOnUnsecuredConnectionReceived, CallbackRemovedFunct newOnUnsecuredConnectionCallbacksRemoved)
|
|
CloseEndpoints(void)
|
Chiudi tutti gli endpoint TCP e UDP aperti.
|
CreateTunnel(WeaveConnectionTunnel **tunPtr, WeaveConnection & conOne, WeaveConnection & conTwo, uint32_t inactivityTimeoutMS)
|
Crea un WeaveConnectionTunnel accoppiando due WeaveConnection specificati.
|
DecodeHeader(PacketBuffer *msgBuf, WeaveMessageInfo *msgInfo, uint8_t **payloadStart)
|
Decodifica un'intestazione del livello del messaggio Weave da un messaggio Weave ricevuto.
|
EncodeMessage(WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf, WeaveConnection *con, uint16_t maxLen, uint16_t reserve)
|
Codifica un'intestazione WeaveMessageLayer in un PacketBuffer.
|
EncodeMessage(const IPAddress & destAddr, uint16_t destPort, InterfaceId sendIntId, WeaveMessageInfo *msgInfo, PacketBuffer *payload)
|
Codifica un'intestazione del livello di messaggio Weave in un PacketBuffer.
|
EphemeralUDPPortEnabled(void) const
|
bool
Controlla se le sessioni UDP Weave avviate localmente devono essere inviate da una porta di origine UDP temporanea.
|
GetConnectionPoolStats(nl::Weave::System::Stats::count_t & aOutInUse) const
|
void
Ottieni il numero di WeaveConnections in uso e le dimensioni del pool.
|
IPv4ListenEnabled(void) const
|
bool
Verifica se WeaveMessageLayer è configurato per ascoltare le comunicazioni in entrata tramite IPv4.
|
IPv6ListenEnabled(void) const
|
bool
Verifica se WeaveMessageLayer è configurato per ascoltare le comunicazioni in entrata tramite IPv4.
|
Init(InitContext *context)
|
Inizializza l'oggetto del livello Weave Message.
|
IsBoundToLocalIPv4Address(void) const
|
bool
Verifica se WeaveMessageLayer è associato a un indirizzo IPv4 locale.
|
IsBoundToLocalIPv6Address(void) const
|
bool
Verifica se WeaveMessageLayer è associato a un indirizzo IPv6 locale.
|
IsMessageLayerActive(void)
|
bool
|
NewConnection(void)
|
Crea un nuovo oggetto WeaveConnection da un pool.
|
NewConnectionTunnel(void)
|
Crea un nuovo oggetto WeaveConnectionTunnel da un pool.
|
ReEncodeMessage(PacketBuffer *buf)
|
|
RefreshEndpoints(void)
|
Aggiorna gli endpoint InetLayer in base allo stato attuale delle interfacce di rete del sistema.
|
ResendMessage(WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf)
|
Invia di nuovo un messaggio Weave codificato utilizzando l'endpoint UDP Inetlayer sottostante.
|
ResendMessage(const IPAddress & destAddr, WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf)
|
Invia di nuovo un messaggio Weave codificato utilizzando l'endpoint UDP Inetlayer sottostante.
|
ResendMessage(const IPAddress & destAddr, uint16_t destPort, WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf)
|
Invia di nuovo un messaggio Weave codificato utilizzando l'endpoint UDP Inetlayer sottostante.
|
ResendMessage(const IPAddress & destAddr, uint16_t destPort, InterfaceId interfaceId, WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf)
|
Invia di nuovo un messaggio Weave codificato utilizzando l'endpoint UDP Inetlayer sottostante.
|
SendMessage(WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf)
|
Invia un messaggio Weave utilizzando l'endpoint UDP Inetlayer sottostante dopo averlo codificato.
|
SendMessage(const IPAddress & destAddr, WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf)
|
Invia un messaggio Weave utilizzando l'endpoint UDP Inetlayer sottostante dopo la codifica.
|
SendMessage(const IPAddress & destAddr, uint16_t destPort, InterfaceId sendIntfId, WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf)
|
Invia un messaggio Weave utilizzando l'endpoint UDP Inetlayer sottostante dopo averlo codificato.
|
SendUDPTunneledMessage(const IPAddress & destAddr, WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf)
|
Funzione per inviare un pacchetto in tunnel tramite un tunnel UDP locale.
|
SetSignalMessageLayerActivityChanged(MessageLayerActivityChangeHandlerFunct messageLayerActivityChangeHandler)
|
void
Imposta un gestore dell'applicazione che verrà chiamato ogni volta che cambia l'attività del livello di messaggi.
|
SetTCPListenEnabled(bool val)
|
void
Attiva o disattiva l'ascolto delle connessioni TCP in entrata in WeaveMessageLayer.
|
SetUDPListenEnabled(bool val)
|
void
Attiva o disattiva l'ascolto dei messaggi UDP in arrivo in WeaveMessageLayer.
|
SetUnsecuredConnectionListener(ConnectionReceiveFunct newOnUnsecuredConnectionReceived, CallbackRemovedFunct newOnUnsecuredConnectionCallbacksRemoved, bool force, void *listenerState)
|
|
Shutdown(void)
|
Arresta WeaveMessageLayer.
|
TCPListenEnabled(void) const
|
bool
Controlla se WeaveMessageLayer è configurato per ascoltare le connessioni TCP in entrata.
|
UDPListenEnabled(void) const
|
bool
Controlla se WeaveMessageLayer è configurato per ascoltare i messaggi UDP in entrata.
|
UnsecuredListenEnabled(void) const
|
bool
Attiva o disattiva l'avvio di scambi UDP Weave da una porta di origine UDP temporanea.
|
Funzioni statiche pubbliche |
|
---|---|
GetMaxWeavePayloadSize(const PacketBuffer *msgBuf, bool isUDP, uint32_t udpMTU)
|
uint32_t
Ottieni la dimensione massima del payload Weave per una configurazione del messaggio e il PacketBuffer fornito.
|
GetPeerDescription(char *buf, size_t bufSize, uint64_t nodeId, const IPAddress *addr, uint16_t port, InterfaceId interfaceId, const WeaveConnection *con)
|
void
Costruisce una stringa che descrive un nodo peer e le relative informazioni su indirizzo/connessione.
|
GetPeerDescription(char *buf, size_t bufSize, const WeaveMessageInfo *msgInfo)
|
void
Costruisce una stringa che descrive un nodo peer in base alle informazioni associate a un messaggio ricevuto dal peer.
|
Corsi |
|
---|---|
nl:: |
La definizione della classe InitContext. |
Tipi pubblici
AcceptErrorFunct
void(* AcceptErrorFunct)(WeaveMessageLayer *msgLayer, WEAVE_ERROR err)
Questa funzione è il callback di livello superiore per segnalare un errore durante la gestione di una connessione TCP in arrivo.
Dettagli | |||||
---|---|---|---|---|---|
Parametri |
|
CallbackRemovedFunct
void(* CallbackRemovedFunct)(void *listenerState)
Questa funzione viene richiamata per rimuovere un callback.
Dettagli | |||
---|---|---|---|
Parametri |
|
ConnectionReceiveFunct
void(* ConnectionReceiveFunct)(WeaveMessageLayer *msgLayer, WeaveConnection *con)
Questa funzione è il callback di livello superiore per la gestione di una connessione TCP in arrivo.
Dettagli | |||||
---|---|---|---|---|---|
Parametri |
|
MessageLayerActivityChangeHandlerFunct
void(* MessageLayerActivityChangeHandlerFunct)(bool messageLayerIsActive)
Questa funzione è il callback dell'applicazione per la segnalazione della modifica dell'attività del livello di messaggio.
Il livello di messaggio è considerato attivo se esiste almeno una richiesta di sincronizzazione del contatore di messaggi aperto o in attesa.
Dettagli | |||
---|---|---|---|
Parametri |
|
MessageReceiveFunct
void(* MessageReceiveFunct)(WeaveMessageLayer *msgLayer, WeaveMessageInfo *msgInfo, PacketBuffer *payload)
Questa funzione è il callback di livello superiore che viene invocato al ricevimento di un messaggio Weave tramite UDP.
Dettagli | |||||||
---|---|---|---|---|---|---|---|
Parametri |
|
ReceiveErrorFunct
void(* ReceiveErrorFunct)(WeaveMessageLayer *msgLayer, WEAVE_ERROR err, const IPPacketInfo *pktInfo)
Questa funzione è il callback di livello superiore richiamato quando si verifica un errore.
Dettagli | |||||||
---|---|---|---|---|---|---|---|
Parametri |
|
Stato
State
Lo stato di WeaveMessageLayer.
Proprietà | |
---|---|
kState_Initialized
|
Stato quando WeaveMessageLayer viene inizializzato. |
kState_Initializing
|
Indica quando WeaveMessageLayer è in fase di inizializzazione. |
kState_NotInitialized
|
Stato quando WeaveMessageLayer non viene inizializzato. |
TunneledMsgReceiveFunct
void(* TunneledMsgReceiveFunct)(WeaveMessageLayer *msgLayer, PacketBuffer *payload)
Questa funzione è il callback di livello superiore che viene invocato al ricevimento di un pacchetto in tunnel su un tunnel UDP locale.
Dettagli | |||||
---|---|---|---|---|---|
Parametri |
|
Attributi pubblici
AppState
void * AppState
Un puntatore a un oggetto stato specifico dell'applicazione.
ExchangeMgr
WeaveExchangeManager * ExchangeMgr
[SOLO LETTURA] L'oggetto WeaveExchangeManager associato.
IncomingConIdleTimeout
uint32_t IncomingConIdleTimeout
Timeout di inattività predefinito (in millisecondi) per le connessioni in entrata.
Inet
InetLayer * Inet
[SOLO LETTURA] L'oggetto InetLayer associato.
IsListening
bool IsListening
[SOLO LETTURA] True se si ascoltano connessioni/messaggi in arrivo, falso negli altri casi.
OnAcceptError
AcceptErrorFunct OnAcceptError
OnConnectionReceived
ConnectionReceiveFunct OnConnectionReceived
OnMessageReceived
MessageReceiveFunct OnMessageReceived
OnReceiveError
ReceiveErrorFunct OnReceiveError
OnUDPTunneledMessageReceived
TunneledMsgReceiveFunct OnUDPTunneledMessageReceived
SecurityMgr
WeaveSecurityManager * SecurityMgr
[SOLO LETTURA] L'oggetto WeaveSecurityManager associato.
SystemLayer
System::Layer * SystemLayer
mDropMessage
bool mDropMessage
Interno e solo per il debug. Se impostato, WeaveMessageLayer elimina il messaggio e restituisce.
Funzioni pubbliche
ClearUnsecuredConnectionListener
WEAVE_ERROR ClearUnsecuredConnectionListener( ConnectionReceiveFunct oldOnUnsecuredConnectionReceived, CallbackRemovedFunct newOnUnsecuredConnectionCallbacksRemoved )
CloseEndpoints
WEAVE_ERROR CloseEndpoints( void )
Chiudi tutti gli endpoint TCP e UDP aperti.
Interrompi quindi tutti gli oggetti WeaveConnection aperti e tutti gli oggetti WeaveConnectionTunnel aperti.
Vedi anche:Shutdown().
CreateTunnel
WEAVE_ERROR CreateTunnel( WeaveConnectionTunnel **tunPtr, WeaveConnection & conOne, WeaveConnection & conTwo, uint32_t inactivityTimeoutMS )
Crea un WeaveConnectionTunnel accoppiando due WeaveConnection specificati.
Al termine della creazione, gli endpoint TCP corrispondenti agli oggetti WeaveConnection del componente vengono trasferiti a WeaveConnectionTunnel, altrimenti le connessioni Weave vengono chiuse.
Dettagli | |||||||||
---|---|---|---|---|---|---|---|---|---|
Parametri |
|
||||||||
Valori restituiti |
|
DecodeHeader
WEAVE_ERROR DecodeHeader( PacketBuffer *msgBuf, WeaveMessageInfo *msgInfo, uint8_t **payloadStart )
Decodifica l'intestazione di un livello messaggio Weave da un messaggio Weave ricevuto.
Dettagli | |||||||
---|---|---|---|---|---|---|---|
Parametri |
|
||||||
Valori restituiti |
|
EncodeMessage
WEAVE_ERROR EncodeMessage( WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf, WeaveConnection *con, uint16_t maxLen, uint16_t reserve )
Codifica un'intestazione WeaveMessageLayer in un PacketBuffer.
Dettagli | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parametri |
|
||||||||||||||
Valori restituiti |
|
EncodeMessage
WEAVE_ERROR EncodeMessage( const IPAddress & destAddr, uint16_t destPort, InterfaceId sendIntId, WeaveMessageInfo *msgInfo, PacketBuffer *payload )
Codifica un'intestazione di livello Weave Message in un PacketBuffer.
Dettagli | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parametri |
|
||||||||||||||
Valori restituiti |
|
EphemeralUDPPortEnabled
bool EphemeralUDPPortEnabled( void ) const
Controlla se le sessioni UDP Weave avviate localmente devono essere inviate da una porta di origine UDP temporanea.
GetConnectionPoolStats
void GetConnectionPoolStats( nl::Weave::System::Stats::count_t & aOutInUse ) const
Ottieni il numero di WeaveConnections in uso e le dimensioni del pool.
Dettagli | |||
---|---|---|---|
Parametri |
|
IPv4ListenEnabled
bool IPv4ListenEnabled( void ) const
Controlla se WeaveMessageLayer è configurato per rimanere in ascolto delle comunicazioni in entrata su IPv4.
IPv6ListenEnabled
bool IPv6ListenEnabled( void ) const
Verifica se WeaveMessageLayer è configurato per ascoltare le comunicazioni in entrata tramite IPv4.
Inizializzazione
WEAVE_ERROR Init( InitContext *context )
Inizializza l'oggetto del livello Weave Message.
Dettagli | |||||||||
---|---|---|---|---|---|---|---|---|---|
Parametri |
|
||||||||
Valori restituiti |
|
IsBoundToLocalIPv4Address
bool IsBoundToLocalIPv4Address( void ) const
Verifica se WeaveMessageLayer è associato a un indirizzo IPv4 locale.
IsBoundToLocalIPv6Address
bool IsBoundToLocalIPv6Address( void ) const
Verifica se WeaveMessageLayer è associato a un indirizzo IPv6 locale.
IsMessageLayerActive
bool IsMessageLayerActive( void )
NewConnection
WeaveConnection * NewConnection( void )
Crea un nuovo oggetto WeaveConnection da un pool.
Dettagli | |
---|---|
Restituisce |
Un puntatore all'oggetto WeaveConnection appena creato se l'operazione è andata a buon fine, altrimenti NULL.
|
NewConnectionTunnel
WeaveConnectionTunnel * NewConnectionTunnel( void )
Crea un nuovo oggetto WeaveConnectionTunnel da un pool.
Dettagli | |
---|---|
Restituisce |
un puntatore all'oggetto WeaveConnectionTunnel appena creato in caso di operazione riuscita, altrimenti NULL.
|
ReEncodeMessage
WEAVE_ERROR ReEncodeMessage( PacketBuffer *buf )
RefreshEndpoints
WEAVE_ERROR RefreshEndpoints( void )
Aggiorna gli endpoint InetLayer in base allo stato attuale delle interfacce di rete del sistema.
Dettagli | |||||
---|---|---|---|---|---|
Valori restituiti |
|
ResendMessage
WEAVE_ERROR ResendMessage( WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf )
Invia di nuovo un messaggio Weave codificato utilizzando l'endpoint UDP Inetlayer sottostante.
Dettagli | |||||
---|---|---|---|---|---|
Parametri |
|
||||
Valori restituiti |
|
ResendMessage
WEAVE_ERROR ResendMessage( const IPAddress & destAddr, WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf )
Invia di nuovo un messaggio Weave codificato utilizzando l'endpoint UDP Inetlayer sottostante.
Dettagli | |||||||
---|---|---|---|---|---|---|---|
Parametri |
|
||||||
Valori restituiti |
|
ResendMessage
WEAVE_ERROR ResendMessage( const IPAddress & destAddr, uint16_t destPort, WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf )
Invia di nuovo un messaggio Weave codificato utilizzando l'endpoint UDP Inetlayer sottostante.
Dettagli | |||||||||
---|---|---|---|---|---|---|---|---|---|
Parametri |
|
||||||||
Valori restituiti |
|
ResendMessage
WEAVE_ERROR ResendMessage( const IPAddress & destAddr, uint16_t destPort, InterfaceId interfaceId, WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf )
Invia di nuovo un messaggio Weave codificato utilizzando l'endpoint UDP Inetlayer sottostante.
Nota:se l'indirizzo di destinazione non è stato fornito, prova a determinarlo dall'identificatore del nodo nell'intestazione del messaggio. Errore se non è possibile eseguire questa operazione. -Se l'indirizzo di destinazione è un indirizzo fabric per la struttura locale e il chiamante non ha specificato l'ID nodo di destinazione, estrailo dall'indirizzo di destinazione.
Dettagli | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parametri |
|
||||||||||
Valori restituiti |
|
SendMessage
WEAVE_ERROR SendMessage( WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf )
Invia un messaggio Weave utilizzando l'endpoint UDP Inetlayer sottostante dopo averlo codificato.
Dettagli | |||||
---|---|---|---|---|---|
Parametri |
|
||||
Valori restituiti |
|
SendMessage
WEAVE_ERROR SendMessage( const IPAddress & destAddr, WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf )
Invia un messaggio Weave utilizzando l'endpoint UDP Inetlayer sottostante dopo averlo codificato.
Nota: la porta di destinazione utilizzata è WEAVE_PORT. - Se l'indirizzo di destinazione non è stato fornito, prova a determinarlo dall'identificatore del nodo nell'intestazione del messaggio. Errore se non è possibile eseguire questa operazione.
- Se l'indirizzo di destinazione è un indirizzo del fabric per il fabric locale e l'utente che ha chiamato non ha specificato l'ID del nodo di destinazione, estrailo dall'indirizzo di destinazione.
Dettagli | |||||||
---|---|---|---|---|---|---|---|
Parametri |
|
||||||
Valori restituiti |
|
SendMessage
WEAVE_ERROR SendMessage( const IPAddress & destAddr, uint16_t destPort, InterfaceId sendIntfId, WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf )
Invia un messaggio Weave utilizzando l'endpoint UDP Inetlayer sottostante dopo averlo codificato.
Nota:se l'indirizzo di destinazione non è stato fornito, prova a determinarlo dall'identificatore del nodo nell'intestazione del messaggio. Errore se non è possibile eseguire questa operazione. - Se l'indirizzo di destinazione è un indirizzo del fabric per il fabric locale e l'utente che ha chiamato non ha specificato l'ID del nodo di destinazione, estrailo dall'indirizzo di destinazione.
Dettagli | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parametri |
|
||||||||||
Valori restituiti |
|
SendUDPTunneledMessage
WEAVE_ERROR SendUDPTunneledMessage( const IPAddress & destAddr, WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf )
Funzione per inviare un pacchetto in tunnel tramite un tunnel UDP locale.
Invia un messaggio di dati IPv6 in tunnel tramite UDP.
Dettagli | |||||||
---|---|---|---|---|---|---|---|
Parametri |
|
||||||
Valori restituiti |
|
SetSignalMessageLayerActivityChanged
void SetSignalMessageLayerActivityChanged( MessageLayerActivityChangeHandlerFunct messageLayerActivityChangeHandler )
Imposta un gestore dell'applicazione che verrà chiamato ogni volta che cambia l'attività del livello di messaggi.
Nello specifico, l'applicazione riceverà una notifica ogni volta che:
- il numero di scambi aperti cambia.
- il numero di richieste di sincronizzazione dei contatori dei messaggi in attesa passa da zero ad almeno uno e viceversa. L'handler viene visualizzato come indicatore generale che indica se sono in corso conversazioni Weave o se sono presenti risposte in attesa. L'handler deve essere impostato dopo l'inizializzazione di WeaveMessageLayer; l'arresto di WeaveMessageLayer comporta l'eliminazione dell'handler corrente.
Dettagli | |||
---|---|---|---|
Parametri |
|
||
Valori restituiti |
|
SetTCPListenEnabled
void SetTCPListenEnabled( bool val )
Attiva o disattiva l'ascolto delle connessioni TCP in entrata in WeaveMessageLayer.
NOTA: RefreshEndpoints()
deve essere chiamato dopo la modifica dello stato di ascolto TCP.
SetUDPListenEnabled
void SetUDPListenEnabled( bool val )
Attiva o disattiva l'ascolto dei messaggi UDP in arrivo in WeaveMessageLayer.
NOTA: RefreshEndpoints()
deve essere chiamato dopo la modifica dello stato di ascolto UDP.
SetUnsecuredConnectionListener
WEAVE_ERROR SetUnsecuredConnectionListener( ConnectionReceiveFunct newOnUnsecuredConnectionReceived, CallbackRemovedFunct newOnUnsecuredConnectionCallbacksRemoved, bool force, void *listenerState )
Arresto
WEAVE_ERROR Shutdown( void )
Arresta WeaveMessageLayer.
Chiudi tutti gli endpoint del livello Inet aperti, reimposta tutti i callback del livello superiore, le variabili dei membri e gli oggetti. Una chiamata a Shutdown() termina l'oggetto WeaveMessageLayer.
TCPListenEnabled
bool TCPListenEnabled( void ) const
Controlla se WeaveMessageLayer è configurato per ascoltare le connessioni TCP in entrata.
UDPListenEnabled
bool UDPListenEnabled( void ) const
Verifica che WeaveMessageLayer sia configurato per ascoltare i messaggi UDP in entrata.
UnsecuredListenEnabled
bool UnsecuredListenEnabled( void ) const
Attiva o disattiva l'avvio di scambi UDP Weave da una porta di origine UDP temporanea.
NOTA: RefreshEndpoints()
deve essere chiamato dopo la modifica dello stato della porta temporanea. Controlla se l'ascolto non sicuro è attivo.
WeaveMessageLayer
WeaveMessageLayer( void )
Il costruttore del livello Weave Message.
Funzioni statiche pubbliche
GetMaxWeavePayloadSize
uint32_t GetMaxWeavePayloadSize( const PacketBuffer *msgBuf, bool isUDP, uint32_t udpMTU )
Ottieni la dimensione massima del payload Weave per una configurazione del messaggio e il PacketBuffer fornito.
La dimensione massima del payload restituita non supererà lo spazio disponibile per un payload all'interno del PacketBuffer fornito.
Se il messaggio è UDP, la dimensione massima del payload restituita non genererà un messaggio Weave che non supererà l'MTU UDP specificato.
Infine, le dimensioni massime del payload restituite non produrranno un messaggio Weave che supererà le dimensioni massime del messaggio Weave.
Dettagli | |||||||
---|---|---|---|---|---|---|---|
Parametri |
|
||||||
Restituisce |
la dimensione massima del payload di Weave.
|
GetPeerDescription
void GetPeerDescription( char *buf, size_t bufSize, uint64_t nodeId, const IPAddress *addr, uint16_t port, InterfaceId interfaceId, const WeaveConnection *con )
Costruisce una stringa che descrive un nodo peer e le relative informazioni su indirizzo/connessione.
La stringa generata ha il seguente formato:
([ ]: % , con )
Dettagli | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parametri |
|
GetPeerDescription
void GetPeerDescription( char *buf, size_t bufSize, const WeaveMessageInfo *msgInfo )
Costruisce una stringa che descrive un nodo peer in base alle informazioni associate a un messaggio ricevuto dal peer.
Dettagli | |||||||
---|---|---|---|---|---|---|---|
Parametri |
|