nl::
  #include <src/lib/profiles/device-description/DeviceDescription.h>
  มีข้อมูลอธิบายเกี่ยวกับอุปกรณ์ Weave
สรุป
| ผู้ผลิตและผู้ทำลาย | |
|---|---|
| WeaveDeviceDescriptor(void) | 
| ประเภทสาธารณะ | |
|---|---|
| @180{ | enum กำหนดความยาวสูงสุดของแอตทริบิวต์บางรายการ  | 
| @181{ | enum แฟล็กฟีเจอร์ที่ระบุความสามารถบางอย่างของอุปกรณ์  | 
| @182{ | enum คำจำกัดความของช่องแฟล็ก  | 
| แอตทริบิวต์สาธารณะ | |
|---|---|
| Day | uint8_tวันที่ผลิตอุปกรณ์ (0 = ไม่มี)  | 
| DeviceFeatures | uint32_tช่องบิตระบุการรองรับฟีเจอร์ที่เจาะจงของอุปกรณ์  | 
| DeviceId | uint64_tรหัสอุปกรณ์ Weave (0 = ไม่มี)  | 
| FabricId | uint64_tรหัสของผ้าถักที่เป็นของอุปกรณ์ (0 = ไม่มี)  | 
| Flags | uint8_tช่องบิตที่มีข้อมูลเพิ่มเติมเกี่ยวกับอุปกรณ์  | 
| ManufacturingDate | struct nl::Weave::Profiles::DeviceDescription::WeaveDeviceDescriptor::@183 | 
| Month | uint8_tเดือนที่ผลิตอุปกรณ์ (1 = มกราคม)  | 
| PairingCode[kMaxPairingCodeLength+1] | charรหัสการจับคู่อุปกรณ์ (สิ้นสุดเป็น NUL, ความยาว 0 = ไม่มี)  | 
| PairingCompatibilityVersionMajor | uint16_tเวอร์ชันความเข้ากันได้ของซอฟต์แวร์การจับคู่อุปกรณ์หลัก  | 
| PairingCompatibilityVersionMinor | uint16_tเวอร์ชันความเข้ากันได้ของซอฟต์แวร์การจับคู่อุปกรณ์รอง  | 
| Primary802154MACAddress[8] | uint8_tที่อยู่ MAC สำหรับอินเทอร์เฟซหลัก 802.15.4 (big-endian, ศูนย์ทั้งหมด = ไม่มี)  | 
| PrimaryWiFiMACAddress[6] | uint8_tที่อยู่ MAC สำหรับอินเทอร์เฟซ Wi-Fi หลัก (big-endian, ศูนย์ทั้งหมด = ไม่มี)  | 
| ProductId | uint16_tรหัสผลิตภัณฑ์ของอุปกรณ์ (0 = ไม่มี)  | 
| ProductRevision | uint16_tการแก้ไขผลิตภัณฑ์อุปกรณ์ (0 = ไม่มี)  | 
| RendezvousWiFiESSID[kMaxRendezvousWiFiESSID+1] | charESSID สำหรับเครือข่ายรับสัญญาณ Wi-Fi ของอุปกรณ์ (ไม่มี NUL สิ้นสุด, ความยาว 0 = ไม่มี)  | 
| SerialNumber[kMaxSerialNumberLength+1] | charหมายเลขซีเรียลของอุปกรณ์ (สิ้นสุดค่า NUL, ความยาว 0 = ไม่มี)  | 
| SoftwareVersion[kMaxSoftwareVersionLength+1] | charเวอร์ชันซอฟต์แวร์ที่มีการใช้งาน (สิ้นสุดเป็น NUL, ความยาว 0 รายการ = ไม่มี)  | 
| VendorId | uint16_tรหัสผู้ให้บริการอุปกรณ์ (0 = ไม่มี)  | 
| Year | uint16_tปีที่ผลิตอุปกรณ์ (ช่วงที่ถูกต้องคือ 2001-2099)  | 
| ฟังก์ชันสาธารณะ | |
|---|---|
| Clear(void) | voidล้างคำอธิบายอุปกรณ์  | 
| ฟังก์ชันสาธารณะแบบคงที่ | |
|---|---|
| Decode(const uint8_t *data, uint32_t dataLen, WeaveDeviceDescriptor & outDesc) | ถอดรหัสเนื้อหาของบัฟเฟอร์ข้อมูลที่ให้ไว้ลงในออบเจ็กต์ Weave Device Descriptor  | 
| DecodeTLV(const uint8_t *data, uint32_t dataLen, WeaveDeviceDescriptor & outDesc) | ถอดรหัสเนื้อหาของบัฟเฟอร์ข้อมูล TLV ที่ให้ไว้ลงในออบเจ็กต์ Weave Device Descriptor  | 
| DecodeTLV(nl::Weave::TLV::TLVReader & reader, WeaveDeviceDescriptor & outDesc) | ถอดรหัสรายละเอียดอุปกรณ์โดยใช้ TLVReader ที่ให้มาล่วงหน้า  | 
| DecodeText(const char *data, uint32_t dataLen, WeaveDeviceDescriptor & outDesc) | ถอดรหัสเนื้อหาของบัฟเฟอร์ข้อมูลข้อความที่ให้ไว้ลงในออบเจ็กต์ Weave Device Descriptor  | 
| EncodeTLV(const WeaveDeviceDescriptor & desc, uint8_t *buf, uint32_t bufLen, uint32_t & outEncodedLen) | เข้ารหัสข้อบ่งชี้ของอุปกรณ์ที่ให้ไว้ตาม Weave TLV ซึ่งเขียนไปยังบัฟเฟอร์ที่ให้มา  | 
| EncodeTLV(const WeaveDeviceDescriptor & desc, nl::Weave::TLV::TLVWriter & writer) | เข้ารหัสข้อบ่งชี้อุปกรณ์ที่ระบุเป็น Weave TLV ซึ่งเขียนโดยใช้ออบเจ็กต์ TLVWriter ที่กำหนดค่าล่วงหน้าที่ให้มา  | 
| EncodeText(const WeaveDeviceDescriptor & desc, char *buf, uint32_t bufLen, uint32_t & outEncodedLen) | เข้ารหัสข้อบ่งชี้ของอุปกรณ์ที่ระบุเป็นข้อความที่เขียนลงในบัฟเฟอร์ที่ให้มา  | 
| IsZeroBytes(const uint8_t *buf, uint32_t len) | boolตรวจสอบว่าบัฟเฟอร์ที่ระบุมีเฉพาะ 0 หรือไม่  | 
ประเภทสาธารณะ
@180
@180
กำหนดความยาวสูงสุดของแอตทริบิวต์บางรายการ
| พร็อพเพอร์ตี้ | |
|---|---|
| kMaxPairingCodeLength | ความยาวสูงสุดของรหัสการจับคู่ | 
| kMaxRendezvousWiFiESSID | ESSID ของ Wi-Fi สูงสุดสำหรับความยาวเพื่อ Rendezvous | 
| kMaxSerialNumberLength | ความยาวสูงสุดของหมายเลขซีเรียล | 
| kMaxSoftwareVersionLength | ความยาวสูงสุดของเวอร์ชันของซอฟต์แวร์ | 
@181
@181
แฟล็กฟีเจอร์ที่ระบุความสามารถบางอย่างของอุปกรณ์
| พร็อพเพอร์ตี้ | |
|---|---|
| kFeature_HomeAlarmLinkCapable | ระบุ Nest Protect ที่รองรับการเชื่อมต่อกับแผงสัญญาณกันขโมยในบ้าน | 
| kFeature_LinePowered | ระบุอุปกรณ์ที่ต้องใช้สายไฟ | 
@182
@182
คำจำกัดความของช่องแฟล็ก
| พร็อพเพอร์ตี้ | |
|---|---|
| kFlag_IsRendezvousWiFiESSIDSuffix | ระบุว่าค่า RendezvousWiFiESSID เป็นสตริงคำต่อท้ายที่ปรากฏที่ตอนท้ายของ ESSID ของเครือข่ายเชื่อมต่อ Wi-Fi ของอุปกรณ์ | 
แอตทริบิวต์สาธารณะ
วัน
uint8_t Day
วันที่ผลิตอุปกรณ์ (0 = ไม่มี)
DeviceFeatures
uint32_t DeviceFeatures
ช่องบิตระบุการรองรับฟีเจอร์ที่เจาะจงของอุปกรณ์
DeviceId
uint64_t DeviceId
รหัสอุปกรณ์ Weave (0 = ไม่มี)
FabricId
uint64_t FabricId
รหัสของผ้าถักที่เป็นของอุปกรณ์ (0 = ไม่มี)
ธง
uint8_t Flags
ช่องบิตที่มีข้อมูลเพิ่มเติมเกี่ยวกับอุปกรณ์
ManufacturingDate
struct nl::Weave::Profiles::DeviceDescription::WeaveDeviceDescriptor::@183 ManufacturingDate
เดือน
uint8_t Month
เดือนที่ผลิตอุปกรณ์ (1 = มกราคม)
PairingCode
char PairingCode[kMaxPairingCodeLength+1]
รหัสการจับคู่อุปกรณ์ (สิ้นสุดเป็น NUL, ความยาว 0 = ไม่มี)
PairingCompatibilityVersionMajor
uint16_t PairingCompatibilityVersionMajor
เวอร์ชันความเข้ากันได้ของซอฟต์แวร์การจับคู่อุปกรณ์หลัก
PairingCompatibilityVersionMinor
uint16_t PairingCompatibilityVersionMinor
เวอร์ชันความเข้ากันได้ของซอฟต์แวร์การจับคู่อุปกรณ์รอง
หลัก 802154ที่อยู่ MAC
uint8_t Primary802154MACAddress[8]
ที่อยู่ MAC สำหรับอินเทอร์เฟซหลัก 802.15.4 (big-endian, ศูนย์ทั้งหมด = ไม่มี)
PrimaryWiFiMACAddress
uint8_t PrimaryWiFiMACAddress[6]
ที่อยู่ MAC สำหรับอินเทอร์เฟซ Wi-Fi หลัก (big-endian, ศูนย์ทั้งหมด = ไม่มี)
ProductId
uint16_t ProductId
รหัสผลิตภัณฑ์ของอุปกรณ์ (0 = ไม่มี)
ProductRevision
uint16_t ProductRevision
การแก้ไขผลิตภัณฑ์อุปกรณ์ (0 = ไม่มี)
RendezvousWiFiESSID
char RendezvousWiFiESSID[kMaxRendezvousWiFiESSID+1]
ESSID สำหรับเครือข่ายรับสัญญาณ Wi-Fi ของอุปกรณ์ (ไม่มี NUL สิ้นสุด, ความยาว 0 = ไม่มี)
SerialNumber
char SerialNumber[kMaxSerialNumberLength+1]
หมายเลขซีเรียลของอุปกรณ์ (สิ้นสุดค่า NUL, ความยาว 0 = ไม่มี)
SoftwareVersion
char SoftwareVersion[kMaxSoftwareVersionLength+1]
เวอร์ชันซอฟต์แวร์ที่มีการใช้งาน (สิ้นสุดเป็น NUL, ความยาว 0 รายการ = ไม่มี)
VendorId
uint16_t VendorId
รหัสผู้ให้บริการอุปกรณ์ (0 = ไม่มี)
ปี
uint16_t Year
ปีที่ผลิตอุปกรณ์ (ช่วงที่ถูกต้องคือ 2001-2099)
ฟังก์ชันสาธารณะ
ล้าง
void Clear( void )
ล้างคำอธิบายอุปกรณ์
WeaveDeviceDescriptor
WeaveDeviceDescriptor( void )
ฟังก์ชันสาธารณะแบบคงที่
Decode
WEAVE_ERROR Decode( const uint8_t *data, uint32_t dataLen, WeaveDeviceDescriptor & outDesc )
ถอดรหัสเนื้อหาของบัฟเฟอร์ข้อมูลที่ให้ไว้ลงในออบเจ็กต์ Weave Device Descriptor
| รายละเอียด | |||||||
|---|---|---|---|---|---|---|---|
| พารามิเตอร์ | 
 | ||||||
| ผลลัพธ์ | 
 | ||||||
DecodeTLV
WEAVE_ERROR DecodeTLV( const uint8_t *data, uint32_t dataLen, WeaveDeviceDescriptor & outDesc )
ถอดรหัสเนื้อหาของบัฟเฟอร์ข้อมูล TLV ที่ให้ไว้ลงในออบเจ็กต์ Weave Device Descriptor
| รายละเอียด | |||||||||
|---|---|---|---|---|---|---|---|---|---|
| พารามิเตอร์ | 
 | ||||||||
| ผลลัพธ์ | 
 | ||||||||
DecodeTLV
WEAVE_ERROR DecodeTLV( nl::Weave::TLV::TLVReader & reader, WeaveDeviceDescriptor & outDesc )
ถอดรหัสรายละเอียดอุปกรณ์โดยใช้ TLVReader ที่ให้มาล่วงหน้า
| รายละเอียด | |||||||
|---|---|---|---|---|---|---|---|
| พารามิเตอร์ | 
 | ||||||
| ผลลัพธ์ | 
 | ||||||
DecodeText
WEAVE_ERROR DecodeText( const char *data, uint32_t dataLen, WeaveDeviceDescriptor & outDesc )
ถอดรหัสเนื้อหาของบัฟเฟอร์ข้อมูลข้อความที่ให้ไว้ลงในออบเจ็กต์ Weave Device Descriptor
| รายละเอียด | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| พารามิเตอร์ | 
 | ||||||||||
| ผลลัพธ์ | 
 | ||||||||||
EncodeTLV
WEAVE_ERROR EncodeTLV( const WeaveDeviceDescriptor & desc, uint8_t *buf, uint32_t bufLen, uint32_t & outEncodedLen )
เข้ารหัสข้อบ่งชี้ของอุปกรณ์ที่ให้ไว้ตาม Weave TLV ซึ่งเขียนไปยังบัฟเฟอร์ที่ให้มา
| รายละเอียด | |||||||||
|---|---|---|---|---|---|---|---|---|---|
| พารามิเตอร์ | 
 | ||||||||
| ผลลัพธ์ | 
 | ||||||||
EncodeTLV
WEAVE_ERROR EncodeTLV( const WeaveDeviceDescriptor & desc, nl::Weave::TLV::TLVWriter & writer )
เข้ารหัสข้อบ่งชี้อุปกรณ์ที่ระบุเป็น Weave TLV ซึ่งเขียนโดยใช้ออบเจ็กต์ TLVWriter ที่กำหนดค่าล่วงหน้าที่ให้มา
ระบบนี้ใช้เพื่อเพิ่มคำอธิบายอุปกรณ์ไปยังเอาต์พุต TLV ที่ใหญ่ขึ้น
| รายละเอียด | |||||
|---|---|---|---|---|---|
| พารามิเตอร์ | 
 | ||||
| ผลลัพธ์ | 
 | ||||
EncodeText
WEAVE_ERROR EncodeText( const WeaveDeviceDescriptor & desc, char *buf, uint32_t bufLen, uint32_t & outEncodedLen )
เข้ารหัสข้อบ่งชี้ของอุปกรณ์ที่ระบุเป็นข้อความที่เขียนลงในบัฟเฟอร์ที่ให้มา
| รายละเอียด | |||||||||
|---|---|---|---|---|---|---|---|---|---|
| พารามิเตอร์ | 
 | ||||||||
| ผลลัพธ์ | 
 | ||||||||
IsZeroBytes
bool IsZeroBytes( const uint8_t *buf, uint32_t len )
ตรวจสอบว่าบัฟเฟอร์ที่ระบุมีเฉพาะ 0 หรือไม่
| รายละเอียด | |||||
|---|---|---|---|---|---|
| พารามิเตอร์ | 
 | ||||
| ผลลัพธ์ | 
 | ||||