nl::Weave::Profiles::DataManagement_Legacy

इस नेमस्पेस में, Weave Data Management (WDM) प्रोफ़ाइल के लिए Weave के वे सभी इंटरफ़ेस शामिल हैं जिन्हें बंद होने वाला है.

खास जानकारी

गिनती

@103{
  kStatus_CancelSuccess = 0x0001,
  kStatus_InvalidPath = 0x0013,
  kStatus_UnknownTopic = 0x0014,
  kStatus_IllegalReadRequest = 0x0015,
  kStatus_IllegalWriteRequest = 0x0016,
  kStatus_InvalidVersion = 0x0017,
  kStatus_UnsupportedSubscriptionMode = 0x0018
}
enum
@166{
  kViewPoolSize = WEAVE_CONFIG_WDM_VIEW_POOL_SIZE,
  kSubscribePoolSize = WEAVE_CONFIG_WDM_SUBSCRIBE_POOL_SIZE,
  kCancelSubscriptionPoolSize = WEAVE_CONFIG_WDM_CANCEL_SUBSCRIPTION_POOL_SIZE,
  kUpdatePoolSize = WEAVE_CONFIG_WDM_UPDATE_POOL_SIZE,
  kNotifyPoolSize = WEAVE_CONFIG_WDM_NOTIFY_POOL_SIZE,
  kTransactionTableSize = WEAVE_CONFIG_WDM_TRANSACTION_TABLE_SIZE,
  kBindingTableSize = WEAVE_CONFIG_WDM_BINDING_TABLE_SIZE,
  kNotifierTableSize = WEAVE_CONFIG_WDM_NOTIFIER_TABLE_SIZE,
  kSubscriptionMgrTableSize = WEAVE_CONFIG_WDM_SUBSCRIPTION_MGR_TABLE_SIZE
}
enum
WDM पूल और टेबल के साइज़.
@167{
  kMsgType_ViewRequest = 0x10,
  kMsgType_ViewResponse = 0x11,
  kMsgType_SubscribeRequest = 0x12,
  kMsgType_SubscribeResponse = 0x13,
  kMsgType_CancelSubscriptionRequest = 0x14,
  kMsgType_UpdateRequest = 0x15,
  kMsgType_NotifyRequest = 0x16,
  kMsgType_ViewRequest_Deprecated = 0x00,
  kMsgType_ViewResponse_Deprecated = 0x01,
  kMsgType_SubscribeRequest_Deprecated = 0x02,
  kMsgType_SubscribeResponse_Deprecated = 0x03,
  kMsgType_CancelSubscriptionRequest_Deprecated = 0x04,
  kMsgType_UpdateRequest_Deprecated = 0x05,
  kMsgType_NotifyRequest_Deprecated = 0x06
}
enum
WDM प्रोफ़ाइल मैसेज के टाइप.
@168{
  kTransactionIdNotSpecified = 0,
  kResponseTimeoutNotSpecified = 0,
  kVersionNotSpecified = 0xFFFFFFFFFFFFFFFFULL,
  kInstanceIdNotSpecified = 0,
  kDefaultBindingTableIndex = 0,
  kWeaveTLVTagLen = 8,
  kWeaveTLVControlByteLen = 1
}
enum
WDM पर आधारित अलग-अलग कॉन्सटेंट.
@169{
  kStatus_CancelSuccess = 0x0001,
  kStatus_InvalidPath = 0x0013,
  kStatus_UnknownTopic = 0x0014,
  kStatus_IllegalReadRequest = 0x0015,
  kStatus_IllegalWriteRequest = 0x0016,
  kStatus_InvalidVersion = 0x0017,
  kStatus_UnsupportedSubscriptionMode = 0x0018
}
enum
WDM के लिए खास स्टेटस कोड.
@170{
  kTag_WDMPathList = 100,
  kTag_WDMPathProfile = 101,
  kTag_WDMPathProfileId = 1,
  kTag_WDMPathProfileInstance = 2,
  kTag_WDMPathProfileId_Deprecated = 102,
  kTag_WDMPathProfileInstance_Deprecated = 103,
  kTag_WDMPathArrayIndexSelector = 104,
  kTag_WDMPathArrayValueSelector = 105,
  kTag_WDMDataList = 200,
  kTag_WDMDataListElementPath = 3,
  kTag_WDMDataListElementVersion = 4,
  kTag_WDMDataListElementData = 5,
  kTag_WDMDataListElementPath_Deprecated = 201,
  kTag_WDMDataListElementVersion_Deprecated = 202,
  kTag_WDMDataListElementData_Deprecated = 203
}
enum
डेटा मैनेजमेंट प्रोटोकॉल के टैग.
@171{
  kTopicIdPublisherSpecificMask = 0xFFFF000000000000ULL,
  kTopicIdNotSpecified = 0x0000000000000000ULL,
  kAnyTopicId = 0xFFFFFFFFFFFFFFFFULL
}
enum
अलग-अलग विषय के आईडी.
WeaveTransportOption{
  kTransport_TCP = 1,
  kTransport_WRMP = 2,
  kTransport_UDP = 3
}
enum
WDM ले जाने के विकल्प.

टाइपडीफ़

TopicIdentifier typedef
uint64_t
विषय का आइडेंटिफ़ायर.

फ़ंक्शन

CheckTLVType(nl::Weave::TLV::TLVType aType, nl::Weave::TLV::TLVReader & aReader)
bool
पक्का करें कि पढ़ा जा रहा TLV एलिमेंट, उम्मीद के मुताबिक TLV टाइप है.
CheckWDMTag(uint32_t aTagNum, nl::Weave::TLV::TLVReader & aReader)
bool
WDM के लिए बने किसी खास टैग की जांच करें.
CloseDataListElement(nl::Weave::TLV::TLVReader & aReader)
WDM डेटा सूची के एलिमेंट को पढ़ना बंद करना.
CloseList(nl::Weave::TLV::TLVReader & aReader)
WDM पाथ या डेटा सूची पढ़ना बंद करें.
EncodeDeprecatedPath(TLVWriter & aWriter, const uint64_t & aTag, uint32_t aProfileId, const uint64_t & aInstanceId, uint32_t aPathLen, ...)
काम न करने वाले टैग और एक पूर्णांक इंस्टेंस आईडी वाले WDM पाथ को कोड में बदलें.
EncodeDeprecatedPath(TLVWriter & aWriter, const uint64_t & aTag, uint32_t aProfileId, const char *aInstanceId, uint32_t aPathLen, ...)
काम न करने वाले टैग और स्ट्रिंग इंस्टेंस आईडी वाले WDM पाथ को कोड में बदलें.
EncodePath(TLVWriter & aWriter, const uint64_t & aTag, uint32_t aProfileId, const uint64_t & aInstanceId, uint32_t aPathLen, ...)
एक WDM पाथ को पूर्णांक प्रोफ़ाइल इंस्टेंस आईडी के साथ कोड में बदलें.
EncodePath(TLVWriter & aWriter, const uint64_t & aTag, uint32_t aProfileId, const uint32_t aInstanceIdLen, const uint8_t *aInstanceId, uint32_t aPathLen, ...)
बाइट ऐरे इंस्टेंस आईडी वाले WDM पाथ को कोड में बदलें.
EncodePath(TLVWriter & aWriter, const uint64_t & aTag, uint32_t aProfileId, const char *aInstanceId, uint32_t aPathLen, ...)
स्ट्रिंग इंस्टेंस आईडी वाले WDM पाथ को कोड में बदलें.
EndDataListElement(nl::Weave::TLV::TLVWriter & aWriter)
डेटा सूची का एलिमेंट लिखें.
EndEncodePath(TLVWriter & aWriter, TLVType & mOuterContainer, WEAVE_ERROR mError)
EndList(nl::Weave::TLV::TLVWriter & aWriter)
पाथ सूची या डेटा सूची लिखना पूरा करें.
EndList(ReferencedTLVData & aList, nl::Weave::TLV::TLVWriter & aWriter)
पाथ सूची या डेटा सूची लिखना पूरा करें.
IsPublisherSpecific(const TopicIdentifier & aTopicId)
bool
देखें कि विषय आईडी, पब्लिशर के लिए है या नहीं.
OpenDataList(ReferencedTLVData & aDataList, nl::Weave::TLV::TLVReader & aReader)
डेटा सूची पढ़ना शुरू करें.
OpenDataListElement(nl::Weave::TLV::TLVReader & aReader, nl::Weave::TLV::TLVReader & aPathReader, uint64_t & aVersion)
डेटा सूची के एलिमेंट पढ़ना शुरू करें.
OpenPathList(ReferencedTLVData & aPathList, nl::Weave::TLV::TLVReader & aReader)
पाथ की सूची पढ़ना शुरू करें.
PublisherSpecificTopicId(void)
नए सिरे से पब्लिशर का विषय आईडी जनरेट करें.
SendStatusReport(ExchangeContext *aExchangeCtx, StatusReport & aStatus)
StartDataList(nl::Weave::TLV::TLVWriter & aWriter)
डेटा सूची लिखना शुरू करें.
StartDataList(ReferencedTLVData & aDataList, nl::Weave::TLV::TLVWriter & aWriter)
दिए गए ReferencedTLVData ऑब्जेक्ट के लिए, डेटा सूची लिखना शुरू करें.
StartDataListElement(nl::Weave::TLV::TLVWriter & aWriter)
डेटा सूची का एलिमेंट लिखना शुरू करें.
StartEncodePath(TLVWriter & aWriter, const uint64_t & aTag, uint32_t aProfileId, TLVType & mOuterContainer, TLVType & mPath)
StartPathList(nl::Weave::TLV::TLVWriter & aWriter)
पाथ की सूची लिखना शुरू करें.
TxnResponseHandler(ExchangeContext *anExchangeCtx, const IPPacketInfo *anAddrInfo, const WeaveMessageInfo *aMsgInfo, uint32_t aProfileId, uint8_t aMsgType, PacketBuffer *aMsg)
void
TxnTimeoutHandler(ExchangeContext *anExchangeCtx)
void
ValidateTLVType(nl::Weave::TLV::TLVType aType, nl::Weave::TLV::TLVReader & aReader)
पुष्टि करें कि पढ़ा जा रहा TLV एलिमेंट, उम्मीद के मुताबिक TLV टाइप है.
ValidateWDMTag(uint32_t aTagNum, nl::Weave::TLV::TLVReader & aReader)
पुष्टि करें कि पढ़े जा रहे TLV एलिमेंट में उम्मीद के मुताबिक WDM टैग है.

