nl:: बुना:: प्रोफ़ाइलें:: डिवाइस का ब्यौरा:: WeaveDeviceDescriptor
#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
प्राथमिक 802.15.4 इंटरफ़ेस के लिए MAC पता (बिग-एंडियन, सभी शून्य = मौजूद नहीं)
|
PrimaryWiFiMACAddress[6]
|
uint8_t
मुख्य वाई-फ़ाई इंटरफ़ेस के लिए MAC पता (बड़ा-एंडियन, सभी शून्य = मौजूद नहीं)
|
ProductId
|
uint16_t
डिवाइस प्रॉडक्ट कोड (0 = मौजूद नहीं)
|
ProductRevision
|
uint16_t
डिवाइस प्रॉडक्ट संशोधन (0 = मौजूद नहीं)
|
RendezvousWiFiESSID[kMaxRendezvousWiFiESSID+1]
|
char
डिवाइस के वाई-फ़ाई नेटवर्क के लिए ESSID (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 डिवाइस डिस्क्रिप्टर ऑब्जेक्ट में डिकोड करता है.
|
DecodeTLV(const uint8_t *data, uint32_t dataLen, WeaveDeviceDescriptor & outDesc)
|
दिए गए TLV डेटा बफ़र की सामग्री को Weave डिवाइस डिस्क्रिप्टर ऑब्जेक्ट में डिकोड करता है.
|
DecodeTLV(nl::Weave::TLV::TLVReader & reader, WeaveDeviceDescriptor & outDesc)
|
पहले से शुरू किए गए TLVReader का इस्तेमाल करके डिवाइस की जानकारी को डिकोड करता है.
|
DecodeText(const char *data, uint32_t dataLen, WeaveDeviceDescriptor & outDesc)
|
दिए गए टेक्स्ट डेटा के बफ़र की सामग्री को वीव डिवाइस डिस्क्रिप्टर ऑब्जेक्ट में डिकोड करता है.
|
EncodeTLV(const WeaveDeviceDescriptor & desc, uint8_t *buf, uint32_t bufLen, uint32_t & outEncodedLen)
|
दिए गए डिवाइस वर्णनकर्ता को Weave TLV दिए गए बफ़र के रूप में कोड में बदलता है.
|
EncodeTLV(const WeaveDeviceDescriptor & desc, nl::Weave::TLV::TLVWriter & writer)
|
दिए गए पहले से शुरू किए गए TLVWriter ऑब्जेक्ट का इस्तेमाल करके, दिए गए डिवाइस डिस्क्रिप्टर को Weave TLV के रूप में कोड में बदलता है.
|
EncodeText(const WeaveDeviceDescriptor & desc, char *buf, uint32_t bufLen, uint32_t & outEncodedLen)
|
डिवाइस के बताए गए ब्यौरे को, सप्लाई किए गए बफ़र में लिखे गए टेक्स्ट के तौर पर कोड में बदलता है.
|
IsZeroBytes(const uint8_t *buf, uint32_t len)
|
bool
देखें कि दिए गए बफ़र में सिर्फ़ शून्य हैं या नहीं.
|
सार्वजनिक प्रकार
@180
@180
कुछ एट्रिब्यूट की ज़्यादा से ज़्यादा लंबाई तय करता है.
प्रॉपर्टी | |
---|---|
kMaxPairingCodeLength
|
ज़्यादा से ज़्यादा जोड़ने वाले कोड की लंबाई. |
kMaxRendezvousWiFiESSID
|
रेंडेवस लंबाई के लिए अधिकतम वाई-फ़ाई ESSID. |
kMaxSerialNumberLength
|
सीरियल नंबर की ज़्यादा से ज़्यादा लंबाई. |
kMaxSoftwareVersionLength
|
सॉफ़्टवेयर की ज़्यादा से ज़्यादा लंबाई. |
@181
@181
सुविधा फ़्लैग, डिवाइस की खास क्षमताओं की जानकारी देते हैं.
प्रॉपर्टी | |
---|---|
kFeature_HomeAlarmLinkCapable
|
Nest Protect के बारे में बताता है जो होम अलार्म पैनल से कनेक्ट करने की सुविधा देता है. |
kFeature_LinePowered
|
उस डिवाइस के बारे में बताता है जिसके लिए लाइन पावर की ज़रूरत होती है. |
@182 नंबर
@182
फ़्लैग किए गए फ़ील्ड की परिभाषाएं.
प्रॉपर्टी | |
---|---|
kFlag_IsRendezvousWiFiESSIDSuffix
|
इससे पता चलता है कि RendezvousWiFiESSID वैल्यू, सफ़िक्स स्ट्रिंग है, जो डिवाइस के ESSID के आखिर में और #39; वाई-फ़ाई रिडेवज़व नेटवर्क के आखिर में दिखती है. |
सार्वजनिक विशेषताएं
दिन वाला मोड
uint8_t Day
डिवाइस बनाने की तारीख (0 = मौजूद नहीं)
डिवाइस की सुविधाएं
uint32_t DeviceFeatures
बिट फ़ील्ड, जो डिवाइस की खास सुविधाओं के लिए काम करता है.
डिवाइस आईडी
uint64_t DeviceId
Weave डिवाइस आईडी (0 = मौजूद नहीं)
फ़ैब्रिक आईडी
uint64_t FabricId
बुनाई के कपड़े का आईडी, जिससे डिवाइस जुड़ा है (0 = मौजूद नहीं है)
झंडे
uint8_t Flags
बिट फ़ील्ड में, डिवाइस के बारे में ज़्यादा जानकारी होती है.
मैन्युफ़ैक्चरिंग की तारीख
struct nl::Weave::Profiles::DeviceDescription::WeaveDeviceDescriptor::@183 ManufacturingDate
महीना
uint8_t Month
डिवाइस बनाने का महीना (1 = जनवरी)
पेयरिंग कोड
char PairingCode[kMaxPairingCodeLength+1]
डिवाइस से जोड़ने वाला कोड (NUL खत्म किया गया, 0 लंबाई = मौजूद नहीं)
अपने डिवाइस के साथ काम करने के साथ काम करने वाला वर्शन वर्शन मेजर
uint16_t PairingCompatibilityVersionMajor
डिवाइस के साथ पेयर करने वाले मुख्य सॉफ़्टवेयर वर्शन.
दूसरे डिवाइस से जोड़ने की सुविधा
uint16_t PairingCompatibilityVersionMinor
डिवाइस को जोड़ने वाला छोटा सॉफ़्टवेयर वर्शन.
मुख्य802154MACपता
uint8_t Primary802154MACAddress[8]
प्राथमिक 802.15.4 इंटरफ़ेस के लिए MAC पता (बिग-एंडियन, सभी शून्य = मौजूद नहीं)
मुख्य वाई-फ़ाईमैक पता
uint8_t PrimaryWiFiMACAddress[6]
मुख्य वाई-फ़ाई इंटरफ़ेस के लिए MAC पता (बड़ा-एंडियन, सभी शून्य = मौजूद नहीं)
प्रॉडक्ट आईडी
uint16_t ProductId
डिवाइस प्रॉडक्ट कोड (0 = मौजूद नहीं)
प्रॉडक्ट में बदलाव
uint16_t ProductRevision
डिवाइस प्रॉडक्ट संशोधन (0 = मौजूद नहीं)
RendezvousWiFiESSID
char RendezvousWiFiESSID[kMaxRendezvousWiFiESSID+1]
डिवाइस के वाई-फ़ाई नेटवर्क के लिए ESSID (NUL खत्म किया गया, 0 लंबाई = मौजूद नहीं)
सीरियल नंबर
char SerialNumber[kMaxSerialNumberLength+1]
डिवाइस का सीरियल नंबर (NUL खत्म किया गया, 0 लंबाई = मौजूद नहीं)
सॉफ़्टवेयर वर्शन
char SoftwareVersion[kMaxSoftwareVersionLength+1]
सॉफ़्टवेयर का ऐक्टिव वर्शन (NUL खत्म किया गया, 0 लंबाई = मौजूद नहीं)
वेंडरआईडी
uint16_t VendorId
डिवाइस विक्रेता कोड (0 = मौजूद नहीं)
साल
uint16_t Year
डिवाइस बनाने का साल (मान्य रेंज 2001 - 2099)
सार्वजनिक फ़ंक्शन
साफ़ मौसम
void Clear( void )
डिवाइस के ब्यौरे को मिटा दिया जाता है.
WeaveDeviceDescriptor
WeaveDeviceDescriptor( void )
सार्वजनिक स्थिर फ़ंक्शन
डिकोड करें
WEAVE_ERROR Decode( const uint8_t *data, uint32_t dataLen, WeaveDeviceDescriptor & outDesc )
दिए गए डेटा बफ़र की सामग्री को Weave डिवाइस डिस्क्रिप्टर ऑब्जेक्ट में डिकोड करता है.
ब्यौरा | |||||||
---|---|---|---|---|---|---|---|
पैरामीटर |
|
||||||
सामान लौटाने की वैल्यू |
|
डिकोड करें
WEAVE_ERROR DecodeTLV( const uint8_t *data, uint32_t dataLen, WeaveDeviceDescriptor & outDesc )
दिए गए TLV डेटा बफ़र की सामग्री को Weave डिवाइस डिस्क्रिप्टर ऑब्जेक्ट में डिकोड करता है.
ब्यौरा | |||||||||
---|---|---|---|---|---|---|---|---|---|
पैरामीटर |
|
||||||||
सामान लौटाने की वैल्यू |
|
डिकोड करें
WEAVE_ERROR DecodeTLV( nl::Weave::TLV::TLVReader & reader, WeaveDeviceDescriptor & outDesc )
पहले से शुरू किए गए TLVReader का इस्तेमाल करके डिवाइस की जानकारी को डिकोड करता है.
ब्यौरा | |||||||
---|---|---|---|---|---|---|---|
पैरामीटर |
|
||||||
सामान लौटाने की वैल्यू |
|
डिकोड टेक्स्ट
WEAVE_ERROR DecodeText( const char *data, uint32_t dataLen, WeaveDeviceDescriptor & outDesc )
दिए गए टेक्स्ट डेटा के बफ़र की सामग्री को वीव डिवाइस डिस्क्रिप्टर ऑब्जेक्ट में डिकोड करता है.
ब्यौरा | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
पैरामीटर |
|
||||||||||
सामान लौटाने की वैल्यू |
|
एनकोडटीएलवी
WEAVE_ERROR EncodeTLV( const WeaveDeviceDescriptor & desc, uint8_t *buf, uint32_t bufLen, uint32_t & outEncodedLen )
दिए गए डिवाइस वर्णनकर्ता को Weave TLV दिए गए बफ़र के रूप में कोड में बदलता है.
ब्यौरा | |||||||||
---|---|---|---|---|---|---|---|---|---|
पैरामीटर |
|
||||||||
सामान लौटाने की वैल्यू |
|
एनकोडटीएलवी
WEAVE_ERROR EncodeTLV( const WeaveDeviceDescriptor & desc, nl::Weave::TLV::TLVWriter & writer )
दिए गए पहले से शुरू किए गए TLVWriter ऑब्जेक्ट का इस्तेमाल करके, दिए गए डिवाइस डिस्क्रिप्टर को Weave TLV के रूप में कोड में बदलता है.
इसका इस्तेमाल, डिवाइस की जानकारी को ज़्यादा बड़े TLV आउटपुट में जोड़ने के लिए किया जाता है.
ब्यौरा | |||||
---|---|---|---|---|---|
पैरामीटर |
|
||||
सामान लौटाने की वैल्यू |
|
कोड में बदलने का तरीका
WEAVE_ERROR EncodeText( const WeaveDeviceDescriptor & desc, char *buf, uint32_t bufLen, uint32_t & outEncodedLen )
डिवाइस के बताए गए ब्यौरे को, सप्लाई किए गए बफ़र में लिखे गए टेक्स्ट के तौर पर कोड में बदलता है.
ब्यौरा | |||||||||
---|---|---|---|---|---|---|---|---|---|
पैरामीटर |
|
||||||||
सामान लौटाने की वैल्यू |
|
IsZeroBytes
bool IsZeroBytes( const uint8_t *buf, uint32_t len )
देखें कि दिए गए बफ़र में सिर्फ़ शून्य हैं या नहीं.
ब्यौरा | |||||
---|---|---|---|---|---|
पैरामीटर |
|
||||
सामान लौटाने की वैल्यू |
|