nl:: Weave:: Binding:: Configuration
#include <src/lib/core/WeaveBinding.h>
Proporciona una interfaz de estilo declarativo para configurar y preparar un objeto Binding.
Resumen
Cuando se configura una vinculación, las aplicaciones deben llamar al menos a un método de cada uno de los siguientes grupos de configuración: objetivo, transporte y seguridad. Se pueden llamar a otros métodos según sea necesario para anular el comportamiento predeterminado.
Si se invocan parámetros de configuración mutuamente excluyentes (p.ej., Transport_TCP() seguido de Transport_UDP()), el último que se llame victorias.
Funciones públicas |
|
---|---|
ConfigureFromMessage(const WeaveMessageInfo *aMsgInfo, const Inet::IPPacketInfo *aPacketInfo)
|
Configura la vinculación para permitir la comunicación con el remitente de un mensaje recibido.
|
DNS_Options(uint8_t dnsOptions)
|
Cuando resuelvas el nombre de host del intercambio de tráfico, usa las opciones de DNS especificadas.
|
Exchange_ResponseTimeoutMsec(uint32_t aResponseTimeoutMsec)
|
Establece el tiempo de espera de respuesta predeterminado para los contextos de intercambio creados a partir de este objeto Binding.
|
GetError(void) const
|
Muestra cualquier error que se haya producido durante la configuración de Binding.
|
PrepareBinding(void)
|
Es el proceso de preparación de la vinculación para la comunicación con el par.
|
Security_AppGroupKey(uint32_t aAppGroupGlobalId, uint32_t aRootKeyId, bool aUseRotatingKey)
|
Cuando te comuniques con el par, envía y recibe mensajes encriptados para un grupo de aplicaciones de Weave específico.
|
Security_AuthenticationMode(WeaveAuthMode aAuthMode)
|
Configura el modo de autenticación solicitado que se usará para autenticar al par.
|
Security_CASESession(void)
|
Cuando te comuniques con el par, envía y recibe mensajes encriptados usando una clave de sesión CASE establecida con el nodo par.
|
Security_EncryptionType(uint8_t aEncType)
|
Cuando te comuniques con el par, envía y recibe mensajes encriptados usando el tipo de encriptación de mensajes especificado.
|
Security_Key(uint32_t aKeyId)
|
Cuando te comuniques con el par, envía y recibe mensajes encriptados con una clave específica.
|
Security_None(void)
|
Cuando te comuniques con el par, envía y recibe datos sin encriptar (es decir,
|
Security_PASESession(uint8_t aPasswordSource)
|
Cuando te comuniques con el par, envía y recibe mensajes encriptados con una clave de sesión PASE establecida con el nodo de intercambio de tráfico.
|
Security_SharedCASESession(void)
|
Cuando te comuniques con el par, envía y recibe mensajes encriptados usando una clave de sesión CASE compartida que se estableció con el router Nest Core.
|
Security_SharedCASESession(uint64_t aRouterNodeId)
|
Cuando te comuniques con el par, envía y recibe mensajes encriptados usando una clave de sesión CASE compartida establecida con un nodo de router específico.
|
Security_TAKESession()
|
Cuando te comuniques con el par, envía y recibe mensajes encriptados usando una clave de sesión take establecida con el nodo par.
|
TargetAddress_IP(nl::Inet::IPAddress aPeerAddress, uint16_t aPeerPort, InterfaceId aInterfaceId)
|
Cuando te comuniques con el par, usa la dirección IP, el puerto y la interfaz de red específicos.
|
TargetAddress_IP(const char *aHostName, uint16_t aPeerPort, InterfaceId aInterfaceId)
|
Cuando te comuniques con el par, usa el nombre de host, el puerto y la interfaz de red específicos.
|
TargetAddress_IP(const char *aHostName, size_t aHostNameLen, uint16_t aPeerPort, InterfaceId aInterfaceId)
|
Cuando te comuniques con el par, usa el nombre de host, el puerto y la interfaz de red específicos.
|
TargetAddress_WeaveFabric(uint16_t aSubnetId)
|
Cuando te comuniques con la app similar, usa una dirección de tejido de Weave derivada del ID de nodo de la app similar y una subred especificada.
|
TargetAddress_WeaveService(void)
|
Cuando te comuniques con la app similar, usa una dirección de tejido de servicios de Weave derivada del ID de nodo de la app similar.
|
Target_NodeId(uint64_t aPeerNodeId)
|
Configura la vinculación para que se comunique con un ID de nodo de Weave específico.
|
Target_ServiceEndpoint(uint64_t aPeerNodeId)
|
Configura la vinculación para que se comunique con un extremo del servicio de Weave específico.
|
Transport_DefaultWRMPConfig(const WRMPConfig & aWRMPConfig)
|
Establece la configuración de WRMP predeterminada para los contextos de intercambio creados a partir de este objeto Binding.
|
Transport_ExistingConnection(WeaveConnection *apConnection)
|
Usa una conexión de Weave existente para comunicarte con el par.
|
Transport_TCP(void)
|
Usa TCP para comunicarte con el intercambio de tráfico.
|
Transport_UDP(void)
|
Usa UDP para comunicarte con el intercambio de tráfico.
|
Transport_UDP_PathMTU(uint32_t aPathMTU)
|
Establece la MTU de ruta de acceso esperada para los paquetes UDP que viajan al intercambio de tráfico.
|
Transport_UDP_WRM(void)
|
Usa el protocolo Weave Reliable Messaging cuando te comuniques con el par.
|
Funciones públicas
ConfigureFromMessage
Configuration & ConfigureFromMessage( const WeaveMessageInfo *aMsgInfo, const Inet::IPPacketInfo *aPacketInfo )
Configura la vinculación para permitir la comunicación con el remitente de un mensaje recibido.
Detalles | |||||
---|---|---|---|---|---|
Parámetros |
|
DNS_Options
Configuration & DNS_Options( uint8_t dnsOptions )
Cuando resuelvas el nombre de host del intercambio de tráfico, usa las opciones de DNS especificadas.
Detalles | |||
---|---|---|---|
Parámetros |
|
||
Resultado que se muestra |
Una referencia al objeto de vinculación.
|
Exchange_ResponseTimeoutMsec
Configuration & Exchange_ResponseTimeoutMsec( uint32_t aResponseTimeoutMsec )
Establece el tiempo de espera de respuesta predeterminado para los contextos de intercambio creados a partir de este objeto Binding.
Detalles | |||
---|---|---|---|
Parámetros |
|
||
Resultado que se muestra |
Una referencia al objeto de vinculación.
|
GetError
WEAVE_ERROR GetError( void ) const
Muestra cualquier error que se haya producido durante la configuración de Binding.
PrepareBinding
WEAVE_ERROR PrepareBinding( void )
Es el proceso de preparación de la vinculación para la comunicación con el par.
Security_AppGroupKey
Configuration & Security_AppGroupKey( uint32_t aAppGroupGlobalId, uint32_t aRootKeyId, bool aUseRotatingKey )
Cuando te comuniques con el par, envía y recibe mensajes encriptados para un grupo de aplicaciones de Weave específico.
Detalles | |||||||
---|---|---|---|---|---|---|---|
Parámetros |
|
||||||
Resultado que se muestra |
Una referencia al objeto Binding.
|
Security_AuthenticationMode
Configuration & Security_AuthenticationMode( WeaveAuthMode aAuthMode )
Configura el modo de autenticación solicitado que se usará para autenticar al par.
Detalles | |||
---|---|---|---|
Parámetros |
|
||
Resultado que se muestra |
Una referencia al objeto Binding.
|
Security_CASESession
Configuration & Security_CASESession( void )
Cuando te comuniques con el par, envía y recibe mensajes encriptados usando una clave de sesión CASE establecida con el nodo par.
Si la sesión necesaria no está disponible, se establecerá automáticamente como parte de la preparación de la vinculación.
Detalles | |
---|---|
Resultado que se muestra |
Una referencia al objeto de vinculación.
|
Security_EncryptionType
Configuration & Security_EncryptionType( uint8_t aEncType )
Cuando te comuniques con el par, envía y recibe mensajes encriptados usando el tipo de encriptación de mensajes especificado.
Detalles | |||
---|---|---|---|
Parámetros |
|
||
Resultado que se muestra |
Una referencia al objeto Binding.
|
Security_Key
Configuration & Security_Key( uint32_t aKeyId )
Cuando te comuniques con el par, envía y recibe mensajes encriptados con una clave específica.
Detalles | |||
---|---|---|---|
Parámetros |
|
||
Resultado que se muestra |
Una referencia al objeto Binding.
|
Security_None
Configuration & Security_None( void )
Cuando te comuniques con el par, envía y recibe datos sin encriptar (es decir,
no seguros).
Detalles | |
---|---|
Resultado que se muestra |
Una referencia al objeto de vinculación.
|
Security_PASESession
Configuration & Security_PASESession( uint8_t aPasswordSource )
Cuando te comuniques con el par, envía y recibe mensajes encriptados con una clave de sesión PASE establecida con el nodo de intercambio de tráfico.
Si la sesión necesaria no está disponible, se establecerá automáticamente como parte de la preparación de la vinculación.
Detalles | |||
---|---|---|---|
Parámetros |
|
||
Resultado que se muestra |
Una referencia al objeto de vinculación.
|
Security_SharedCASESession
Configuration & Security_SharedCASESession( void )
Cuando te comuniques con el par, envía y recibe mensajes encriptados usando una clave de sesión CASE compartida que se estableció con el router Nest Core.
Si la sesión necesaria no está disponible, se establecerá automáticamente como parte de la preparación de la vinculación.
Detalles | |
---|---|
Resultado que se muestra |
Una referencia al objeto de vinculación.
|
Security_SharedCASESession
Configuration & Security_SharedCASESession( uint64_t aRouterNodeId )
Cuando te comuniques con el par, envía y recibe mensajes encriptados usando una clave de sesión CASE compartida establecida con un nodo de router específico.
Si la sesión necesaria no está disponible, se establecerá automáticamente como parte de la preparación de la vinculación.
Detalles | |||
---|---|---|---|
Parámetros |
|
||
Resultado que se muestra |
Una referencia al objeto de vinculación.
|
Security_TAKESession
Configuration & Security_TAKESession()
Cuando te comuniques con el par, envía y recibe mensajes encriptados usando una clave de sesión take establecida con el nodo par.
Si la sesión necesaria no está disponible, se establecerá automáticamente como parte de la preparación de la vinculación.
Detalles | |
---|---|
Resultado que se muestra |
Una referencia al objeto de vinculación.
|
TargetAddress_IP
Configuration & TargetAddress_IP( nl::Inet::IPAddress aPeerAddress, uint16_t aPeerPort, InterfaceId aInterfaceId )
Cuando te comuniques con el par, usa la dirección IP, el puerto y la interfaz de red específicos.
Detalles | |||||||
---|---|---|---|---|---|---|---|
Parámetros |
|
||||||
Resultado que se muestra |
Una referencia al objeto de vinculación.
|
TargetAddress_IP
Configuration & TargetAddress_IP( const char *aHostName, uint16_t aPeerPort, InterfaceId aInterfaceId )
Cuando te comuniques con el par, usa el nombre de host, el puerto y la interfaz de red específicos.
NOTA: El llamador debe asegurarse de que la cadena de nombre de host proporcionada siga siendo válida hasta que se complete la fase de preparación de la vinculación.
Detalles | |||||||
---|---|---|---|---|---|---|---|
Parámetros |
|
||||||
Resultado que se muestra |
Una referencia al objeto de vinculación.
|
TargetAddress_IP
Configuration & TargetAddress_IP( const char *aHostName, size_t aHostNameLen, uint16_t aPeerPort, InterfaceId aInterfaceId )
Cuando te comuniques con el par, usa el nombre de host, el puerto y la interfaz de red específicos.
NOTA: El llamador debe asegurarse de que la cadena de nombre de host proporcionada siga siendo válida hasta que se complete la fase de preparación de la vinculación.
Detalles | |||||||||
---|---|---|---|---|---|---|---|---|---|
Parámetros |
|
||||||||
Resultado que se muestra |
Una referencia al objeto de vinculación.
|
TargetAddress_WeaveFabric
Configuration & TargetAddress_WeaveFabric( uint16_t aSubnetId )
Cuando te comuniques con la app similar, usa una dirección de tejido de Weave derivada del ID de nodo de la app similar y una subred especificada.
Detalles | |||
---|---|---|---|
Parámetros |
|
||
Resultado que se muestra |
Una referencia al objeto de vinculación.
|
TargetAddress_WeaveService
Configuration & TargetAddress_WeaveService( void )
Cuando te comuniques con la app similar, usa una dirección de tejido de servicios de Weave derivada del ID de nodo de la app similar.
Detalles | |
---|---|
Resultado que se muestra |
Una referencia al objeto de vinculación.
|
Target_NodeId
Configuration & Target_NodeId( uint64_t aPeerNodeId )
Configura la vinculación para que se comunique con un ID de nodo de Weave específico.
Detalles | |||
---|---|---|---|
Parámetros |
|
||
Resultado que se muestra |
Una referencia al objeto de vinculación.
|
Target_ServiceEndpoint
Configuration & Target_ServiceEndpoint( uint64_t aPeerNodeId )
Configura la vinculación para que se comunique con un extremo del servicio de Weave específico.
Si no se configura de otra manera, la dirección de par se establece en la dirección de tejido de Weave del extremo del servicio.
Detalles | |||
---|---|---|---|
Parámetros |
|
||
Resultado que se muestra |
Una referencia al objeto de vinculación.
|
Transport_DefaultWRMPConfig
Configuration & Transport_DefaultWRMPConfig( const WRMPConfig & aWRMPConfig )
Establece la configuración de WRMP predeterminada para los contextos de intercambio creados a partir de este objeto Binding.
Detalles | |||
---|---|---|---|
Parámetros |
|
||
Resultado que se muestra |
Una referencia al objeto de vinculación.
|
Transport_ExistingConnection
Configuration & Transport_ExistingConnection( WeaveConnection *apConnection )
Usa una conexión de Weave existente para comunicarte con el par.
NOTA: El recuento de referencia en el objeto de conexión aumenta cuando la preparación de la vinculación se realiza correctamente. Por lo tanto, la aplicación es responsable de garantizar que el objeto de conexión permanezca activo hasta ese momento.
Detalles | |||
---|---|---|---|
Parámetros |
|
||
Resultado que se muestra |
Una referencia al objeto de vinculación.
|
Transport_TCP
Configuration & Transport_TCP( void )
Usa TCP para comunicarte con el intercambio de tráfico.
Detalles | |
---|---|
Resultado que se muestra |
Una referencia al objeto de vinculación.
|
Transport_UDP
Configuration & Transport_UDP( void )
Usa UDP para comunicarte con el intercambio de tráfico.
Detalles | |
---|---|
Resultado que se muestra |
Una referencia al objeto de vinculación.
|
Transport_UDP_PathMTU
Configuration & Transport_UDP_PathMTU( uint32_t aPathMTU )
Establece la MTU de ruta de acceso esperada para los paquetes UDP que se envían al intercambio de tráfico.
Para algunos protocolos de Weave, esto se utiliza para ajustar dinámicamente el tamaño de la carga útil del mensaje de Weave.
Detalles | |||
---|---|---|---|
Parámetros |
|
||
Resultado que se muestra |
Una referencia al objeto de vinculación.
|
Transport_UDP_WRM
Configuration & Transport_UDP_WRM( void )
Usa el protocolo Weave Reliable Messaging cuando te comuniques con el par.
Detalles | |
---|---|
Resultado que se muestra |
Una referencia al objeto de vinculación.
|