क्लास

nl::Weave::Profiles::DataManagement_Legacy::Binding

बाइंडिंग क्लास, Weave का इस्तेमाल करके ऐप्लिकेशन की इकाई की ओर से कम्यूनिकेशन की स्थिति को मैनेज करती है.

nl::Weave::Profiles::DataManagement_Legacy::ClientDataManager

एक ऐब्स्ट्रैक्ट क्लास, जिसमें WDM क्लाइंट के लिए पुष्टि और संकेत देने वाले तरीकों की परिभाषाएं शामिल हैं.

nl::Weave::Profiles::DataManagement_Legacy::ClientNotifier

WDM क्लाइंट पर सदस्यता और सूचना से जुड़ी सहायता पाने के लिए, सहायक क्लास का इस्तेमाल किया जाता है.

nl::Weave::Profiles::DataManagement_Legacy::DMClient

ऐप्लिकेशन के हिसाब से बने WDM क्लाइंट के लिए ऐब्सट्रैक्ट बेस क्लास.

nl::Weave::Profiles::DataManagement_Legacy::DMPublisher

ऐप्लिकेशन के हिसाब से बने WDM पब्लिशर के लिए ऐब्सट्रैक्ट बेस क्लास.

nl::Weave::Profiles::DataManagement_Legacy::ProfileDatabase

ऐब्सट्रैक्ट ProfileDatabase सहायक क्लास.

nl::Weave::Profiles::DataManagement_Legacy::ProtocolEngine

WDM प्रोटोकॉल इंजन क्लास.

nl::Weave::Profiles::DataManagement_Legacy::PublisherDataManager

एक ऐब्स्ट्रैक्ट क्लास, जिसमें WDM पब्लिशर के लिए ज़रूरी पुष्टि और सूचना के तरीकों की परिभाषाएं शामिल हैं.

गिनती

@103

 @103
प्रॉपर्टी
kStatus_CancelSuccess

इस लेगसी स्टेटस कोड का मतलब है कि आपकी सदस्यता रद्द कर दी गई है.

इस स्थिति कोड का मतलब है कि सदस्यता रद्द कर दी गई है.

kStatus_IllegalReadRequest

लेगसी स्टेटस कोड का मतलब है कि किसी खास डेटा आइटम को पढ़ने का अनुरोध करने वाले नोड के पास ऐसा करने की अनुमति नहीं है.

इस स्टेटस कोड का मतलब है कि किसी खास डेटा आइटम को पढ़ने का अनुरोध करने वाले नोड के पास ऐसा करने की अनुमति नहीं है.

kStatus_IllegalWriteRequest

इस लेगसी स्टेटस कोड का मतलब है कि किसी खास डेटा आइटम में बदलाव करने का अनुरोध करने वाले नोड के पास ऐसा करने की अनुमति नहीं है.

इस स्टेटस कोड का मतलब है कि किसी खास डेटा आइटम में बदलाव करने का अनुरोध करने वाले नोड के पास ऐसा करने की अनुमति नहीं है.

kStatus_InvalidPath

लेगसी स्टेटस कोड का मतलब है कि व्यू या अपडेट के अनुरोध के फ़्रेम की पाथ लिस्ट में मौजूद पाथ, जवाब देने वाले व्यक्ति के नोड-रेज़िडेंट स्कीमा से मेल नहीं खाता.

इस स्टेटस कोड का मतलब है कि व्यू या अपडेट के अनुरोध के फ़्रेम की पाथ लिस्ट में मौजूद पाथ, जवाब देने वाले व्यक्ति के नोड-रेज़िडेंट स्कीमा से मेल नहीं खाता.

kStatus_InvalidVersion

इस लेगसी स्टेटस कोड का मतलब है कि अपडेट के अनुरोध में शामिल डेटा का वर्शन, पब्लिशर के सबसे नए वर्शन से मेल नहीं खाता. इसलिए, अपडेट लागू नहीं किया जा सका.

इस स्टेटस कोड का मतलब है कि अपडेट के अनुरोध में शामिल डेटा का वर्शन, पब्लिशर के सबसे नए वर्शन से मेल नहीं खाता. इसलिए, अपडेट लागू नहीं किया जा सका.

kStatus_UnknownTopic

लेगसी स्टेटस कोड का मतलब है कि सदस्यता रद्द करने के अनुरोध या सूचना में दिए गए विषय के आइडेंटिफ़ायर का मिलान, पाने वाले नोड की किसी भी सदस्यता से नहीं हुआ.

इस स्टेटस कोड का मतलब है कि सदस्यता रद्द करने के अनुरोध या सूचना में दिए गए विषय के आइडेंटिफ़ायर का मैच, पाने वाले नोड की किसी मौजूदा सदस्यता से नहीं हुआ.

kStatus_UnsupportedSubscriptionMode

इस लेगसी स्टेटस कोड का मतलब है कि अनुरोध किए गए मोड की सदस्यता, पाने वाले डिवाइस पर काम नहीं करती.

इस स्टेटस कोड का मतलब है कि अनुरोध किए गए मोड की सदस्यता, पाने वाले डिवाइस पर काम नहीं करती.

@166

 @166

WDM पूल और टेबल के साइज़.

WDM उन अलग-अलग पूल और टेबल के बारे में बताता है जो इसके काम करने के लिए ज़रूरी हैं, जैसा कि नीचे बताया गया है.

क्लाइंट के लिए लेन-देन के पूल:

  • kViewPoolSize
  • kSubscribePoolSize
  • kCancelSubscriptionPoolSize
  • kUpdatePoolSize

पब्लिशर के ट्रांज़ैक्शन पूल:

  • kNotifyPoolSize

प्रोटोकॉल इंजन टेबल:

  • kTransactionTableSize
  • kBindingTableSize

सदस्यता से जुड़ी टेबल:

  • kNotifierTableSize (सिर्फ़ क्लाइंट के लिए)
  • kSubscriptionMgrTableSize (सिर्फ़ पब्लिशर के लिए)

ध्यान दें कि इन आंकड़ों की संख्या कॉन्फ़िगर की जा सकती है. साथ ही, हर प्लैटफ़ॉर्म पर इनकी वैल्यू, इससे जुड़े WeaveConfig.h में दिखती हैं.

प्रॉपर्टी
kBindingTableSize

यह WDM प्रोटोकॉल इंजन में बाइंडिंग टेबल का डिफ़ॉल्ट साइज़ है.

इस वैल्यू को WEAVE_CONFIG_WDM_BINDING_TABLE_SIZE की मदद से कॉन्फ़िगर किया जा सकता है.

