nl:: Weave:: Profiles:: DeviceDescription:: 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 Device डिस्क्रिप्टर ऑब्जेक्ट में डिकोड करता है.
|
DecodeTLV(nl::Weave::TLV::TLVReader & reader, WeaveDeviceDescriptor & outDesc)
|
यह सुविधा, पहले से शुरू किए गए TLVReader को इस्तेमाल करके, डिवाइस की जानकारी को डिकोड करती है.
|
DecodeText(const char *data, uint32_t dataLen, WeaveDeviceDescriptor & outDesc)
|
यह दिए गए टेक्स्ट डेटा बफ़र के कॉन्टेंट को Weave डिवाइस डिस्क्रिप्टर ऑब्जेक्ट में डिकोड करता है.
|
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
|
Rendezvous लंबाई के लिए अधिकतम वाई-फ़ाई ESSID. |
kMaxSerialNumberLength
|
सीरियल नंबर की ज़्यादा से ज़्यादा लंबाई. |
kMaxSoftwareVersionLength
|
सॉफ़्टवेयर वर्शन की ज़्यादा से ज़्यादा लंबाई. |
@181
@181
डिवाइस की खास सुविधाओं के बारे में बताने वाले फ़ीचर फ़्लैग.
प्रॉपर्टी | |
---|---|
kFeature_HomeAlarmLinkCapable
|
इससे, Nest Protect के बारे में पता चलता है जो होम अलार्म पैनल से कनेक्ट करने की सुविधा देता है. |
kFeature_LinePowered
|
इससे ऐसे डिवाइस के बारे में पता चलता है जिसके लिए बिजली की सप्लाई की ज़रूरत होती है. |
@182
@182
फ़्लैग फ़ील्ड की परिभाषाएं.
प्रॉपर्टी | |
---|---|
kFlag_IsRendezvousWiFiESSIDSuffix
|
इससे पता चलता है कि RendezvousWiFiESSID वैल्यू एक सफ़िक्स स्ट्रिंग है. यह डिवाइस के वाई-फ़ाई से मिलने वाले नेटवर्क के ESSID के आखिर में दिखती है. |
सार्वजनिक विशेषताएं
दिन
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
डिवाइस जोड़ने के सॉफ़्टवेयर का छोटा वर्शन.
प्राइमरी802154MACपता
uint8_t Primary802154MACAddress[8]
मुख्य 802.15.4 इंटरफ़ेस के लिए MAC पता (बिग-एंडियन, सभी शून्य = मौजूद नहीं है)
PrimaryWiFiMACAddress
uint8_t PrimaryWiFiMACAddress[6]
मुख्य वाई-फ़ाई इंटरफ़ेस के लिए MAC पता (बिग-एंडियन, सभी शून्य = मौजूद नहीं)
ProductId
uint16_t ProductId
डिवाइस का प्रॉडक्ट कोड (0 = मौजूद नहीं है)
ProductRevision
uint16_t ProductRevision
डिवाइस में मौजूद प्रॉडक्ट रिविज़न (0 = मौजूद नहीं है)
RendezvousWiFiESSID
char RendezvousWiFiESSID[kMaxRendezvousWiFiESSID+1]
डिवाइस के वाई-फ़ाई पाने वाले नेटवर्क के लिए ESSID (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 डिवाइस के ब्यौरे वाला ऑब्जेक्ट में डिकोड करता है.
ब्यौरा | |||||||
---|---|---|---|---|---|---|---|
पैरामीटर |
|
||||||
रिटर्न वैल्यू |
|
DecodeTLV
WEAVE_ERROR DecodeTLV( const uint8_t *data, uint32_t dataLen, WeaveDeviceDescriptor & outDesc )
यह दिए गए TLV डेटा बफ़र की सामग्री को Weave Device डिस्क्रिप्टर ऑब्जेक्ट में डिकोड करता है.
ब्यौरा | |||||||||
---|---|---|---|---|---|---|---|---|---|
पैरामीटर |
|
||||||||
रिटर्न वैल्यू |
|
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 डिवाइस डिस्क्रिप्टर ऑब्जेक्ट में डिकोड करता है.
ब्यौरा | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
पैरामीटर |
|
||||||||||
रिटर्न वैल्यू |
|
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 )
दिए गए डिवाइस डिस्क्रिप्टर को, पहले से शुरू किए गए TLVWriter ऑब्जेक्ट का इस्तेमाल करके, Weave TLV के रूप में एन्कोड करता है.
इसका इस्तेमाल, बड़े 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 )
देखें कि तय किए गए बफ़र में सिर्फ़ शून्य हैं.
ब्यौरा | |||||
---|---|---|---|---|---|
पैरामीटर |
|
||||
रिटर्न वैल्यू |
|