nl:: Weave:: WeaveConnection
#include <src/lib/core/WeaveMessageLayer.h>
La definizione della classe Weave Connection.
Riepilogo
Rappresenta una connessione TCP o BLE a un altro nodo Weave.
Tipi pubblici |
|
---|---|
@58{
|
enum |
ConnectionClosedFunct)(WeaveConnection *con, WEAVE_ERROR conErr)
|
typedefvoid(*
Questa funzione è il callback dell'applicazione che viene invocato quando viene chiusa una connessione. |
ConnectionCompleteFunct)(WeaveConnection *con, WEAVE_ERROR conErr)
|
typedefvoid(*
Questa funzione è il callback dell'applicazione che viene attivato quando la configurazione di una connessione è completata. |
MessageReceiveFunct)(WeaveConnection *con, WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf)
|
typedefvoid(*
Questa funzione è il callback dell'applicazione che viene invocato quando un messaggio viene ricevuto tramite una connessione Weave. |
NetworkType{
|
enum Il tipo di rete dell'oggetto di connessione Weave. |
ReceiveErrorFunct)(WeaveConnection *con, WEAVE_ERROR err)
|
typedefvoid(*
Questa funzione è il callback dell'applicazione invocato quando si verifica un errore alla ricezione di un messaggio Weave. |
State{
|
enum Lo stato dell'oggetto di connessione Weave. |
TunneledMsgReceiveFunct)(WeaveConnection *con, const WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf)
|
typedefvoid(*
Questa funzione è il callback dell'applicazione che viene invocato alla ricezione di un pacchetto di dati "Tunnel" tramite la connessione Weave. |
Attributi pubblici |
|
---|---|
AppState
|
void *
Un puntatore all'oggetto di stato specifico dell'applicazione.
|
AuthMode
|
WeaveAuthMode
[SOLO LETTURA] Modalità di autenticazione utilizzata per stabilire le chiavi di crittografia predefinite per la connessione.
|
DefaultEncryptionType
|
uint8_t
Il tipo di crittografia predefinito per i messaggi.
|
DefaultKeyId
|
uint16_t
La chiave di crittografia predefinita da utilizzare per l'invio di messaggi.
|
MessageLayer
|
[SOLO LETTURA] L'oggetto WeaveMessageLayer associato.
|
NetworkType
|
uint8_t
[SOLO LETTURA] Il tipo di rete dell'endpoint associato.
|
OnConnectionClosed
|
|
OnConnectionComplete
|
|
OnMessageReceived
|
|
OnReceiveError
|
|
OnTunneledMessageReceived
|
|
PeerAddr
|
IPAddress
[SOLO LETTURA] L'indirizzo IP del nodo peer.
|
PeerNodeId
|
uint64_t
[SOLO LETTURA] L'identificatore del nodo del peer.
|
PeerPort
|
uint16_t
[SOLO LETTURA] Il numero di porta del nodo peer.
|
ReceiveEnabled
|
bool
[SOLO LETTURA] True se la ricezione è abilitata, false in caso contrario.
|
SendDestNodeId
|
bool
True se tutti i messaggi inviati tramite questa connessione devono includere un identificatore del nodo di destinazione codificato in modo esplicito, altrimenti false.
|
SendSourceNodeId
|
bool
True se tutti i messaggi inviati tramite questa connessione devono includere un identificatore del nodo di origine codificato in modo esplicito, altrimenti false.
|
State
|
uint8_t
[SOLO LETTURA] Lo stato dell'oggetto WeaveConnection.
|
Funzioni pubbliche |
|
---|---|
Abort(void)
|
void
Esegue una chiusura non controllata della WeaveConnection basata su TCP o BLE, ignorando tutti i dati che potrebbero essere in transito verso o dal peer.
|
AddRef(void)
|
void
Prenota un riferimento all'oggetto WeaveConnection.
|
Close(void)
|
Esegue una chiusura controllata non bloccante di WeaveConnection basata su TCP o BLE, inviando tutti i dati in uscita rimanenti prima di informare gentilmente l'host remoto che abbiamo reimpostato la connessione.
|
Close(bool suppressCloseLog)
|
Esegue una chiusura controllata non bloccante di WeaveConnection basata su TCP o BLE, inviando tutti i dati in uscita rimanenti prima di informare gentilmente l'host remoto che abbiamo reimpostato la connessione.
|
Connect(uint64_t peerNodeId)
|
Connettiti a un nodo Weave utilizzando un indirizzo IP fabric derivato dall'identificatore del nodo specificato.
|
Connect(uint64_t peerNodeId, const IPAddress & peerAddr, uint16_t peerPort)
|
Connettiti a un nodo Weave utilizzando un identificatore del nodo e/o un indirizzo IP.
|
Connect(uint64_t peerNodeId, WeaveAuthMode authMode, const IPAddress & peerAddr, uint16_t peerPort, InterfaceId intf)
|
Connettiti a un nodo Weave utilizzando un identificatore del nodo e/o un indirizzo IP su un'interfaccia specifica.
|
Connect(uint64_t peerNodeId, WeaveAuthMode authMode, const char *peerAddr, uint16_t defaultPort)
|
Connettiti a un nodo Weave utilizzando un identificatore del nodo e/o un nome host di stringa.
|
Connect(uint64_t peerNodeId, WeaveAuthMode authMode, const char *peerAddr, uint16_t peerAddrLen, uint16_t defaultPort)
|
Connettiti a un nodo Weave utilizzando un identificatore del nodo e/o un indirizzo peer stringa.
|
Connect(uint64_t peerNodeId, WeaveAuthMode authMode, const char *peerAddr, uint16_t peerAddrLen, uint8_t dnsOptions, uint16_t defaultPort)
|
Connettiti a un nodo Weave utilizzando un identificatore del nodo e/o un indirizzo peer stringa.
|
Connect(uint64_t peerNodeId, WeaveAuthMode authMode, HostPortList hostPortList, InterfaceId intf)
|
Connettiti a un nodo Weave utilizzando un identificatore del nodo e/o un elenco di nomi host e porte.
|
Connect(uint64_t peerNodeId, WeaveAuthMode authMode, HostPortList hostPortList, uint8_t dnsOptions, InterfaceId intf)
|
Connettiti a un nodo Weave utilizzando un identificatore del nodo e/o un elenco di nomi host e porte.
|
DisableKeepAlive(void)
|
|
DisableReceive(void)
|
void
Disattiva la ricezione su questa WeaveConnection.
|
EnableKeepAlive(uint16_t interval, uint16_t timeoutCount)
|
|
EnableReceive(void)
|
void
Attiva la ricezione su questa WeaveConnection.
|
GetPeerAddressInfo(IPPacketInfo & addrInfo)
|
Recupera le informazioni dell'indirizzo IP del peer.
|
GetPeerDescription(char *buf, size_t bufSize) const
|
void
Crea una stringa che descrive il nodo peer associato alla connessione.
|
GetTCPEndPoint(void) const
|
TCPEndPoint *
|
IsIncoming(void) const
|
bool
|
LogId(void) const
|
uint16_t
|
Release(void)
|
void
Riduci il conteggio dei riferimenti nell'oggetto WeaveConnection.
|
ResetUserTimeout(void)
|
|
SendMessage(WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf)
|
Invia un messaggio Weave tramite una connessione stabilita.
|
SendTunneledMessage(WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf)
|
Funzione per inviare un pacchetto con tunnel tramite una connessione Weave.
|
SetConnectTimeout(const uint32_t connTimeoutMsecs)
|
void
Imposta il timeout per la connessione in modo che la connessione vada a buon fine o restituisca un errore.
|
SetIdleTimeout(uint32_t timeoutMS)
|
Imposta il timeout di inattività sulla connessione a livello di rete sottostante.
|
SetIncoming(bool val)
|
void
|
SetUserTimeout(uint32_t userTimeoutMillis)
|
|
Shutdown(void)
|
Esegue un invio/arresto controllato TCP, assicurando che tutti i dati in uscita siano stati inviati e ricevuti dallo stack TCP del peer.
|
Tipi pubblici
@58
@58
Proprietà | |
---|---|
kGetPeerDescription_MaxLength
|
Lunghezza massima della stringa (incluso il carattere NUL) restituita da GetPeerDescription(). |
ConnectionClosedFunct
void(* ConnectionClosedFunct)(WeaveConnection *con, WEAVE_ERROR conErr)
Questa funzione è il callback dell'applicazione che viene invocato quando viene chiusa una connessione.
Dettagli | |||||
---|---|---|---|---|---|
Parametri |
|
ConnectionCompleteFunct
void(* ConnectionCompleteFunct)(WeaveConnection *con, WEAVE_ERROR conErr)
Questa funzione è il callback dell'applicazione che viene attivato quando la configurazione di una connessione è completata.
Dettagli | |||||
---|---|---|---|---|---|
Parametri |
|
MessageReceiveFunct
void(* MessageReceiveFunct)(WeaveConnection *con, WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf)
Questa funzione è il callback dell'applicazione che viene invocato quando un messaggio viene ricevuto tramite una connessione Weave.
Dettagli | |||||||
---|---|---|---|---|---|---|---|
Parametri |
|
NetworkType
NetworkType
Il tipo di rete dell'oggetto di connessione Weave.
Proprietà | |
---|---|
kNetworkType_BLE
|
Tipo di rete BLE. |
kNetworkType_IP
|
Tipo di rete TCP/IP. |
kNetworkType_Unassigned
|
Tipo di rete non assegnato. |
ReceiveErrorFunct
void(* ReceiveErrorFunct)(WeaveConnection *con, WEAVE_ERROR err)
Questa funzione è il callback dell'applicazione invocato quando si verifica un errore alla ricezione di un messaggio Weave.
Dettagli | |||||
---|---|---|---|---|---|
Parametri |
|
Stato
State
Lo stato dell'oggetto di connessione Weave.
Proprietà | |
---|---|
kState_Closed
|
Stato di chiusura della connessione. |
kState_Connected
|
Stato in cui è stata stabilita la connessione. |
kState_Connecting
|
Stato in cui è in corso il tentativo di connessione. |
kState_EstablishingSession
|
Indica quando viene stabilita una sessione sicura. |
kState_ReadyToConnect
|
Stato dopo l'inizializzazione della connessione Weave. |
kState_Resolving
|
Stato in cui è in corso l'esecuzione della risoluzione dei nomi DNS. |
kState_SendShutdown
|
Stato di interruzione della connessione. |
TunneledMsgReceiveFunct
void(* TunneledMsgReceiveFunct)(WeaveConnection *con, const WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf)
Questa funzione è il callback dell'applicazione che viene invocato alla ricezione di un pacchetto di dati "Tunnel" tramite la connessione Weave.
Dettagli | |||||||
---|---|---|---|---|---|---|---|
Parametri |
|
Attributi pubblici
AppState
void * AppState
Un puntatore all'oggetto di stato specifico dell'applicazione.
AuthMode
WeaveAuthMode AuthMode
[SOLO LETTURA] Modalità di autenticazione utilizzata per stabilire le chiavi di crittografia predefinite per la connessione.
DefaultEncryptionType
uint8_t DefaultEncryptionType
Il tipo di crittografia predefinito per i messaggi.
DefaultKeyId
uint16_t DefaultKeyId
La chiave di crittografia predefinita da utilizzare per l'invio di messaggi.
NetworkType
uint8_t NetworkType
[SOLO LETTURA] Il tipo di rete dell'endpoint associato.
OnConnectionClosed
ConnectionClosedFunct OnConnectionClosed
OnConnectionComplete
ConnectionCompleteFunct OnConnectionComplete
OnMessageReceived
MessageReceiveFunct OnMessageReceived
OnReceiveError
ReceiveErrorFunct OnReceiveError
OnTunneledMessageReceived
TunneledMsgReceiveFunct OnTunneledMessageReceived
PeerAddr
IPAddress PeerAddr
[SOLO LETTURA] L'indirizzo IP del nodo peer.
PeerNodeId
uint64_t PeerNodeId
[SOLO LETTURA] L'identificatore del nodo del peer.
PeerPort
uint16_t PeerPort
[SOLO LETTURA] Il numero di porta del nodo peer.
ReceiveEnabled
bool ReceiveEnabled
[SOLO LETTURA] True se la ricezione è abilitata, false in caso contrario.
SendDestNodeId
bool SendDestNodeId
True se tutti i messaggi inviati tramite questa connessione devono includere un identificatore del nodo di destinazione codificato in modo esplicito, altrimenti false.
SendSourceNodeId
bool SendSourceNodeId
True se tutti i messaggi inviati tramite questa connessione devono includere un identificatore del nodo di origine codificato in modo esplicito, altrimenti false.
Funzioni pubbliche
Interrompi
void Abort( void )
Esegue una chiusura non controllata della WeaveConnection basata su TCP o BLE, ignorando tutti i dati che potrebbero essere in transito verso o dal peer.
Una chiamata ad Abort() termina immediatamente la connessione sottostante. Dopodiché, l'oggetto WeaveConnection non può più essere utilizzato per ulteriori comunicazioni.
La chiamata di Abort() diminuisce il conteggio dei riferimenti associato all'oggetto WeaveConnection, indipendentemente dal fatto che la connessione sia aperta/attiva al momento della chiamata del metodo. Se così facendo il conteggio dei riferimenti raggiunge lo zero, le risorse associate all'oggetto di connessione vengono liberate. In questo caso, l'applicazione non deve avere ulteriori interazioni con l'oggetto.
Vedi anche:Shutdown(), Abort(), AddRef() e Release().
AddRef
void AddRef( void )
Prenota un riferimento all'oggetto WeaveConnection.
Il metodo AddRef() incrementa il conteggio dei riferimenti associato all'oggetto WeaveConnection. Per ogni chiamata a AddRef(), l'applicazione è responsabile di effettuare una chiamata corrispondente a Release(), Close() o Abort().
Chiudi
WEAVE_ERROR Close( void )
Esegue una chiusura controllata non bloccante di WeaveConnection basata su TCP o BLE, inviando tutti i dati in uscita rimanenti prima di informare gentilmente l'host remoto che abbiamo reimpostato la connessione.
Questo metodo non fornisce alcuna garanzia che i messaggi in uscita non riconosciuti a livello di protocollo dell'applicazione siano stati ricevuti dal peer remoto. Sia per TCP che BLE, lo stack di protocolli sottostante farà il possibile per recapitare i dati in uscita in sospeso prima di reimpostare la connessione. Per TCP, è necessario utilizzare Shutdown() prima di Close() se è necessaria una conferma di ricezione di un messaggio di livello di trasporto prima di chiudere la connessione. Le connessioni BLE non forniscono un equivalente di Shutdown().
Per le connessioni basate su BLE, Close() chiude WeaveConnection e restituisce immediatamente, ma potrebbe causare il ritardo dell'oggetto BLEEndPoint sottostante fino a quando non sono stati inviati tutti i dati in uscita. Si tratta di un effetto collaterale dell'implementazione del protocollo di trasporto Weave over BLE esistente all'interno di Weave Blelayer.
Dopo la chiamata di Close(), l'oggetto WeaveConnection non può più essere utilizzato per ulteriori comunicazioni.
La chiamata a Close() riduce il conteggio dei riferimenti associato all'oggetto WeaveConnection, indipendentemente dal fatto che la connessione sia aperta/attiva al momento della chiamata del metodo. Se così facendo il conteggio dei riferimenti raggiunge lo zero, le risorse associate all'oggetto di connessione vengono liberate. In questo caso, l'applicazione non deve avere ulteriori interazioni con l'oggetto.
Dettagli | |
---|---|
Restituisce |
WEAVE_NO_ERROR incondizionatamente.
|
Shutdown(), Abort(), AddRef() e Release().
Chiudi
WEAVE_ERROR Close( bool suppressCloseLog )
Esegue una chiusura controllata non bloccante di WeaveConnection basata su TCP o BLE, inviando tutti i dati in uscita rimanenti prima di informare gentilmente l'host remoto che abbiamo reimpostato la connessione.
Questo metodo non fornisce alcuna garanzia che i messaggi in uscita non riconosciuti a livello di protocollo dell'applicazione siano stati ricevuti dal peer remoto. Sia per TCP che BLE, lo stack di protocolli sottostante farà il possibile per recapitare i dati in uscita in sospeso prima di reimpostare la connessione. Per TCP, è necessario utilizzare Shutdown() prima di Close() se è necessaria una conferma di ricezione di un messaggio di livello di trasporto prima di chiudere la connessione. Le connessioni BLE non forniscono un equivalente di Shutdown().
Per le connessioni basate su BLE, Close() chiude WeaveConnection e restituisce immediatamente, ma potrebbe causare il ritardo dell'oggetto BLEEndPoint sottostante fino a quando non sono stati inviati tutti i dati in uscita. Si tratta di un effetto collaterale dell'implementazione del protocollo di trasporto Weave over BLE esistente all'interno di Weave Blelayer.
Dopo la chiamata di Close(), l'oggetto WeaveConnection non può più essere utilizzato per ulteriori comunicazioni.
La chiamata a Close() riduce il conteggio dei riferimenti associato all'oggetto WeaveConnection, indipendentemente dal fatto che la connessione sia aperta/attiva al momento della chiamata del metodo. Se così facendo il conteggio dei riferimenti raggiunge lo zero, le risorse associate all'oggetto di connessione vengono liberate. In questo caso, l'applicazione non deve avere ulteriori interazioni con l'oggetto.
Dettagli | |||
---|---|---|---|
Parametri |
|
||
Restituisce |
WEAVE_NO_ERROR incondizionatamente.
|
Shutdown(), Abort(), AddRef() e Release().
Connetti
WEAVE_ERROR Connect( uint64_t peerNodeId )
Connettiti a un nodo Weave utilizzando un indirizzo IP fabric derivato dall'identificatore del nodo specificato.
Dettagli | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parametri |
|
||||||||||
Valori restituiti |
|
Connetti
WEAVE_ERROR Connect( uint64_t peerNodeId, const IPAddress & peerAddr, uint16_t peerPort )
Connettiti a un nodo Weave utilizzando un identificatore del nodo e/o un indirizzo IP.
Dettagli | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parametri |
|
||||||||||
Valori restituiti |
|
Connetti
WEAVE_ERROR Connect( uint64_t peerNodeId, WeaveAuthMode authMode, const IPAddress & peerAddr, uint16_t peerPort, InterfaceId intf )
Connettiti a un nodo Weave utilizzando un identificatore del nodo e/o un indirizzo IP su un'interfaccia specifica.
Dettagli | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parametri |
|
||||||||||
Valori restituiti |
|
Connetti
WEAVE_ERROR Connect( uint64_t peerNodeId, WeaveAuthMode authMode, const char *peerAddr, uint16_t defaultPort )
Connettiti a un nodo Weave utilizzando un identificatore del nodo e/o un nome host di stringa.
Se specificato, peerAddr può essere uno dei seguenti:
: : [ ]:
Dettagli | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parametri |
|
||||||||||
Valori restituiti |
|
Connetti
WEAVE_ERROR Connect( uint64_t peerNodeId, WeaveAuthMode authMode, const char *peerAddr, uint16_t peerAddrLen, uint16_t defaultPort )
Connettiti a un nodo Weave utilizzando un identificatore del nodo e/o un indirizzo peer stringa.
Se specificato, peerAddr può essere uno dei seguenti:
: : [ ]:
Dettagli | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parametri |
|
||||||||||
Valori restituiti |
|
Connetti
WEAVE_ERROR Connect( uint64_t peerNodeId, WeaveAuthMode authMode, const char *peerAddr, uint16_t peerAddrLen, uint8_t dnsOptions, uint16_t defaultPort )
Connettiti a un nodo Weave utilizzando un identificatore del nodo e/o un indirizzo peer stringa.
Se specificato, peerAddr può essere uno dei seguenti:
: : [ ]:
Dettagli | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parametri |
|
||||||||||||
Valori restituiti |
|
Connetti
WEAVE_ERROR Connect( uint64_t peerNodeId, WeaveAuthMode authMode, HostPortList hostPortList, InterfaceId intf )
Connettiti a un nodo Weave utilizzando un identificatore del nodo e/o un elenco di nomi host e porte.
Dettagli | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parametri |
|
||||||||||
Valori restituiti |
|
Connetti
WEAVE_ERROR Connect( uint64_t peerNodeId, WeaveAuthMode authMode, HostPortList hostPortList, uint8_t dnsOptions, InterfaceId intf )
Connettiti a un nodo Weave utilizzando un identificatore del nodo e/o un elenco di nomi host e porte.
Dettagli | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parametri |
|
||||||||||
Valori restituiti |
|
DisableKeepAlive
WEAVE_ERROR DisableKeepAlive( void )
WeaveConnection::DisableKeepAlive.
Disabilita i probe keepalive TCP sulla connessione TCP sottostante.
Nota:questo metodo può essere chiamato solo su una connessione Weave supportata da una connessione TCP. Questo metodo può essere chiamato solo quando la connessione è in uno stato che consente l'invio.
Questo metodo non produce alcun effetto se le keepalive non sono state abilitate sulla connessione.
Dettagli | |||||||||
---|---|---|---|---|---|---|---|---|---|
Valori restituiti |
|
DisableReceive
void DisableReceive( void )
Disattiva la ricezione su questa WeaveConnection.
Questo metodo viene utilizzato dall'applicazione per indicare che non è pronta a ricevere i dati arrivati tramite la connessione TCP. Per riattivare la ricezione, l'applicazione deve chiamare EnableReceive() per consentire a WeaveConnection di consegnare i dati ricevuti richiamando i callback appropriati.
Vedi anche:EnableReceive()
EnableKeepAlive
WEAVE_ERROR EnableKeepAlive( uint16_t interval, uint16_t timeoutCount )
WeaveConnection::EnableKeepAlive.
Abilita i probe keepalive TCP sulla connessione TCP sottostante.
Nota:questo metodo può essere chiamato solo su una connessione Weave supportata da una connessione TCP. - Questo metodo può essere chiamato solo quando la connessione è in uno stato che consente l'invio.
Dettagli | |||||
---|---|---|---|---|---|
Parametri |
|
- Questo metodo può essere chiamato più volte per regolare l'intervallo keepalive o il conteggio del timeout.
Dettagli | |||||||||
---|---|---|---|---|---|---|---|---|---|
Valori restituiti |
|
EnableReceive
void EnableReceive( void )
Attiva la ricezione su questa WeaveConnection.
Questo metodo viene utilizzato dall'applicazione per indicare all'oggetto WeaveConnection che è pronto a ricevere i dati che arrivano tramite la connessione TCP.
Vedi anche:DisableReceive()
GetPeerAddressInfo
WEAVE_ERROR GetPeerAddressInfo( IPPacketInfo & addrInfo )
Recupera le informazioni dell'indirizzo IP del peer.
Dettagli | |||||
---|---|---|---|---|---|
Parametri |
|
||||
Valori restituiti |
|
GetPeerDescription
void GetPeerDescription( char *buf, size_t bufSize ) const
Crea una stringa che descrive il nodo peer associato alla connessione.
Dettagli | |||||
---|---|---|---|---|---|
Parametri |
|
GetTCPEndPoint
TCPEndPoint * GetTCPEndPoint( void ) const
IsIncoming
bool IsIncoming( void ) const
LogId
uint16_t LogId( void ) const
Rilascia
void Release( void )
Riduci il conteggio dei riferimenti nell'oggetto WeaveConnection.
Il metodo Release() diminuisce il conteggio dei riferimenti associato all'oggetto WeaveConnection. Se il conteggio dei riferimenti raggiunge zero, la connessione viene chiusa e l'oggetto di connessione viene liberato. In questo caso, l'applicazione non deve avere ulteriori interazioni con l'oggetto.
ResetUserTimeout
WEAVE_ERROR ResetUserTimeout( void )
WeaveConnection::ResetUserTimeout.
Reimposta l'opzione socket del timeout dell'utente TCP sui valori predefiniti di sistema.
Nota:questo metodo può essere chiamato solo su una connessione Weave supportata da una connessione TCP. - Questo metodo può essere chiamato solo quando la connessione è in uno stato che consente l'invio.
- Questo metodo non produce alcun effetto se il timeout dell'utente non è stato impostato sulla connessione.
Dettagli | |||||||||
---|---|---|---|---|---|---|---|---|---|
Valori restituiti |
|
SendMessage
WEAVE_ERROR SendMessage( WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf )
Invia un messaggio Weave tramite una connessione stabilita.
Dettagli | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parametri |
|
||||||||||
Valori restituiti |
|
SendTunneledMessage
WEAVE_ERROR SendTunneledMessage( WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf )
Funzione per inviare un pacchetto con tunnel tramite una connessione Weave.
Invia un messaggio Weave in tunnel su una connessione stabilita.
Dettagli | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parametri |
|
||||||||||
Valori restituiti |
|
SetConnectTimeout
void SetConnectTimeout( const uint32_t connTimeoutMsecs )
Imposta il timeout per la connessione in modo che la connessione vada a buon fine o restituisca un errore.
Dettagli | |||
---|---|---|---|
Parametri |
|
SetIdleTimeout
WEAVE_ERROR SetIdleTimeout( uint32_t timeoutMS )
Imposta il timeout di inattività sulla connessione a livello di rete sottostante.
Dettagli | |||||
---|---|---|---|---|---|
Parametri |
|
||||
Valori restituiti |
|
SetIncoming
void SetIncoming( bool val )
SetUserTimeout
WEAVE_ERROR SetUserTimeout( uint32_t userTimeoutMillis )
WeaveConnection::SetUserTimeout.
Imposta l'opzione socket del timeout dell'utente TCP.
Quando il valore è maggiore di 0, specifica la quantità massima di tempo in millisecondi durante la quale i dati trasmessi possono rimanere non riconosciuti prima che TCP chiuda forzatamente la connessione corrispondente. Se il valore dell'opzione è specificato su 0, TCP utilizzerà il valore predefinito del sistema. Per ulteriori dettagli, vedi RFC 5482.
Dettagli | |||
---|---|---|---|
Parametri |
|
Nota:questo metodo può essere chiamato solo su una connessione Weave supportata da una connessione TCP. - Questo metodo può essere chiamato solo quando la connessione è in uno stato che consente l'invio.
- Questo metodo può essere chiamato più volte per regolare il timeout dell'utente TCP.
Dettagli | |||||||||
---|---|---|---|---|---|---|---|---|---|
Valori restituiti |
|
Arresto
WEAVE_ERROR Shutdown( void )
Esegue un invio/arresto controllato TCP, assicurando che tutti i dati in uscita siano stati inviati e ricevuti dallo stack TCP del peer.
Per la maggior parte (ma non tutte) delle implementazioni TCP, la ricezione di un arresto di invio comporterà anche l'arresto del lato della connessione dell'host remoto, con conseguente chiusura della connessione. Una chiamata successiva a Close() determinerà la terminazione di WeaveConnection.
Dettagli | |||||||||
---|---|---|---|---|---|---|---|---|---|
Valori restituiti |
|
Close() e Abort().