kCancelSubscriptionPoolSize

यह WDM क्लाइंट के लिए सदस्यता रद्द करने के अनुरोध वाले लेन-देन पूल का डिफ़ॉल्ट साइज़ है.

इस वैल्यू को WEAVE_CONFIG_WDM_CANCEL_SUBSCRIPTION_POOL_SIZE की मदद से कॉन्फ़िगर किया जा सकता है.

kNotifierTableSize

यह WDM क्लाइंट के लिए सूचना टेबल का डिफ़ॉल्ट साइज़ होता है.

यह वैल्यू WEAVE_CONFIG_WDM_NOTIFIER_TABLE_SIZE की मदद से कॉन्फ़िगर की जा सकती है.

kNotifyPoolSize

यह WDM पब्लिशर के लिए, सूचना के अनुरोध वाले लेन-देन पूल का डिफ़ॉल्ट साइज़ है.

इस वैल्यू को WEAVE_CONFIG_WDM_NOTIFY_POOL_SIZE की मदद से कॉन्फ़िगर किया जा सकता है.

kSubscribePoolSize

यह WDM क्लाइंट के लिए, सदस्यता के अनुरोध के लेन-देन पूल का डिफ़ॉल्ट साइज़ होता है.

इस वैल्यू को WEAVE_CONFIG_WDM_SUBSCRIBE_POOL_SIZE की मदद से कॉन्फ़िगर किया जा सकता है.

kSubscriptionMgrTableSize

यह WDM पब्लिशर के लिए, सदस्यता की टेबल का डिफ़ॉल्ट साइज़ है.

इस वैल्यू को WEAVE_CONFIG_WDM_SUBSCRIPTION_MGR_TABLE_SIZE की मदद से कॉन्फ़िगर किया जा सकता है.

kTransactionTableSize

यह WDM प्रोटोकॉल इंजन में, लेन-देन की टेबल का डिफ़ॉल्ट साइज़ होता है.

यह वैल्यू WEAVE_CONFIG_WDM_TRANSACTION_TABLE_SIZE की मदद से कॉन्फ़िगर की जा सकती है.

kUpdatePoolSize

यह WDM क्लाइंट के लिए लेन-देन को अपडेट करने के अनुरोध का डिफ़ॉल्ट साइज़ होता है.

इस वैल्यू को WEAVE_CONFIG_WDM_UPDATE_POOL_SIZE की मदद से कॉन्फ़िगर किया जा सकता है.

kViewPoolSize

यह WDM क्लाइंट के लिए व्यू अनुरोध के लेन-देन पूल का डिफ़ॉल्ट साइज़ है.

इस वैल्यू को WEAVE_CONFIG_WDM_VIEW_POOL_SIZE के ज़रिए कॉन्फ़िगर किया जा सकता है.

@167

 @167

WDM प्रोफ़ाइल मैसेज के टाइप.

इन वैल्यू के बारे में डेटा मैनेजमेंट स्पेसिफ़िकेशन में बताया गया है.

ध्यान दें!! साल 2015 की पहली तिमाही में, WDM के पिछले वर्शन में इस्तेमाल किए जाने वाले मैसेज टाइप के इस्तेमाल पर रोक लगा दी गई है. साथ ही, मैसेज के नए टाइप तय किए गए हैं. यह साफ़ तौर पर जानकारी देने के लिए, पिछली पैकिंग और पार्स करने की जानकारी में काफ़ी बदलाव दिखा रहा है.

प्रॉपर्टी
kMsgType_CancelSubscriptionRequest

सदस्यता के अनुरोध वाला मैसेज.

kMsgType_CancelSubscriptionRequest_Deprecated

अनुचित

kMsgType_NotifyRequest

अनुरोध के बारे में मैसेज की सूचना दें.

kMsgType_NotifyRequest_Deprecated

अनुचित

kMsgType_SubscribeRequest

सदस्यता के अनुरोध वाला मैसेज.

kMsgType_SubscribeRequest_Deprecated

अनुचित

kMsgType_SubscribeResponse

सदस्यता के जवाब वाला मैसेज.

kMsgType_SubscribeResponse_Deprecated

अनुचित

kMsgType_UpdateRequest

अनुरोध के मैसेज को अपडेट करें.

kMsgType_UpdateRequest_Deprecated

अनुचित

kMsgType_ViewRequest

अनुरोध वाला मैसेज देखें.

kMsgType_ViewRequest_Deprecated

अनुचित

kMsgType_ViewResponse

जवाब में बताया गया मैसेज देखें.

kMsgType_ViewResponse_Deprecated

अनुचित

@168

 @168

WDM पर आधारित अलग-अलग कॉन्सटेंट.

प्रॉपर्टी
kDefaultBindingTableIndex

प्रोटोकॉल इंजन बाइंडिंग टेबल में एक से ज़्यादा एंट्री वाली डिफ़ॉल्ट बाइंडिंग का इंडेक्स.

kInstanceIdNotSpecified

जिन कॉल के लिए प्रोफ़ाइल इंस्टेंस स्पेसिफ़िकेशन की ज़रूरत होती है उनमें "कोई नहीं' दिखता है.

आम तौर पर, इसका मतलब यह होता है कि जिस इकाई की शिकायत की गई है उसमें प्रोफ़ाइल का सिर्फ़ एक इंस्टेंस मौजूद है.

kResponseTimeoutNotSpecified

लेन-देन का अनुरोध करने के तरीकों में, इससे पता चलता है कि कॉल करने वाले ने समय खत्म होने की जानकारी देने से मना कर दिया है.

आम तौर पर, इसका मतलब है कि डिफ़ॉल्ट सेटिंग का इस्तेमाल किया जाना चाहिए.

kTransactionIdNotSpecified

ट्रांज़ैक्शन आईडी लेने वाले तरीकों और डेटा स्ट्रक्चर में, "कोई नहीं" या वाइल्ड-कार्ड वैल्यू दिखती है.

kVersionNotSpecified

डेटा वर्शन के स्पेसिफ़िकेशन के लिए ज़रूरी कॉल में, "कोई खास वर्शन नहीं" दिखाता है.

kWeaveTLVControlByteLen

टीएलवी कंट्रोल बाइट की लंबाई, जिसका इस्तेमाल सहायता के उन तरीकों में किया जाता है जो टीएलवी में WDM स्ट्रक्चर को कोड में बदलते हैं.

kWeaveTLVTagLen

सभी शर्तें पूरी करने वाले TLV टैग की स्टैंडर्ड लंबाई बाइट में. इसका इस्तेमाल उन तरीकों में किया जाता है जो TLV में WDM स्ट्रक्चर को कोड में बदलते हैं.

@169

 @169

WDM के लिए खास स्टेटस कोड.

प्रॉपर्टी
kStatus_CancelSuccess

इस लेगसी स्टेटस कोड का मतलब है कि आपकी सदस्यता रद्द कर दी गई है.

इस स्थिति कोड का मतलब है कि सदस्यता रद्द कर दी गई है.

kStatus_IllegalReadRequest

लेगसी स्टेटस कोड का मतलब है कि किसी खास डेटा आइटम को पढ़ने का अनुरोध करने वाले नोड के पास ऐसा करने की अनुमति नहीं है.

इस स्टेटस कोड का मतलब है कि किसी खास डेटा आइटम को पढ़ने का अनुरोध करने वाले नोड के पास ऐसा करने की अनुमति नहीं है.

kStatus_IllegalWriteRequest

इस लेगसी स्टेटस कोड का मतलब है कि किसी खास डेटा आइटम में बदलाव करने का अनुरोध करने वाले नोड के पास ऐसा करने की अनुमति नहीं है.

इस स्टेटस कोड का मतलब है कि किसी खास डेटा आइटम में बदलाव करने का अनुरोध करने वाले नोड के पास ऐसा करने की अनुमति नहीं है.

kStatus_InvalidPath

लेगसी स्टेटस कोड का मतलब है कि व्यू या अपडेट के अनुरोध के फ़्रेम की पाथ लिस्ट में मौजूद पाथ, जवाब देने वाले व्यक्ति के नोड-रेज़िडेंट स्कीमा से मेल नहीं खाता.

इस स्टेटस कोड का मतलब है कि व्यू या अपडेट के अनुरोध के फ़्रेम की पाथ लिस्ट में मौजूद पाथ, जवाब देने वाले व्यक्ति के नोड-रेज़िडेंट स्कीमा से मेल नहीं खाता.

kStatus_InvalidVersion

