nl:: Weave:: Profiles:: DeviceDescription:: WeaveDeviceDescriptor
#include <src/lib/profiles/device-description/DeviceDescription.h>
Contiene información descriptiva sobre un dispositivo Weave.
Resumen
Constructores y destructores |
|
---|---|
WeaveDeviceDescriptor(void)
|
Tipos públicos |
|
---|---|
@180{
|
enum Define la longitud máxima de algunos atributos. |
@181{
|
enum Marcas de función que indican capacidades de dispositivos específicos |
@182{
|
enum Definiciones de los campos de marcas |
Atributos públicos |
|
---|---|
Day
|
uint8_t
Día de fabricación del dispositivo (0 = ausente)
|
DeviceFeatures
|
uint32_t
Campo de bits que indica la compatibilidad con funciones específicas del dispositivo.
|
DeviceId
|
uint64_t
ID de dispositivo de Weave (0 = ausente)
|
FabricId
|
uint64_t
ID de la tela de Weave a la que pertenece el dispositivo (0 = ausente)
|
Flags
|
uint8_t
Campo de bits que contiene información adicional sobre el dispositivo.
|
ManufacturingDate
|
struct nl::Weave::Profiles::DeviceDescription::WeaveDeviceDescriptor::@183
|
Month
|
uint8_t
Mes de fabricación del dispositivo (1 = enero)
|
PairingCode[kMaxPairingCodeLength+1]
|
char
Código de vinculación de dispositivos (finalizado por NUL, longitud de 0 = ausente)
|
PairingCompatibilityVersionMajor
|
uint16_t
Versión de compatibilidad de software de vinculación de dispositivos principal.
|
PairingCompatibilityVersionMinor
|
uint16_t
Versión de compatibilidad de software de vinculación de dispositivos menor.
|
Primary802154MACAddress[8]
|
uint8_t
Dirección MAC para la interfaz principal 802.15.4 (big-endian, todos los ceros = ausente)
|
PrimaryWiFiMACAddress[6]
|
uint8_t
Dirección MAC de la interfaz Wi-Fi principal (big-endian, todos los ceros = ausente)
|
ProductId
|
uint16_t
Código de producto del dispositivo (0 = ausente)
|
ProductRevision
|
uint16_t
Revisión del producto del dispositivo (0 = ausente)
|
RendezvousWiFiESSID[kMaxRendezvousWiFiESSID+1]
|
char
ESSID para la red de reunión con Wi-Fi del dispositivo (terminado por NUL, 0 de longitud = ausente)
|
SerialNumber[kMaxSerialNumberLength+1]
|
char
Número de serie del dispositivo (terminado con NUL, 0 longitud = ausente)
|
SoftwareVersion[kMaxSoftwareVersionLength+1]
|
char
Versión activa de software (finalizada por NUL, longitud 0 = no presente)
|
VendorId
|
uint16_t
Código del proveedor del dispositivo (0 = ausente)
|
Year
|
uint16_t
Año de fabricación del dispositivo (rango válido de 2001 a 2099)
|
Funciones públicas |
|
---|---|
Clear(void)
|
void
Borra la descripción del dispositivo.
|
Funciones estáticas públicas |
|
---|---|
Decode(const uint8_t *data, uint32_t dataLen, WeaveDeviceDescriptor & outDesc)
|
Decodifica el contenido del búfer de datos proporcionado en un objeto Weave Device Descriptor.
|
DecodeTLV(const uint8_t *data, uint32_t dataLen, WeaveDeviceDescriptor & outDesc)
|
Decodifica el contenido del búfer de datos TLV proporcionado en un objeto Weave Device Descriptor.
|
DecodeTLV(nl::Weave::TLV::TLVReader & reader, WeaveDeviceDescriptor & outDesc)
|
Decodifica la descripción del dispositivo con el TLVReader preinicializado proporcionado.
|
DecodeText(const char *data, uint32_t dataLen, WeaveDeviceDescriptor & outDesc)
|
Decodifica el contenido del búfer de datos de texto proporcionado en un objeto Weave Device Descriptor.
|
EncodeTLV(const WeaveDeviceDescriptor & desc, uint8_t *buf, uint32_t bufLen, uint32_t & outEncodedLen)
|
Codifica el descriptor de dispositivo proporcionado como TLV de Weave escrito en el búfer proporcionado.
|
EncodeTLV(const WeaveDeviceDescriptor & desc, nl::Weave::TLV::TLVWriter & writer)
|
Codifica el descriptor de dispositivo proporcionado como Weave TLV escrito con el objeto TLVWriter preinicializado proporcionado.
|
EncodeText(const WeaveDeviceDescriptor & desc, char *buf, uint32_t bufLen, uint32_t & outEncodedLen)
|
Codifica el descriptor de dispositivo proporcionado como texto escrito en el búfer proporcionado.
|
IsZeroBytes(const uint8_t *buf, uint32_t len)
|
bool
Comprueba si el búfer especificado solo contiene ceros.
|
Tipos públicos
@180
@180
Define la longitud máxima de algunos atributos.
Propiedades | |
---|---|
kMaxPairingCodeLength
|
Longitud máxima del código de vinculación. |
kMaxRendezvousWiFiESSID
|
ESSID de Wi-Fi máximo para la longitud máxima de Rendezvous. |
kMaxSerialNumberLength
|
Longitud máxima del número de serie. |
kMaxSoftwareVersionLength
|
Longitud máxima de la versión de software. |
@181
@181
Marcas de función que indican capacidades de dispositivos específicos
Propiedades | |
---|---|
kFeature_HomeAlarmLinkCapable
|
Indica un Nest Protect que admite la conexión a un panel de alarma para el hogar. |
kFeature_LinePowered
|
Indica un dispositivo que requiere alimentación eléctrica. |
@182
@182
Definiciones de los campos de marcas
Propiedades | |
---|---|
kFlag_IsRendezvousWiFiESSIDSuffix
|
Indica que el valor de RendezvousWiFiESSID es una cadena de sufijo que aparece al final del ESSID de la red de reunión de Wi-Fi del dispositivo. |
Atributos públicos
Día
uint8_t Day
Día de fabricación del dispositivo (0 = ausente)
DeviceFeatures
uint32_t DeviceFeatures
Campo de bits que indica la compatibilidad con funciones específicas del dispositivo.
DeviceId
uint64_t DeviceId
ID de dispositivo de Weave (0 = ausente)
FabricId
uint64_t FabricId
ID de la tela de Weave a la que pertenece el dispositivo (0 = ausente)
Marcas
uint8_t Flags
Campo de bits que contiene información adicional sobre el dispositivo.
ManufacturingDate
struct nl::Weave::Profiles::DeviceDescription::WeaveDeviceDescriptor::@183 ManufacturingDate
Mes
uint8_t Month
Mes de fabricación del dispositivo (1 = enero)
PairingCode
char PairingCode[kMaxPairingCodeLength+1]
Código de vinculación de dispositivos (finalizado por NUL, longitud de 0 = ausente)
PairingCompatibilityVersionMajor
uint16_t PairingCompatibilityVersionMajor
Versión de compatibilidad de software de vinculación de dispositivos principal.
PairingCompatibilityVersionMinor
uint16_t PairingCompatibilityVersionMinor
Versión de compatibilidad de software de vinculación de dispositivos menor.
MACAddress802154Principal
uint8_t Primary802154MACAddress[8]
Dirección MAC para la interfaz principal 802.15.4 (big-endian, todos los ceros = ausente)
PrimaryWiFiMACAddress
uint8_t PrimaryWiFiMACAddress[6]
Dirección MAC de la interfaz Wi-Fi principal (big-endian, todos los ceros = ausente)
ProductId
uint16_t ProductId
Código de producto del dispositivo (0 = ausente)
ProductRevision
uint16_t ProductRevision
Revisión del producto del dispositivo (0 = ausente)
RendezvousWiFiESSID
char RendezvousWiFiESSID[kMaxRendezvousWiFiESSID+1]
ESSID para la red de reunión con Wi-Fi del dispositivo (terminado por NUL, 0 de longitud = ausente)
SerialNumber
char SerialNumber[kMaxSerialNumberLength+1]
Número de serie del dispositivo (terminado con NUL, 0 longitud = ausente)
SoftwareVersion
char SoftwareVersion[kMaxSoftwareVersionLength+1]
Versión activa de software (finalizada por NUL, longitud 0 = no presente)
VendorId
uint16_t VendorId
Código del proveedor del dispositivo (0 = ausente)
Año
uint16_t Year
Año de fabricación del dispositivo (rango válido de 2001 a 2099)
Funciones públicas
Borrar
void Clear( void )
Borra la descripción del dispositivo.
WeaveDeviceDescriptor
WeaveDeviceDescriptor( void )
Funciones estáticas públicas
Decode
WEAVE_ERROR Decode( const uint8_t *data, uint32_t dataLen, WeaveDeviceDescriptor & outDesc )
Decodifica el contenido del búfer de datos proporcionado en un objeto Weave Device Descriptor.
Detalles | |||||||
---|---|---|---|---|---|---|---|
Parámetros |
|
||||||
Valores de retorno |
|
DecodeTLV
WEAVE_ERROR DecodeTLV( const uint8_t *data, uint32_t dataLen, WeaveDeviceDescriptor & outDesc )
Decodifica el contenido del búfer de datos TLV proporcionado en un objeto Weave Device Descriptor.
Detalles | |||||||||
---|---|---|---|---|---|---|---|---|---|
Parámetros |
|
||||||||
Valores de retorno |
|
DecodeTLV
WEAVE_ERROR DecodeTLV( nl::Weave::TLV::TLVReader & reader, WeaveDeviceDescriptor & outDesc )
Decodifica la descripción del dispositivo con el TLVReader preinicializado proporcionado.
Detalles | |||||||
---|---|---|---|---|---|---|---|
Parámetros |
|
||||||
Valores de retorno |
|
DecodeText
WEAVE_ERROR DecodeText( const char *data, uint32_t dataLen, WeaveDeviceDescriptor & outDesc )
Decodifica el contenido del búfer de datos de texto proporcionado en un objeto Weave Device Descriptor.
Detalles | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parámetros |
|
||||||||||
Valores de retorno |
|
EncodeTLV
WEAVE_ERROR EncodeTLV( const WeaveDeviceDescriptor & desc, uint8_t *buf, uint32_t bufLen, uint32_t & outEncodedLen )
Codifica el descriptor de dispositivo proporcionado como TLV de Weave escrito en el búfer proporcionado.
Detalles | |||||||||
---|---|---|---|---|---|---|---|---|---|
Parámetros |
|
||||||||
Valores de retorno |
|
EncodeTLV
WEAVE_ERROR EncodeTLV( const WeaveDeviceDescriptor & desc, nl::Weave::TLV::TLVWriter & writer )
Codifica el descriptor de dispositivo proporcionado como Weave TLV escrito con el objeto TLVWriter preinicializado proporcionado.
Se usa para agregar la descripción del dispositivo a una salida de TLV más grande.
Detalles | |||||
---|---|---|---|---|---|
Parámetros |
|
||||
Valores de retorno |
|
EncodeText
WEAVE_ERROR EncodeText( const WeaveDeviceDescriptor & desc, char *buf, uint32_t bufLen, uint32_t & outEncodedLen )
Codifica el descriptor de dispositivo proporcionado como texto escrito en el búfer proporcionado.
Detalles | |||||||||
---|---|---|---|---|---|---|---|---|---|
Parámetros |
|
||||||||
Valores de retorno |
|
IsZeroBytes
bool IsZeroBytes( const uint8_t *buf, uint32_t len )
Comprueba si el búfer especificado solo contiene ceros.
Detalles | |||||
---|---|---|---|---|---|
Parámetros |
|
||||
Valores de retorno |
|