इस लेगसी स्टेटस कोड का मतलब है कि अपडेट के अनुरोध में शामिल डेटा का वर्शन, पब्लिशर के सबसे नए वर्शन से मेल नहीं खाता. इसलिए, अपडेट लागू नहीं किया जा सका.

इस स्टेटस कोड का मतलब है कि अपडेट के अनुरोध में शामिल डेटा का वर्शन, पब्लिशर के सबसे नए वर्शन से मेल नहीं खाता. इसलिए, अपडेट लागू नहीं किया जा सका.

kStatus_UnknownTopic

लेगसी स्टेटस कोड का मतलब है कि सदस्यता रद्द करने के अनुरोध या सूचना में दिए गए विषय के आइडेंटिफ़ायर का मिलान, पाने वाले नोड की किसी भी सदस्यता से नहीं हुआ.

इस स्टेटस कोड का मतलब है कि सदस्यता रद्द करने के अनुरोध या सूचना में दिए गए विषय के आइडेंटिफ़ायर का मैच, पाने वाले नोड की किसी मौजूदा सदस्यता से नहीं हुआ.

kStatus_UnsupportedSubscriptionMode

इस लेगसी स्टेटस कोड का मतलब है कि अनुरोध किए गए मोड की सदस्यता, पाने वाले डिवाइस पर काम नहीं करती.

इस स्टेटस कोड का मतलब है कि अनुरोध किए गए मोड की सदस्यता, पाने वाले डिवाइस पर काम नहीं करती.

@170

 @170

डेटा मैनेजमेंट प्रोटोकॉल के टैग.

डेटा मैनेजमेंट प्रोटोकॉल, प्रोफ़ाइल डेटा को टीएलवी दिखाने में इस्तेमाल किए जाने वाले कई टैग के बारे में बताता है.

हमेशा की तरह नए WDM और पुराने के बीच संगत समस्याएं होती हैं. पुराने दिनों में, ये सभी टैग प्रोफ़ाइल-विशिष्ट के रूप में लागू किए जाते थे, जिससे स्थान की बर्बादी होती थी. अब जहां भी संभव हो, हमें संदर्भ टैग का उपयोग करने की आवश्यकता होती है, लेकिन जहां भी उचित होता है वहां हमें पुराने टैग को रखने की आवश्यकता होती है (और उनके साथ पाथ को कोड में बदलने की सुविधा भी उपलब्ध होती है).

पिछली रिलीज़ में kTag_WDMDataListElementData टैग का इस्तेमाल नहीं किया गया था और उसे कोड ने पूरी तरह से अनदेखा कर दिया था. इसलिए, हमें बिना काम के वर्शन देने की ज़रूरत नहीं है.

प्रॉपर्टी
kTag_WDMDataList

एलिमेंट, स्ट्रक्चर की एक सूची है. इसमें पाथ, वैकल्पिक वर्शन, और डेटा एलिमेंट शामिल हैं.

टैग प्रकार: प्रोफ़ाइल-विशिष्ट तत्व का प्रकार: सरणी स्थिति: शीर्ष-स्तर

kTag_WDMDataListElementData

एलिमेंट, दिए गए पाथ से बताए गए डेटा और दिए गए वर्शन को दिखाता है.

टैग प्रकार: संदर्भ-विशिष्ट तत्व का प्रकार: कोई भी स्थिति: आवश्यक

kTag_WDMDataListElementData_Deprecated

समर्थन नहीं होना या रुकना.

टैग प्रकार: संदर्भ-विशिष्ट तत्व का प्रकार: कोई भी स्थिति: आवश्यक

kTag_WDMDataListElementPath

एलिमेंट, डेटा सूची के एलिमेंट का पाथ कॉम्पोनेंट है.

टैग प्रकार: संदर्भ-विशिष्ट एलीमेंट प्रकार: पथ स्थिति: आवश्यक

kTag_WDMDataListElementPath_Deprecated

समर्थन नहीं होना या रुकना.

टैग प्रकार: प्रोफ़ाइल के लिए खास तौर पर बने एलिमेंट का टाइप: पाथ का बंटवारा: ज़रूरी है

kTag_WDMDataListElementVersion

एलिमेंट, डेटा लिस्ट के किसी एलिमेंट का वर्शन कॉम्पोनेंट होता है.

टैग का टाइप: संदर्भ के हिसाब से एलिमेंट का टाइप: पूर्णांक का टाइप: ज़रूरी है

kTag_WDMDataListElementVersion_Deprecated

समर्थन नहीं होना या रुकना.

टैग टाइप: प्रोफ़ाइल के लिए खास तौर पर दिया जाने वाला एलिमेंट टाइप: पूर्णांक का डिस्पोज़िशन: ज़रूरी है

kTag_WDMPathArrayIndexSelector

पाथ एलिमेंट, स्कीमा में मौजूद किसी अरे से जुड़ा होता है और इसमें शामिल पूर्णांक एलिमेंट को उस अरे में इंडेक्स के तौर पर इस्तेमाल किया जाता है.

टैग टाइप: प्रोफ़ाइल के लिए खास तौर पर दिया जाने वाला एलिमेंट टाइप: पूर्णांक में बदलाव: ज़रूरी नहीं

kTag_WDMPathArrayValueSelector

पाथ एलिमेंट, स्कीमा में मौजूद किसी ऐरे से जुड़ा होता है और एनकैप्सुलेटेड एलिमेंट का इस्तेमाल, रिकॉर्ड सिलेक्टर के तौर पर किया जाता है.

टैग का टाइप: प्रोफ़ाइल के लिए खास तौर पर बने एलिमेंट का टाइप: स्ट्रक्चर किस तरह का है: ज़रूरी नहीं

kTag_WDMPathList

यह एलिमेंट, टीएलवी पाथ की एक सूची है.

टैग प्रकार: प्रोफ़ाइल-विशिष्ट तत्व का प्रकार: सरणी स्थिति: शीर्ष-स्तर

kTag_WDMPathProfile

एलिमेंट एक स्ट्रक्चर है, जिसका इस्तेमाल पाथ शुरू करने के लिए किया जाता है. साथ ही, इसमें प्रोफ़ाइल की वह जानकारी होती है जिसके हिसाब से पाथ के टैग की व्याख्या की जाती है.

टैग का टाइप: प्रोफ़ाइल के लिए खास तौर पर, एलिमेंट का टाइप: स्ट्रक्चर किस तरह का है: ज़रूरी है

kTag_WDMPathProfileId

एलिमेंट, पाथ प्रोफ़ाइल एलिमेंट का एक प्रोफ़ाइल आईडी कॉम्पोनेंट है, जो TLV पाथ शुरू करता है.

टैग का टाइप: संदर्भ के हिसाब से एलिमेंट का टाइप: पूर्णांक का टाइप: ज़रूरी है

kTag_WDMPathProfileId_Deprecated

समर्थन नहीं होना या रुकना.

टैग टाइप: प्रोफ़ाइल के लिए खास तौर पर दिया जाने वाला एलिमेंट टाइप: पूर्णांक का डिस्पोज़िशन: ज़रूरी है

kTag_WDMPathProfileInstance

यह एलिमेंट एक प्रोफ़ाइल इंस्टेंस है, जो TLV पाथ में प्रोफ़ाइल आईडी का पालन कर सकता है.

ध्यान दें कि किसी नोड में किसी खास प्रोफ़ाइल के कई इंस्टेंस हो सकते हैं या नहीं भी हो सकते हैं. अगर सिर्फ़ एक ही है, तो इस एलिमेंट को हटाया जा सकता है.

टैग प्रकार: संदर्भ-विशिष्ट तत्व का प्रकार: कोई भी स्थिति: वैकल्पिक

kTag_WDMPathProfileInstance_Deprecated

समर्थन नहीं होना या रुकना.

टैग प्रकार: प्रोफ़ाइल के लिए खास तौर पर बने एलिमेंट का प्रकार: कोई भी स्थिति: ज़रूरी नहीं

@171

 @171

अलग-अलग विषय के आईडी.

रुचि के तीन अलग-अलग विषय आईडी होते हैं. इन तीनों का फ़ॉर्मैट "पब्लिशर के लिए खास" के तौर पर होता है.

प्रॉपर्टी
kAnyTopicId

इसे वाइल्ड-कार्ड विषय के आईडी के तौर पर रिज़र्व किया जाता है.

kTopicIdNotSpecified

यह एक खास वैल्यू है. इसे अमान्य या वाइल्ड-कार्ड विषय के आईडी की जानकारी देने के लिए रिज़र्व किया जाता है.

kTopicIdPublisherSpecificMask

इसका इस्तेमाल टॉपसी आईडी बनाने या उसे डीकंपोज़ करने के लिए, मास्क की तरह किया जाता है.

WeaveTransportOption

 WeaveTransportOption

WDM ले जाने के विकल्प.

ये, WDM के लिए म्यूचुअली एक्सक्लूसिव परिवहन विकल्प हैं.

प्रॉपर्टी
kTransport_TCP

इसका बुनियादी ट्रांसपोर्ट, टीसीपी है.

बाइंडिंग को या तो सर्विस मैनेजर का इस्तेमाल करके या सीधे मैसेज लेयर का इस्तेमाल करके पूरा किया जा सकता है.

kTransport_UDP

इस यात्रा में खास तौर पर यूडीपी का इस्तेमाल किया जाता है.

kTransport_WRMP

इसमें शामिल ट्रांसपोर्ट खास तौर पर यूडीपी है. हालांकि, "ऐप्लिकेशन के साथ काम करने वाली लेयर" के डेटा को बेहतर बनाने के लिए इसमें ज़्यादा बदलाव किए गए हैं.

टाइपडीफ़

TopicIdentifier

uint64_t TopicIdentifier

विषय का आइडेंटिफ़ायर.

टॉपिक आइडेंटिफ़ायर, 64-बिट की संख्या वाले होते हैं. इनमें दो मिलते-जुलते इस्तेमाल/सिमेंटिक्स होते हैं. सबसे पहले, इन्हें अलग-अलग रास्तों के लिए, पारंपरिक शॉर्टहैंड के तौर पर इस्तेमाल किया जा सकता है. जैसे, "Nest स्मोक डिटेक्टर". इस तरीके से इस्तेमाल किए जाने वाले विषय आईडी, जैसे कि प्रोफ़ाइल आइडेंटिफ़ायर में एक वेंडर कोड होना चाहिए. यह वेंडर कोड वाले विषय को अलग-अलग वेंडर से, अलग-अलग विषय के आईडी के तौर पर चुने जाने से रोकता है. इस कोड का इस्तेमाल इस तरह किया जाएगा:

बिट 48 - 63 बिट 0 - 47
वेंडर आईडी विषय संख्या
विषय आइडेंटिफ़ायर के लिए दूसरा इस्तेमाल/सिमेंटिक्स तब सामने आता है, जब WDM क्लाइंट और पब्लिशर के बीच डाइनैमिक सदस्यता होती है. इस मामले में, पब्लिशर को हमेशा यूनीक विषय का आईडी देना चाहिए, जो उस सदस्यता के बारे में बताता हो. साथ ही, यह भी करना होगा कि सदस्यता का अनुरोध किसी जाने-माने विषय के आईडी का इस्तेमाल करके किया गया था या किसी आर्बिट्रेरी पाथ लिस्ट का. इस फ़ॉर्म के विषय आइडेंटिफ़ायर में 0xFFFF का वेंडर कोड है.

यह भी देखें:
WeaveVendorIdentifiers.hpp

फ़ंक्शन

CheckTLVType

bool CheckTLVType(
  nl::Weave::TLV::TLVType aType,
  nl::Weave::TLV::TLVReader & aReader
)

पक्का करें कि पढ़ा जा रहा TLV एलिमेंट, उम्मीद के मुताबिक TLV टाइप है.

टीएलवी रीडर के हेड में मौजूद, एलिमेंट टाइप के लिए दिए गए टीएलवी टाइप की जांच करें.

जानकारी
पैरामीटर
[in] aType
किसी खास एलिमेंट के लिए जांचा जाने वाला TLVType
[in] aReader
जांच किए जाने वाले एलिमेंट पर टीएलवी रीडर का रेफ़रंस
लौटाए गए सामान
सही iff एलिमेंट का TLVType और aType मिलान.
यह भी देखें:
WeaveTLVTypes.h

CheckWDMTag

bool CheckWDMTag(
  uint32_t aTagNum,
  nl::Weave::TLV::TLVReader & aReader
)

WDM के लिए बने किसी खास टैग की जांच करें.

TLV रीडर के हेड पर मौजूद असली टैग से, .../data-management/DM console.h से मिलने वाले WDM के हिसाब से बने टैग की संख्या देखें.

जानकारी
पैरामीटर
[in] aTagNum
किसी खास टीएलवी एलिमेंट के लिए जांचा जाने वाला टैग नंबर.
[in] aReader
टीएलवी रीडर का रेफ़रंस, जो उस एलिमेंट के बारे में बताता है जिसकी जांच करनी है.
लौटाए गए सामान
true iff aReader.GetTag() ऐसा टैग बनाता है जो दिए गए टैग नंबर के लिए किसी एक अनुमानित टैग फ़ॉर्म से मेल खाता है.

CloseDataListElement

WEAVE_ERROR CloseDataListElement(
  nl::Weave::TLV::TLVReader & aReader
)

WDM डेटा सूची के एलिमेंट को पढ़ना बंद करना.

इस तरीके में यह माना जाता है कि जिस एलिमेंट की शिकायत की गई है वह WDM डेटा सूची का हिस्सा है, इसलिए यह kTLVType_Array को ExitContainer() में पास करता है.

जानकारी
पैरामीटर
[in,out] aReader
WDM डेटा सूची के एलिमेंट में रखा गया TLV रीडर.
लौटाए गए सामान
WEAVE_NO_ERROR सफल होने पर. अगर ऐसा नहीं है, तो WEAVE_ERROR दिखाएं. इससे यह पता चलता है कि किसी कंटेनर से बाहर नहीं निकला जा सका.

CloseList

WEAVE_ERROR CloseList(
  nl::Weave::TLV::TLVReader & aReader
)

WDM पाथ या डेटा सूची पढ़ना बंद करें.

इस तरीके में यह माना जाता है कि जिस सूची की शिकायत की गई है वह सबसे ऊपर मौजूद TLV एलिमेंट है. इसलिए, यह kTLVType_Sructure को ExitContainer() को पास करता है.

जानकारी
पैरामीटर
[in,out] aReader
WDM पाथ या डेटा सूची में रखा गया TLV रीडर.
लौटाए गए सामान
WEAVE_NO_ERROR सफल होने पर. अगर ऐसा नहीं है, तो WEAVE_ERROR दिखाएं. इससे यह पता चलता है कि किसी कंटेनर से बाहर नहीं निकला जा सका.

EncodeDeprecatedPath

WEAVE_ERROR EncodeDeprecatedPath(
  TLVWriter & aWriter,
  const uint64_t & aTag,
  uint32_t aProfileId,
  const uint64_t & aInstanceId,
  uint32_t aPathLen,
  ...
)

काम न करने वाले टैग और एक पूर्णांक इंस्टेंस आईडी वाले WDM पाथ को कोड में बदलें.

ध्यान दें: Weave रिलीज़ 2.0 से पहले, काम न करने वाले टैग सेट का इस्तेमाल करके पाथ को कोड में बदलें. इस तरीके के वर्शन में, संख्या वाले इंस्टेंस आइडेंटिफ़ायर का इस्तेमाल किया जाता है. यह तरीका, ProfileTag(kWeaveProfile_WDM, kTag_WDMPathProfile) के साथ एक कंटेनर शुरू करता है. इसके बाद, ProfileTag(kWeaveProfile_WDM, kTag_WDMPathProfileId_" के साथ प्रोफ़ाइल आईडी इंसर्ट करता है. इसके बाद, यह ProfileTag(kWeaveProfile_WDM, kTag_WDMPathProfileProfile COVID-196.0” के साथ इंस्टेंस आईडी को इंसर्ट करता है. यह किसी पाथ को कोड में बदलने वाले उन वर्शन में से एक है जो अब काम नहीं करते. नए डिज़ाइन में इस फ़ॉर्मैट का इस्तेमाल नहीं किया जाएगा.

जानकारी
पैरामीटर
[in] aWriter
पाथ लिखने के लिए इस्तेमाल किए गए टीएलवी के लेखक का रेफ़रंस.
[in] aTag
पूरी तरह क्वालिफ़ाइड टीएलवी टैग का रेफ़रंस, जो इस पाथ पर लागू होता है.
[in] aProfileId
वह प्रोफ़ाइल आईडी जिसके तहत पाथ के एलिमेंट की जानकारी मिलती है.
[in] aInstanceId
इस्तेमाल की जाने वाली प्रोफ़ाइल के इंस्टेंस आईडी का रेफ़रंस, जो ज़रूरी नहीं है.
[in] aPathLen
प्रोफ़ाइल की शुरुआती जानकारी देने वाले एट्रिब्यूट के अलावा, पाथ एलिमेंट की सूची शायद 0 होती है.
[in] ...
अतिरिक्त पाथ टैग की वैरिएबल-लंबाई की वैकल्पिक सूची.
लौटाए गए सामान
WEAVE_NO_ERROR सफल होने पर. अगर ऐसा नहीं है, तो WEAVE_ERROR दिखाता है कि दिए गए पाथ को फ़ॉर्मैट नहीं किया जा सकता.

EncodeDeprecatedPath

WEAVE_ERROR EncodeDeprecatedPath(
  TLVWriter & aWriter,
  const uint64_t & aTag,
  uint32_t aProfileId,
  const char *aInstanceId,
  uint32_t aPathLen,
  ...
)

काम न करने वाले टैग और स्ट्रिंग इंस्टेंस आईडी वाले WDM पाथ को कोड में बदलें.

ध्यान दें: अब काम नहीं करने वाले टैग सेट का इस्तेमाल करके, पाथ को कोड में बदलें (DMkonsts.h देखें). तरीके के इस वर्शन में एक इंस्टेंस आईडी स्ट्रिंग होती है. यह तरीका, ProfileTag(kWeaveProfile_WDM, kTag_WDMPathProfile) के साथ एक कंटेनर शुरू करता है. इसके बाद, ProfileTag(kWeaveProfile_WDM, kTag_WDMPathProfileId_" के साथ प्रोफ़ाइल आईडी इंसर्ट करता है. इसके बाद, यह ProfileTag(kWeaveProfile_WDM, kTag_WDMPathProfileProfile COVID-196.0” के साथ इंस्टेंस आईडी को इंसर्ट करता है. यह किसी पाथ को कोड में बदलने वाले उन वर्शन में से एक है जो अब काम नहीं करते. नए डिज़ाइन में इस फ़ॉर्मैट का इस्तेमाल नहीं किया जाएगा.

जानकारी
पैरामीटर
[in] aWriter
पाथ लिखने के लिए इस्तेमाल किए गए टीएलवी के लेखक का रेफ़रंस.
[in] aTag
पूरी तरह क्वालिफ़ाइड टीएलवी टैग का रेफ़रंस, जो इस पाथ पर लागू होता है.
[in] aProfileId
वह प्रोफ़ाइल आईडी जिसके तहत पाथ के एलिमेंट की जानकारी मिलती है.
[in] aInstanceId
प्रोफ़ाइल इंस्टेंस आइडेंटिफ़ायर के तौर पर इस्तेमाल की जाने वाली वैकल्पिक स्ट्रिंग. अगर कोई इंस्टेंस आईडी नहीं दिया गया है, तो यह तर्क NULL हो सकता है.
[in] aPathLen
प्रोफ़ाइल की शुरुआती जानकारी देने वाले एट्रिब्यूट के अलावा, पाथ एलिमेंट की सूची शायद 0 होती है.
[in] ...
एडीशनल पाथ टैग की वैरिएबल-लंबाई की लिस्ट, ज़रूरी नहीं है.
लौटाए गए सामान
WEAVE_NO_ERROR सफल होने पर. अगर ऐसा नहीं है, तो WEAVE_ERROR दिखाता है कि दिए गए पाथ को फ़ॉर्मैट नहीं किया जा सकता.

EncodePath

WEAVE_ERROR EncodePath(
  TLVWriter & aWriter,
  const uint64_t & aTag,
  uint32_t aProfileId,
  const uint64_t & aInstanceId,
  uint32_t aPathLen,
  ...
)

एक WDM पाथ को पूर्णांक प्रोफ़ाइल इंस्टेंस आईडी के साथ कोड में बदलें.

ध्यान दें:डेटा मैनेजमेंट में इस्तेमाल किए गए टाइप का TLV पाथ लिखें. इसमें खास तौर पर, पाथ की शुरुआत में प्रोफ़ाइल को तय किया जाता है, ताकि बाद में आने वाले पाथ के एलिमेंट को समझा जा सके. इस तरीके के वर्शन में, एक पूर्णांक प्रोफ़ाइल इंस्टेंस आईडी का इस्तेमाल होता है.

इस तरीके में ContextTag(kTag_WDMPathProfile मुकाबला) का इस्तेमाल करके इंस्टेंस आईडी डाला जाता है, जो किसी पाथ को कोड में बदलने का सबसे नया वर्शन है.

जानकारी
पैरामीटर
[in] aWriter
पाथ लिखने के लिए इस्तेमाल किए गए टीएलवी के लेखक का रेफ़रंस.
[in] aTag
पूरी तरह क्वालिफ़ाइड टीएलवी टैग का रेफ़रंस, जो इस पाथ पर लागू होता है.
[in] aProfileId
वह प्रोफ़ाइल आईडी जिसके तहत पाथ के एलिमेंट की जानकारी मिलती है.
[in] aInstanceId
इस्तेमाल की जाने वाली प्रोफ़ाइल के इंस्टेंस आइडेंटिफ़ायर का रेफ़रंस. हालांकि, यह ज़रूरी नहीं है. अगर किसी इंस्टेंस आईडी का इस्तेमाल नहीं करना है, तो इस पैरामीटर की वैल्यू kInsightsIdNotspecific होनी चाहिए.
[in] aPathLen
प्रोफ़ाइल की शुरुआती जानकारी देने वाले एट्रिब्यूट के अलावा, पाथ एलिमेंट की सूची शायद 0 होती है.
[in] ...
अतिरिक्त पाथ टैग की वैरिएबल-लंबाई की वैकल्पिक सूची.
लौटाए गए सामान
WEAVE_NO_ERROR सफल होने पर. अगर ऐसा नहीं है, तो WEAVE_ERROR दिखाता है कि दिए गए पाथ को फ़ॉर्मैट नहीं किया जा सकता.

EncodePath

WEAVE_ERROR EncodePath(
  TLVWriter & aWriter,
  const uint64_t & aTag,
  uint32_t aProfileId,
  const uint32_t aInstanceIdLen,
  const uint8_t *aInstanceId,
  uint32_t aPathLen,
  ...
)

बाइट ऐरे इंस्टेंस आईडी वाले WDM पाथ को कोड में बदलें.

ध्यान दें:डेटा मैनेजमेंट में इस्तेमाल किए गए टाइप का TLV पाथ लिखें. इसमें खास तौर पर, पाथ की शुरुआत में प्रोफ़ाइल को तय किया जाता है, ताकि बाद में आने वाले पाथ के एलिमेंट को समझा जा सके. इस तरीके का वर्शन, बाइट-ऐरे प्रोफ़ाइल इंस्टेंस आईडी के साथ-साथ लंबाई भी लेता है.

इस तरीके में ContextTag(kTag_WDMPathProfile मुकाबला) का इस्तेमाल करके इंस्टेंस आईडी डाला जाता है, जो किसी पाथ को कोड में बदलने का सबसे नया वर्शन है.

जानकारी
पैरामीटर
[in] aWriter
पाथ लिखने के लिए इस्तेमाल किए गए टीएलवी के लेखक का रेफ़रंस.
[in] aTag
पूरी तरह क्वालिफ़ाइड टीएलवी टैग का रेफ़रंस, जो इस पाथ पर लागू होता है.
[in] aProfileId
वह प्रोफ़ाइल आईडी जिसके तहत पाथ के एलिमेंट को इंटरप्रेट किया जाता है.
[in] aInstanceIdLen
इंस्टेंस आईडी बनाने वाली बाइट ऐरे की लंबाई. अगर कोई आईडी नहीं है, तो इस पैरामीटर की वैल्यू 0 होगी.
[in] aInstanceId
वैकल्पिक बाइट ऐरे, जिसका इस्तेमाल प्रोफ़ाइल इंस्टेंस आइडेंटिफ़ायर के तौर पर किया जाता है. अगर कोई इंस्टेंस आईडी नहीं दिया गया है, तो यह तर्क NULL हो सकता है.
[in] aPathLen
प्रोफ़ाइल की शुरुआती जानकारी देने वाले एट्रिब्यूट के अलावा, पाथ एलिमेंट की सूची शायद 0 होती है.
[in] ...
एडीशनल पाथ टैग की वैरिएबल-लंबाई की लिस्ट, ज़रूरी नहीं है.
लौटाए गए सामान
WEAVE_NO_ERROR सफल होने पर. अगर ऐसा नहीं है, तो WEAVE_ERROR दिखाता है कि दिए गए पाथ को फ़ॉर्मैट नहीं किया जा सकता.

EncodePath

WEAVE_ERROR EncodePath(
  TLVWriter & aWriter,
  const uint64_t & aTag,
  uint32_t aProfileId,
  const char *aInstanceId,
  uint32_t aPathLen,
  ...
)

स्ट्रिंग इंस्टेंस आईडी वाले WDM पाथ को कोड में बदलें.

ध्यान दें:डेटा मैनेजमेंट में इस्तेमाल किए गए टाइप का TLV पाथ लिखें. इसमें खास तौर पर, पाथ की शुरुआत में प्रोफ़ाइल को तय किया जाता है, ताकि बाद में आने वाले पाथ के एलिमेंट को समझा जा सके. इस तरीके के वर्शन में, स्ट्रिंग प्रोफ़ाइल इंस्टेंस आईडी का इस्तेमाल किया जाता है.

इस तरीके में ContextTag(kTag_WDMPathProfile मुकाबला) का इस्तेमाल करके इंस्टेंस आईडी डाला जाता है, जो किसी पाथ को कोड में बदलने का सबसे नया वर्शन है.

जानकारी
पैरामीटर
[in] aWriter
पाथ लिखने के लिए इस्तेमाल किए गए टीएलवी के लेखक का रेफ़रंस.
[in] aTag
पूरी तरह क्वालिफ़ाइड टीएलवी टैग का रेफ़रंस, जो इस पाथ पर लागू होता है.
[in] aProfileId
वह प्रोफ़ाइल आईडी जिसके तहत पाथ के एलिमेंट की जानकारी मिलती है.
[in] aInstanceId
प्रोफ़ाइल इंस्टेंस आइडेंटिफ़ायर के तौर पर इस्तेमाल की जाने वाली वैकल्पिक स्ट्रिंग. अगर कोई इंस्टेंस आईडी नहीं दिया गया है, तो यह तर्क NULL हो सकता है.
[in] aPathLen
प्रोफ़ाइल की शुरुआती जानकारी देने वाले एट्रिब्यूट के अलावा, पाथ एलिमेंट की सूची शायद 0 होती है.
[in] ...
एडीशनल पाथ टैग की वैरिएबल-लंबाई की लिस्ट, ज़रूरी नहीं है.
लौटाए गए सामान
WEAVE_NO_ERROR सफल होने पर. अगर ऐसा नहीं है, तो WEAVE_ERROR दिखाता है कि दिए गए पाथ को फ़ॉर्मैट नहीं किया जा सकता.

EndDataListElement

WEAVE_ERROR EndDataListElement(
  nl::Weave::TLV::TLVWriter & aWriter
)

डेटा सूची का एलिमेंट लिखें.

WDM डेटा सूची के एलिमेंट के आखिर के लिए TLV लिखें. ध्यान दें कि यह यह मानते हुए कि हम हमेशा किसी सूची आइटम को बंद करते हैं, एक तरह के kTLVType_Array से EndContainer() कॉल को अपने-आप पास हो जाता है.

जानकारी
पैरामीटर
[in] aWriter
टीएलवी के ऐसे लेखक का रेफ़रंस जिसके साथ आइटम का आखिरी हिस्सा लिखना है.
लौटाए गए सामान
WEAVE_NO_ERROR सफल होने पर. अगर ऐसा नहीं है, तो WEAVE_ERROR दिखाएं. इससे पता चलता है कि किसी कंटेनर को बंद नहीं किया जा सकता.

EndEncodePath

WEAVE_ERROR EndEncodePath(
  TLVWriter & aWriter,
  TLVType & mOuterContainer,
  WEAVE_ERROR mError
)

EndList

WEAVE_ERROR EndList(
  nl::Weave::TLV::TLVWriter & aWriter
)

पाथ सूची या डेटा सूची लिखना पूरा करें.

WDM पाथ या डेटा सूची के आखिर में TLV लिखें. साथ ही, लेखक का नाम बताएं.

जानकारी
पैरामीटर
[in,out] aWriter
टीएलवी के ऐसे लेखक का रेफ़रंस जिसके साथ सूची के आखिर में लिखना है.
लौटाए गए सामान
WEAVE_NO_ERROR सफल होने पर. अगर ऐसा नहीं है, तो WEAVE_ERROR दिखाएं. इससे पता चलता है कि किसी कंटेनर को बंद नहीं किया जा सकता.

EndList

WEAVE_ERROR EndList(
  ReferencedTLVData & aList,
  nl::Weave::TLV::TLVWriter & aWriter
)

पाथ सूची या डेटा सूची लिखना पूरा करें.

WDM पाथ या डेटा सूची के आखिर में TLV लिखें. साथ ही, लेखक का नाम बताएं. इस मामले में, जिस ReferencedTLVData ऑब्जेक्ट को टीएलवी में लिखा जा रहा है उसे पास किया जाता है और उसमें बदलाव किया जाता है, ताकि उसमें लिखे गए डेटा की संख्या दिखे.

जानकारी
पैरामीटर
[in,out] aList
रेफ़रंसTLVData ऑब्जेक्ट का रेफ़रंस, जिसमें सूची लिखी जा रही थी.
[in] aWriter
टीएलवी के ऐसे लेखक का रेफ़रंस जिसके साथ सूची के आखिर में लिखना है.
लौटाए गए सामान
WEAVE_NO_ERROR सफल होने पर. अगर ऐसा नहीं है, तो WEAVE_ERROR दिखाएं. इससे पता चलता है कि किसी कंटेनर को बंद नहीं किया जा सकता.

IsPublisherSpecific

bool IsPublisherSpecific(
  const TopicIdentifier & aTopicId
)

देखें कि विषय आईडी, पब्लिशर के लिए है या नहीं.

जानकारी
पैरामीटर
[in] aTopicId
विषय आइडेंटिफ़ायर की ओटी जांच
लौटाए गए सामान
अगर विषय आईडी पब्लिशर के हिसाब से है, तो वैल्यू 'सही' होगी, नहीं तो 'गलत'

OpenDataList

WEAVE_ERROR OpenDataList(
  ReferencedTLVData & aDataList,
  nl::Weave::TLV::TLVReader & aReader
)

डेटा सूची पढ़ना शुरू करें.

नए रीडर और डेटा सूची को देखते हुए, सूची को पढ़ना शुरू करें. साथ ही, प्रोसेस में शुरुआती तौर पर मिले टैग और टाइप की पुष्टि करें. अगर सब ठीक रहता है, तो सूची कंटेनर डालने के बाद रीडर रुक जाता है.

जानकारी
पैरामीटर
[in] aDataList
ReferencedTLVData ऑब्जेक्ट के लिए, रेफ़रंस के तौर पर पास की गई डेटा सूची. इस्तेमाल का सामान्य उदाहरण तब होगा, जब रसीद मिलने के बाद भी सूची बफ़र में हो.
[out] aReader
डेटा सूची पढ़ने के लिए इस्तेमाल किए जाने वाले टीएलवी रीडर का रेफ़रंस. इस रीडर का फ़ोकस, सूची के पहले आइटम से ठीक पहले होगा.
लौटाए गए सामान
WEAVE_NO_ERROR सफल होने पर. अगर ऐसा नहीं है, तो WEAVE_ERROR दिखाएं. यह डेटा सूची को खोलने और/या सही टैग और टाइप की पुष्टि करने में असफल रहा.

OpenDataListElement

WEAVE_ERROR OpenDataListElement(
  nl::Weave::TLV::TLVReader & aReader,
  nl::Weave::TLV::TLVReader & aPathReader,
  uint64_t & aVersion
)

डेटा सूची के एलिमेंट पढ़ना शुरू करें.

डेटा सूची के एलिमेंट पर रीडर की पोज़िशन होने पर, एलिमेंट को पढ़ना शुरू करें. साथ ही, प्रोसेस में शुरुआती तौर पर मिले टैग और टाइप की पुष्टि करें. अगर सबकुछ ठीक रहता है, तो रीडर डेटा एलिमेंट डेटा पर पहुंच जाता है और इन/आउट पाथ रीडर को उससे जुड़े पाथ पर रख दिया जाता है.

जानकारी
पैरामीटर
[in] aReader
डेटा सूची के एलिमेंट पर रखा गया टीएलवी रीडर का रेफ़रंस.
[out] aPathReader
टीएलवी रीडर का रेफ़रंस, जो डेटा लिस्ट एलिमेंट के पाथ कॉम्पोनेंट पर ले जाता है.
[out] aVersion
64-बिट पूर्णांक का संदर्भ, जिसे या तो डेटा सूची के एलिमेंट वर्शन पर सेट किया जाना है, अगर कोई मौजूद है या फिर kVersionNotspecified है.
लौटाए गए सामान
सफलता पर WEAVE_NO_ERROR या डेटा सूची एलिमेंट को खोलने और पढ़ने से जुड़ा कोई WEAVE_ERROR दिखाया गया है.

OpenPathList

WEAVE_ERROR OpenPathList(
  ReferencedTLVData & aPathList,
  nl::Weave::TLV::TLVReader & aReader
)

पाथ की सूची पढ़ना शुरू करें.

नए रीडर और पाथ की सूची मिलने पर, सूची पढ़ना शुरू करें. साथ ही, प्रोसेस में शुरुआती तौर पर मिले टैग और टाइप की पुष्टि करें. अगर सब ठीक रहता है, तो सूची कंटेनर डालने के बाद रीडर रुक जाता है.

जानकारी
पैरामीटर
[in] aPathList
ReferencedTLVData ऑब्जेक्ट के लिए, रेफ़रंस के तौर पर पास की गई पाथ सूची. इस्तेमाल का सामान्य उदाहरण तब होगा, जब रसीद मिलने के बाद भी सूची बफ़र में हो.
[out] aReader
टीएलवी रीडर का रेफ़रंस, जिसका इस्तेमाल पाथ की सूची को पढ़ने के लिए किया जाता है. इस रीडर का कर्सर, सूची के पहले पाथ से ठीक पहले दिखेगा.
लौटाए गए सामान
सफल होने पर WEAVE_NO_ERROR दिखाए जाते हैं; वरना, यह WEAVE_ERROR की वजह से पाथ की सूची खोलने में हुई गड़बड़ी को दिखाता है और/या सही टैग और टाइप की पुष्टि करता है.

PublisherSpecificTopicId

TopicIdentifier PublisherSpecificTopicId(
  void
)

नए सिरे से पब्लिशर का विषय आईडी जनरेट करें.

जानकारी
लौटाए गए सामान
नए विषय का आइडेंटिफ़ायर डालें.

SendStatusReport

WEAVE_ERROR SendStatusReport(
  ExchangeContext *aExchangeCtx,
  StatusReport & aStatus
)

StartDataList

WEAVE_ERROR StartDataList(
  nl::Weave::TLV::TLVWriter & aWriter
)

डेटा सूची लिखना शुरू करें.

WDM डेटा सूची की शुरुआत के लिए TLV लिखें. उदाहरण के लिए, UpdateRequest() के मुख्य तर्क के तौर पर.

जानकारी
पैरामीटर
[in] aWriter
टीएलवी के ऐसे लेखक का रेफ़रंस जिससे लिखना शुरू करना है.
लौटाए गए सामान
WEAVE_NO_ERROR सफल होने पर. अगर ऐसा नहीं है, तो WEAVE_ERROR दिखाएं. इससे पता चलता है कि कंटेनर चालू नहीं हो पा रहा है.

StartDataList

WEAVE_ERROR StartDataList(
  ReferencedTLVData & aDataList,
  nl::Weave::TLV::TLVWriter & aWriter
)

दिए गए ReferencedTLVData ऑब्जेक्ट के लिए, डेटा सूची लिखना शुरू करें.

WDM डेटा सूची की शुरुआत के लिए TLV लिखें. इस मामले में, हम यह मानते हैं कि हम डेटा सूची को रेफ़र किए गए टीएलवी डेटा स्ट्रक्चर के लिए लिख रहे हैं. यह माना जाता है कि लेखक ने शुरुआत नहीं की है - या, किसी भी स्थिति में, दिए गए ऑब्जेक्ट को पॉइंट करने के लिए उसे शुरू किया जाएगा.

जानकारी
पैरामीटर
[out] aDataList
ReferencedTLVData ऑब्जेक्ट का रेफ़रंस, जो लेखक का टारगेट होता है और इसमें आखिर में दिलचस्पी का डेटा शामिल होता है.
[in] aWriter
टीएलवी के ऐसे लेखक का रेफ़रंस जिससे लिखना शुरू करना है.
लौटाए गए सामान
WEAVE_NO_ERROR सफल होने पर. अगर ऐसा नहीं है, तो WEAVE_ERROR दिखाएं. इससे पता चलता है कि कंटेनर चालू नहीं हो पा रहा है.

StartDataListElement

WEAVE_ERROR StartDataListElement(
  nl::Weave::TLV::TLVWriter & aWriter
)

डेटा सूची का एलिमेंट लिखना शुरू करें.

WDM डेटा सूची के एलिमेंट की शुरुआत के लिए TLV लिखें.

जानकारी
पैरामीटर
[in] aWriter
टीएलवी के ऐसे लेखक का रेफ़रंस जिससे लिखना शुरू करना है.
लौटाए गए सामान
WEAVE_NO_ERROR सफल होने पर. अगर ऐसा नहीं है, तो WEAVE_ERROR दिखाएं. इससे पता चलता है कि कंटेनर चालू नहीं हो पा रहा है.

StartEncodePath

WEAVE_ERROR StartEncodePath(
  TLVWriter & aWriter,
  const uint64_t & aTag,
  uint32_t aProfileId,
  TLVType & mOuterContainer,
  TLVType & mPath
)

StartPathList

WEAVE_ERROR StartPathList(
  nl::Weave::TLV::TLVWriter & aWriter
)

पाथ की सूची लिखना शुरू करें.

WDM पाथ सूची की शुरुआत के लिए TLV लिखें. उदाहरण के लिए, ViewRequest() के प्राइमरी आर्ग्युमेंट के तौर पर.

जानकारी
पैरामीटर
[in] aWriter
टीएलवी के ऐसे लेखक का रेफ़रंस जिससे लिखना शुरू करना है.
लौटाए गए सामान
WEAVE_NO_ERROR सफल होने पर. अगर ऐसा नहीं है, तो WEAVE_ERROR दिखाएं. इससे पता चलता है कि कंटेनर चालू नहीं हो पा रहा है.

TxnResponseHandler

void TxnResponseHandler(
  ExchangeContext *anExchangeCtx,
  const IPPacketInfo *anAddrInfo,
  const WeaveMessageInfo *aMsgInfo,
  uint32_t aProfileId,
  uint8_t aMsgType,
  PacketBuffer *aMsg
)

TxnTimeoutHandler

void TxnTimeoutHandler(
  ExchangeContext *anExchangeCtx
)

ValidateTLVType

WEAVE_ERROR ValidateTLVType(
  nl::Weave::TLV::TLVType aType,
  nl::Weave::TLV::TLVReader & aReader
)

पुष्टि करें कि पढ़ा जा रहा TLV एलिमेंट, उम्मीद के मुताबिक TLV टाइप है.

टीएलवी रीडर के ऊपर मौजूद एलिमेंट टाइप के लिए, दिए गए टीएलवी टाइप की जांच करें. साथ ही, अगर कोई मैच नहीं है, तो गड़बड़ी का मैसेज दिखाएं.

जानकारी
पैरामीटर
[in] aType
किसी खास एलिमेंट के लिए पुष्टि किया जाने वाला TLVType.
[in] aReader
उस एलिमेंट पर टीएलवी रीडर का रेफ़रंस जिसकी पुष्टि की जानी है.
लौटाए गए सामान
मिलान होने पर WEAVE_NO_ERROR या अगर मेल नहीं है, तो WEAVE_ERROR_WRONG_TLV_TYPE.
यह भी देखें:
WeaveTLVTypes.h

ValidateWDMTag

WEAVE_ERROR ValidateWDMTag(
  uint32_t aTagNum,
  nl::Weave::TLV::TLVReader & aReader
)

पुष्टि करें कि पढ़े जा रहे TLV एलिमेंट में उम्मीद के मुताबिक WDM टैग है.

जानकारी
पैरामीटर
[in] aTagNum
अनुमानित WDM टैग का 32-बिट टैग नंबर.
[in] aReader
पुष्टि किए जाने के लिए, एलिमेंट पर टीएलवी रीडर को सेट किया गया.
लौटाए गए सामान
WEAVE_NO_ERROR सफल होने पर. अगर ऐसा नहीं है, तो अगर टैग, दिए गए टैग नंबर से मेल नहीं खाता है और उसे WDM टैग माना जाता है, तो WEAVE_ERROR_INVALID_TLV_TAG.