nl:: बुनाई::ExchangeContext

#include <src/lib/core/WeaveExchangeMgr.h>

यह क्लास, दो या ज़्यादा नोड के बीच चल रही बातचीत (ExchangeContext) को दिखाती है.

खास जानकारी

यह अलग-अलग परिवहन तरीकों (जैसे कि TCP, UDP या Weave भरोसेमंद मैसेज सेवा) पर ExchangeContext के अंदर Weave मैसेज को कोड में बदलने और बातचीत करने के तरीकों के बारे में बताता है.

सार्वजनिक प्रकार

@34{
  kSendFlag_AutoRetrans = 0x0001,
  kSendFlag_ExpectResponse = 0x0002,
  kSendFlag_RetransmissionTrickle = 0x0004,
  kSendFlag_DelaySend = 0x0008,
  kSendFlag_ReuseMessageId = 0x0010,
  kSendFlag_ReuseSourceId = 0x0020,
  kSendFlag_RetainBuffer = 0x0040,
  kSendFlag_AlreadyEncoded = 0x0080,
  kSendFlag_DefaultMulticastSourceAddress = 0x0100,
  kSendFlag_FromInitiator = 0x0200,
  kSendFlag_RequestAck = 0x0400,
  kSendFlag_NoAutoRequestAck = 0x0800,
  kSendFlag_MulticastFromLinkLocal = kSendFlag_DefaultMulticastSourceAddress
}
enum
@35{
  kGetPeerDescription_MaxLength = nl::Weave::kWeavePeerDescription_MaxLength
}
enum
ConnectionClosedFunct)(ExchangeContext *ec, WeaveConnection *con, WEAVE_ERROR conErr) टाइपडेफ़
void(*
यह फ़ंक्शन मौजूदा कॉलबैक बंद होने पर शुरू होने वाला ऐप्लिकेशन कॉलबैक है.
KeyErrorFunct)(ExchangeContext *ec, WEAVE_ERROR keyErr) टाइपडेफ़
void(*
मुख्य गड़बड़ी के मैसेज को मैनेज करने वाला फ़ंक्शन.
MessageReceiveFunct)(ExchangeContext *ec, const IPPacketInfo *pktInfo, const WeaveMessageInfo *msgInfo, uint32_t profileId, uint8_t msgType, PacketBuffer *payload) टाइपडेफ़
void(*
यह फ़ंक्शन, किसी Weave Weave मैसेज को हैंडल करने वाला ऐप्लिकेशन कॉलबैक है.
ResponseTimeoutFunct)(ExchangeContext *ec) टाइपडेफ़
void(*
यह फ़ंक्शन, ऐप्लिकेशन कॉलबैक है. जब रिस्पॉन्स मैसेज की रसीद का टाइम आउट खत्म हो जाता है, तब यह फ़ंक्शन चालू होता है.
RetransmissionTimeoutFunct)(ExchangeContext *ec) टाइपडेफ़
void(*
पहले भेजे गए मैसेज को दोबारा भेजने के लिए, समय खत्म होने पर, यह फ़ंक्शन ऐप्लिकेशन कॉलबैक होता है.
Timeout टाइपडेफ़
uint32_t
टाइप करने के लिए, ExchangeContext में मिलीसेकंड में टाइप करें.
WRMPAckRcvdFunct)(ExchangeContext *ec, void *msgCtxt) टाइपडेफ़
void(*
यह फ़ंक्शन ऐप्लिकेशन कॉलबैक है, जब Weave Trusted Messaging प्रोटोकॉल के हिस्से के तौर पर, Weave मैसेज के लिए पुष्टि की जाती है.
WRMPPauseRcvdFunct)(ExchangeContext *ec, uint32_t pauseTime) टाइपडेफ़
void(*
यह फ़ंक्शन कॉलबैक होता है, जब किसी थ्रॉटल मैसेज या देरी से डिलीवर होने वाले मैसेज को Weave Trusted Messaging प्रोटोकॉल के हिस्से के तौर पर मिलता है.
WRMPSendErrorFunct)(ExchangeContext *ec, WEAVE_ERROR err, void *msgCtxt) टाइपडेफ़
void(*
यह फ़ंक्शन, Weave मैसेज भेजते समय किसी गड़बड़ी का पता चलने पर ऐप्लिकेशन कॉलबैक है.

सार्वजनिक विशेषताएं

AllowDuplicateMsgs
bool
यह बताता है कि किसी एक्सचेंज के लिए डुप्लीकेट मैसेज की अनुमति है या नहीं.
AppState
void *
ऐप्लिकेशन-विशिष्ट स्थिति की ओर इशारा करने वाला ऑब्जेक्ट.
Con
[केवल पढ़ने के लिए] संबद्ध Weave कनेक्शन.
EncryptionType
uint8_t
मैसेज भेजते समय इस्तेमाल करने के लिए एन्क्रिप्ट (सुरक्षित) करने का तरीका.
ExchangeId
uint16_t
[रीड ओनली] असाइन किया गया एक्सचेंज आईडी.
ExchangeMgr
[रीड ओनली] मालिकाना हक वाला एक्सचेंज मैनेजर.
KeyId
uint16_t
किसी मैसेज को भेजते समय इस्तेमाल करने के लिए, एन्क्रिप्ट (सुरक्षित) करने वाली कुंजी.
OnAckRcvd
पुष्टि करने के लिए ऐप्लिकेशन कॉलबैक.
OnConnectionClosed
OnDDRcvd
देरी से डिलीवर होने वाले मैसेज के लिए ऐप्लिकेशन कॉलबैक.
OnKeyError
मिलते-जुलते ऐप्लिकेशन का मुख्य गड़बड़ी का मैसेज मिलने पर, यह फ़ंक्शन लागू होने के लिए ऐप्लिकेशन कॉलबैक होता है.
OnMessageReceived
OnResponseTimeout
OnRetransmissionTimeout
OnSendError
भेजते समय गड़बड़ी के लिए ऐप्लिकेशन कॉलबैक.
OnThrottleRcvd
थ्रॉटल मैसेज मिलने पर ऐप्लिकेशन में कॉलबैक किया गया.
PeerAddr
IPAddress
[केवल पढ़ने के लिए] मिलते-जुलते नोड का आईपी पता.
PeerIntf
InterfaceId
[रीड ओनली] मिलते-जुलते ऐप्लिकेशन को मैसेज भेजते समय इस्तेमाल किया जाने वाला आउटबाउंड इंटरफ़ेस.
PeerNodeId
uint64_t
[रीड ओनली] पीयर नोड का नोड आईडी.
PeerPort
uint16_t
[रीड ओनली] पीयर नोड का पोर्ट.
ResponseTimeout
जवाब मिलने में लगने वाला ज़्यादा से ज़्यादा समय (मिलीसेकंड में); 0 रिस्पॉन्स टाइम आउट बंद कर देता है.
RetransInterval
uint32_t
फिर से खरीदे जाने वाले प्रॉडक्ट के बीच का समय (मिलीसेकंड में); 0 डेटा, फिर से इंस्टॉल करने की सुविधा को बंद कर देता है.
mMsgProtocolVersion
uint16_t
ExchangeContext के लिए मैसेज प्रोटोकॉल वर्शन.
mWRMPConfig
WRMP कॉन्फ़िगरेशन.

सार्वजनिक फ़ंक्शन

Abort(void)
void
एक्सचेंज का संदर्भ तुरंत रद्द करें और उसके सभी रेफ़रंस रिलीज़ करें.
AddRef(void)
void
एक्सचेंज कॉन्टेक्स्ट के लिए रेफ़रंस काउंटर एक-एक करके बढ़ाएं.
AutoRequestAck() const
bool
यह बताता है कि मैसेज भेजे जाने पर, पुष्टि करने का अनुरोध किया जाएगा या नहीं.
CancelRetrans(void)
void
ट्रिकल रीट्रांसमिशन मैकेनिज़्म को रद्द करें.
Close(void)
void
एक्सचेंज के संदर्भ को अच्छी तरह बंद करें.
EncodeExchHeader(WeaveExchangeHeader *exchangeHeader, uint32_t profileId, uint8_t msgType, PacketBuffer *msgBuf, uint16_t sendFlags)
एक्सचेंज हेडर को मैसेज के बफ़र में कोड में बदलें.
GetAutoReleaseKey() const
bool
बताएं कि एक्सचेंज की जगह खाली होने पर, एक्सचेंज से जुड़ी एन्क्रिप्शन कुंजी रिलीज़ हो जानी चाहिए या नहीं.
GetCurrentRetransmitTimeout(void)
uint32_t
मौजूदा लेन-देन का टाइम आउट पाएं.
GetPeerDescription(char *buf, uint32_t bufSize) const
void
मिलते-जुलते ऐप्लिकेशन के नोड और उससे जुड़े पते / कनेक्शन की जानकारी देने वाली स्ट्रिंग बनाई जाती है.
HandleTrickleMessage(const IPPacketInfo *pktInfo, const WeaveMessageInfo *msgInfo)
void
एक्सचेंज कॉन्टेक्स्ट में हैंडल वाला हैंडल मैसेज.
HasPeerRequestedAck(void) const
bool
यह पता करें कि मिलते-जुलते ऐप्लिकेशन ने इस एक्सचेंज पर कम से कम एक मैसेज को स्वीकार करने का अनुरोध किया है या नहीं.
HasRcvdMsgFromPeer(void) const
bool
तय करें कि मिलते-जुलते ऐप्लिकेशन से इस एक्सचेंज पर कम से कम एक मैसेज मिला है या नहीं.
IsAckPending(void) const
bool
यह तय करें कि इस एक्सचेंज पर मिलते-जुलते ऐप्लिकेशन को भेजने की पुष्टि पहले से ही हो रही है या नहीं.
IsConnectionClosed(void) const
bool
देखें कि ExchangeContext के साथ कोई चालू WeaveConnection जुड़ा है या नहीं.
IsInitiator(void) const
bool
पता लगाएं कि क्या संदर्भ एक्सचेंज की शुरुआत है या नहीं.
IsResponseExpected(void) const
bool
तय करें कि इस एक्सचेंज पर भेजे गए मैसेज का जवाब देना चाहिए या नहीं.
Release(void)
void
इस एक्सचेंज कॉन्टेक्स्ट के लिए रेफ़रंस रिलीज़ करें.
SendCommonNullMessage(void)
कॉमन::शून्य मैसेज भेजें.
SendMessage(uint32_t profileId, uint8_t msgType, PacketBuffer *msgPayload, uint16_t sendFlags, void *msgCtxt)
इस एक्सचेंज पर Weave मैसेज भेजें.
SendMessage(uint32_t profileId, uint8_t msgType, PacketBuffer *msgBuf, uint16_t sendFlags, WeaveMessageInfo *msgInfo, void *msgCtxt)
इस एक्सचेंज पर Weave मैसेज भेजें.
SetAckPending(bool inAckPending)
void
अगर इस एक्सचेंज में किसी फ़ाइल को स्वीकार करने वाला ईमेल भेजा जाए, तो उसे सेट करें.
SetAutoReleaseKey(bool autoReleaseKey)
void
सेट करें कि एक्सचेंज खाली होने पर, एक्सचेंज से जुड़ी एन्क्रिप्शन कुंजी रिलीज़ हो या नहीं.
SetAutoRequestAck(bool autoReqAck)
void
जब भी मैसेज भेजा जाए, तब यह पक्का करें कि पुष्टि करने का अनुरोध किया जाए.
SetConnectionClosed(bool inConnectionClosed)
void
kFlagConnectionClosed के फ़्लैग बिट को सेट करें.
SetDropAck(bool inDropAck)
void
सेट करें कि इस संदर्भ के लिए WeaveExchangeManager को रसीदें नहीं भेजनी चाहिए.
SetInitiator(bool inInitiator)
void
kFlagInitiator फ़्लैग बिट सेट करें.
SetMsgRcvdFromPeer(bool inMsgRcvdFromPeer)
void
सेट करें कि इस एक्सचेंज पर मिलते-जुलते ऐप्लिकेशन से मैसेज मिला है या नहीं.
SetPeerRequestedAck(bool inPeerRequestedAck)
void
बताएं कि इस एक्सचेंज के दौरान आखिरी मैसेज में पुष्टि करने का अनुरोध किया गया था या नहीं.
SetResponseExpected(bool inResponseExpected)
void
सेट करें कि इस एक्सचेंज पर जवाब आने चाहिए या नहीं.
SetShouldAutoReleaseConnection(bool autoReleaseCon)
void
सेट करें कि एक्सचेंज खाली होने पर, एक्सचेंज से जुड़े Weave कनेक्शन रिलीज़ होने चाहिए या नहीं.
SetupTrickleRetransmit(uint32_t retransInterval, uint8_t threshold, uint32_t timeout)
फिर से ट्रांसफ़र करने के तरीकों का सेट अप करके, फिर से ट्रांसफ़र करने का संबंधित अंतराल और रीब्रॉडकास्ट थ्रेशोल्ड सेट करें.
ShouldAutoReleaseConnection() const
bool
बताएं कि एक्सचेंज की जगह खाली होने पर, एक्सचेंज से जुड़ा Weave कनेक्शन रिलीज़ होना चाहिए या नहीं.
ShouldDropAck(void) const
bool
तय करें कि WeaveExchangeManager को कोई सहमति नहीं देनी चाहिए या नहीं.
StartTimerT(void)
Trickle rebroadcast एल्गोरिदम's का समय-समय पर फिर से स्थानांतरण टाइमर तंत्र शुरू करें.
TeardownTrickleRetransmit(void)
void
ट्रिकल रीट्रांसमिशन मैकेनिज़्म को आसानी से कम करने के लिए, समय-समय पर टाइमर को रद्द करें और Weave मैसेज को दबाकर रखें.
UseEphemeralUDPPort(void) const
bool
तय करें कि एक्सचेंज के ज़रिए भेजे गए आउटबाउंड मैसेज, स्थानीय अल्पकालिक यूडीपी पोर्ट से भेजे जाएं या नहीं.
WRMPFlushAcks(void)
WRMPSendDelayedDelivery(uint32_t PauseTimeMillis, uint64_t DelayedNodeId)
भेजने वाले के नोड को सूचना देने के लिए देरी से डिलीवर होने का मैसेज भेजें कि पहले भेजे गए मैसेज को पाने वाले को डिलीवर होने में कुछ देरी हो सकती है.
WRMPSendThrottleFlow(uint32_t PauseTimeMillis)
पीयर नोड को थ्रॉटल फ़्लो मैसेज भेजें, ताकि वह मैसेज को थ्रॉटल कर सके.

सार्वजनिक प्रकार

@34

 @34
प्रॉपर्टी
kSendFlag_AlreadyEncoded

यह बताने के लिए इस्तेमाल किया जाता है कि मैसेज पहले से ही कोड में बदला गया है या नहीं.

kSendFlag_AutoRetrans

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

kSendFlag_DefaultMulticastSourceAddress

यह बताने के लिए इस्तेमाल किया जाता है कि IPv6 मल्टीकास्ट मैसेज भेजते समय, IPv6 स्रोत के डिफ़ॉल्ट पते को चुना जाना चाहिए.

kSendFlag_DelaySend

यह बताने के लिए इस्तेमाल किया जाता है कि मौजूदा मैसेज को भेजने में देरी होनी चाहिए.

kSendFlag_ExpectResponse

इसका इस्तेमाल यह बताने के लिए किया जाता है कि तय समय के अंदर जवाब मिलना चाहिए.

kSendFlag_FromInitiator

यह बताने के लिए इस्तेमाल किया जाता है कि मौजूदा मैसेज, एक्सचेंज की शुरुआत करने वाला है.

kSendFlag_MulticastFromLinkLocal

kSendFlag_DefaultMulticastSourceAddress के लिए बहिष्कृत उपनाम.

kSendFlag_NoAutoRequestAck

मैसेज भेजते समय, अपने-आप अनुरोध को स्वीकार करने की सुविधा को बंद करें.

kSendFlag_RequestAck

पुष्टि करने का अनुरोध करने के लिए, WRM मैसेज भेजने के लिए इस्तेमाल किया जाता है.

kSendFlag_RetainBuffer

यह बताने के लिए इस्तेमाल किया जाता है कि भेजे जाने के बाद मैसेज बफ़र में खाली नहीं होना चाहिए.

kSendFlag_RetransmissionTrickle

इसका इस्तेमाल ट्रिकल के लिए फिर से कमीशन देने की ज़रूरी शर्तों के बारे में बताने के लिए किया जाता है.

kSendFlag_ReuseMessageId

यह बताने के लिए इस्तेमाल किया जाता है कि मैसेज हेडर में मैसेज आईडी का फिर से इस्तेमाल किया जा सकता है.

kSendFlag_ReuseSourceId

यह बताने के लिए इस्तेमाल किया जाता है कि मैसेज हेडर में मौजूद सोर्स नोड आईडी को फिर से इस्तेमाल किया जा सकता है.

@35

 @35
प्रॉपर्टी
kGetPeerDescription_MaxLength

GetPeerDescription() के ज़रिए दिए गए स्ट्रिंग की ज़्यादा से ज़्यादा लंबाई (NUL वर्ण सहित).

कनेक्शन बंद किया गया

void(* ConnectionClosedFunct)(ExchangeContext *ec, WeaveConnection *con, WEAVE_ERROR conErr)

यह फ़ंक्शन मौजूदा कॉलबैक बंद होने पर शुरू होने वाला ऐप्लिकेशन कॉलबैक है.

ब्यौरा
पैरामीटर
[in] ec
ExchangeContext ऑब्जेक्ट के लिए पॉइंटर.
[in] con
WeaveConnection ऑब्जेक्ट की ओर एक पॉइंटर.
[in] conErr
WEAVE_ERROR का प्रकार, जो कनेक् शन बंद होने पर रिपोर्ट किया गया था.

मुख्य गड़बड़ी

void(* KeyErrorFunct)(ExchangeContext *ec, WEAVE_ERROR keyErr)

मुख्य गड़बड़ी के मैसेज को मैनेज करने वाला फ़ंक्शन.

ब्यौरा
पैरामीटर
[in] ec
ExchangeContext ऑब्जेक्ट के लिए पॉइंटर.
[in] keyErr
WEAVE_ERROR प्रकार, जिसे मुख्य गड़बड़ी संदेश में रिपोर्ट किया गया था.

मैसेज पाएं

void(* MessageReceiveFunct)(ExchangeContext *ec, const IPPacketInfo *pktInfo, const WeaveMessageInfo *msgInfo, uint32_t profileId, uint8_t msgType, PacketBuffer *payload)

यह फ़ंक्शन, किसी Weave Weave मैसेज को हैंडल करने वाला ऐप्लिकेशन कॉलबैक है.

ब्यौरा
पैरामीटर
[in] ec
ExchangeContext ऑब्जेक्ट के लिए पॉइंटर.
[in] pktInfo
IPPacketInfo ऑब्जेक्ट का सूचक.
[in] msgInfo
WeaveMessageInfo ऑब्जेक्ट का पॉइंटर.
[in] profileId
मिले हुए मैसेज का प्रोफ़ाइल आइडेंटिफ़ायर.
[in] msgType
इससे जुड़ी प्रोफ़ाइल का मैसेज टाइप.
[in] payload
PacketBuffer ऑब्जेक्ट के लिए एक पॉइंटर, जिसमें मैसेज पेलोड को होल्ड किया हुआ है.

रिस्पॉन्सिव टाइमआउटफ़ंट

void(* ResponseTimeoutFunct)(ExchangeContext *ec)

यह फ़ंक्शन, ऐप्लिकेशन कॉलबैक है. जब रिस्पॉन्स मैसेज की रसीद का टाइम आउट खत्म हो जाता है, तब यह फ़ंक्शन चालू होता है.

ब्यौरा
पैरामीटर
[in] ec
ExchangeContext ऑब्जेक्ट के लिए पॉइंटर.

रीट्रांसमिशन टाइमआउटफ़ंट

void(* RetransmissionTimeoutFunct)(ExchangeContext *ec)

पहले भेजे गए मैसेज को दोबारा भेजने के लिए, समय खत्म होने पर, यह फ़ंक्शन ऐप्लिकेशन कॉलबैक होता है.

ब्यौरा
पैरामीटर
[in] ec
ExchangeContext ऑब्जेक्ट के लिए पॉइंटर.

विज्ञापन दिखने से पहले का समय अंतर (टाइम आउट)

uint32_t Timeout

टाइप करने के लिए, ExchangeContext में मिलीसेकंड में टाइप करें.

WRMPAckRcvdFunct

void(* WRMPAckRcvdFunct)(ExchangeContext *ec, void *msgCtxt)

यह फ़ंक्शन ऐप्लिकेशन कॉलबैक है, जब Weave Trusted Messaging प्रोटोकॉल के हिस्से के तौर पर, Weave मैसेज के लिए पुष्टि की जाती है.

ब्यौरा
पैरामीटर
[in] ec
ExchangeContext ऑब्जेक्ट के लिए पॉइंटर.
[in] msgCtxt
मूल मैसेज से जुड़े कुछ खास कॉन्टेक्स्ट ऑब्जेक्ट के लिए पॉइंटर.

WRMPPauseRcvdFunct

void(* WRMPPauseRcvdFunct)(ExchangeContext *ec, uint32_t pauseTime)

यह फ़ंक्शन कॉलबैक होता है, जब किसी थ्रॉटल मैसेज या देरी से डिलीवर होने वाले मैसेज को Weave Trusted Messaging प्रोटोकॉल के हिस्से के तौर पर मिलता है.

इनमें से हर मैसेज के साथ एक टाइम वैल्यू (मिलीसेकंड में) दी जाती है. यह समय, ExchangeContext पर Weave मैसेज भेजने से रोकने का समय बताता है.

ब्यौरा
पैरामीटर
[in] ec
ExchangeContext ऑब्जेक्ट के लिए पॉइंटर.
[in] pauseTime
ट्रांसमिशन रोकने का समय (मिलीसेकंड में).

WRMPSendErrorFunct

void(* WRMPSendErrorFunct)(ExchangeContext *ec, WEAVE_ERROR err, void *msgCtxt)

यह फ़ंक्शन, Weave मैसेज भेजते समय किसी गड़बड़ी का पता चलने पर ऐप्लिकेशन कॉलबैक है.

ब्यौरा
पैरामीटर
[in] ec
ExchangeContext ऑब्जेक्ट के लिए पॉइंटर.
[in] err
WEAVE_ERROR प्रकार, जो संदेश भेजने के दौरान मिला था.
[in] msgCtxt
मूल मैसेज से जुड़े कुछ खास संदर्भ ऑब्जेक्ट का पॉइंटर, जिस पर रिपोर्ट किया जा रहा है.

सार्वजनिक विशेषताएं

डुप्लीकेट Msgs की अनुमति दें

bool AllowDuplicateMsgs

यह बताता है कि किसी एक्सचेंज के लिए डुप्लीकेट मैसेज की अनुमति है या नहीं.

AppState

void * AppState

ऐप्लिकेशन-विशिष्ट स्थिति की ओर इशारा करने वाला ऑब्जेक्ट.

नुकसान

WeaveConnection * Con

[केवल पढ़ने के लिए] संबद्ध Weave कनेक्शन.

एन्क्रिप्शन किस तरह का है

uint8_t EncryptionType

मैसेज भेजते समय इस्तेमाल करने के लिए एन्क्रिप्ट (सुरक्षित) करने का तरीका.

एक्सचेंज आईडी

uint16_t ExchangeId

[रीड ओनली] असाइन किया गया एक्सचेंज आईडी.

ExchangeMgr

WeaveExchangeManager * ExchangeMgr

[रीड ओनली] मालिकाना हक वाला एक्सचेंज मैनेजर.

की-आईडी

uint16_t KeyId

किसी मैसेज को भेजते समय इस्तेमाल करने के लिए, एन्क्रिप्ट (सुरक्षित) करने वाली कुंजी.

ओएनकेआरसीवीडी

WRMPAckRcvdFunct OnAckRcvd

पुष्टि करने के लिए ऐप्लिकेशन कॉलबैक.

ऑनकनेक्ट

ConnectionClosedFunct OnConnectionClosed

ओएनडीआरसीवीडी

WRMPPauseRcvdFunct OnDDRcvd

देरी से डिलीवर होने वाले मैसेज के लिए ऐप्लिकेशन कॉलबैक.

OnKeyError

KeyErrorFunct OnKeyError

मिलते-जुलते ऐप्लिकेशन का मुख्य गड़बड़ी का मैसेज मिलने पर, यह फ़ंक्शन लागू होने के लिए ऐप्लिकेशन कॉलबैक होता है.

Onमैसेजमिल गया

MessageReceiveFunct OnMessageReceived

OnResponseTimeout

ResponseTimeoutFunct OnResponseTimeout

चालू फिर से स्थानांतरण का समय

RetransmissionTimeoutFunct OnRetransmissionTimeout

OnSendError

WRMPSendErrorFunct OnSendError

भेजते समय गड़बड़ी के लिए ऐप्लिकेशन कॉलबैक.

OnThrottleRcvd

WRMPPauseRcvdFunct OnThrottleRcvd

थ्रॉटल मैसेज मिलने पर ऐप्लिकेशन में कॉलबैक किया गया.

मिलते-जुलते ऐप्लिकेशन

IPAddress PeerAddr

[केवल पढ़ने के लिए] मिलते-जुलते नोड का आईपी पता.

मिलते-जुलते ऐप्लिकेशन

InterfaceId PeerIntf

[रीड ओनली] मिलते-जुलते ऐप्लिकेशन को मैसेज भेजते समय इस्तेमाल किया जाने वाला आउटबाउंड इंटरफ़ेस.

(सिर्फ़ यूडीपी के लिए सही.)

मिलते-जुलते ऐप्लिकेशन का आईडी

uint64_t PeerNodeId

[रीड ओनली] पीयर नोड का नोड आईडी.

पीयरपोर्ट

uint16_t PeerPort

[रीड ओनली] पीयर नोड का पोर्ट.

जवाब देने का समय खत्म हुआ

Timeout ResponseTimeout

जवाब मिलने में लगने वाला ज़्यादा से ज़्यादा समय (मिलीसेकंड में); 0 रिस्पॉन्स टाइम आउट बंद कर देता है.

रीट्रांसटर

uint32_t RetransInterval

फिर से खरीदे जाने वाले प्रॉडक्ट के बीच का समय (मिलीसेकंड में); 0 डेटा, फिर से इंस्टॉल करने की सुविधा को बंद कर देता है.

mMsgProtocolVersion

uint16_t mMsgProtocolVersion

ExchangeContext के लिए मैसेज प्रोटोकॉल वर्शन.

mWRMPकॉन्फ़िगरेशन

WRMPConfig mWRMPConfig

WRMP कॉन्फ़िगरेशन.

सार्वजनिक फ़ंक्शन

रद्द करें

void Abort(
  void
)

एक्सचेंज का संदर्भ तुरंत रद्द करें और उसके सभी रेफ़रंस रिलीज़ करें.

AddRef

void AddRef(
  void
)

एक्सचेंज कॉन्टेक्स्ट के लिए रेफ़रंस काउंटर एक-एक करके बढ़ाएं.

ऑटोअनुरोध

bool AutoRequestAck() const 

यह बताता है कि मैसेज भेजे जाने पर, पुष्टि करने का अनुरोध किया जाएगा या नहीं.

रीट्रांसर रद्द करें

void CancelRetrans(
  void
)

ट्रिकल रीट्रांसमिशन मैकेनिज़्म को रद्द करें.

बंद करें

void Close(
  void
)

एक्सचेंज के संदर्भ को अच्छी तरह बंद करें.

यह कॉल, रेफ़रंस नंबर को कम कर देता है और रेफ़रंस नंबर के शून्य हो जाने पर एक्सचेंज को छोड़ देता है.

EncodeExchHeader

WEAVE_ERROR EncodeExchHeader(
  WeaveExchangeHeader *exchangeHeader,
  uint32_t profileId,
  uint8_t msgType,
  PacketBuffer *msgBuf,
  uint16_t sendFlags
)

एक्सचेंज हेडर को मैसेज के बफ़र में कोड में बदलें.

ब्यौरा
पैरामीटर
[in] exchangeHeader
Weave Exchange हेडर ऑब्जेक्ट का पॉइंटर.
[in] profileId
Weave मैसेज का प्रोफ़ाइल पहचानकर्ता भेजा जाएगा.
[in] msgType
इससे जुड़ी प्रोफ़ाइल का मैसेज टाइप.
[in] msgBuf
Weave मैसेज के लिए PacketBuffer का पॉइंटर ज़रूरी है.
[in] sendFlags
ऐप्लिकेशन के लिए, Weave मैसेज भेजे जाने वाले फ़्लैग.
सामान लौटाने की वैल्यू
WEAVE_ERROR_BUFFER_TOO_SMALL
अगर मैसेज के बफ़र में एक्सचेंज हेडर को कोड में बदलने के लिए ज़रूरी जगह नहीं है.
WEAVE_NO_ERROR
अगर मैसेज की एन्कोडिंग सफल रही हो.

अपने-आप रिलीज़ होने वाली कुंजी

bool GetAutoReleaseKey() const 

बताएं कि एक्सचेंज की जगह खाली होने पर, एक्सचेंज से जुड़ी एन्क्रिप्शन कुंजी रिलीज़ हो जानी चाहिए या नहीं.

GetCURRENTRetransmitTimeout

uint32_t GetCurrentRetransmitTimeout(
  void
)

मौजूदा लेन-देन का टाइम आउट पाएं.

यह या तो ExchangeContext के पास, इसके साथ काम करने वाले एक चालू मैसेज एक्सचेंज की सुविधा है या नहीं, यह इस पर निर्भर करता है कि शुरुआत में है या चालू बदलाव को टाइम आउट किया जाना है.

ब्यौरा
लौटाए गए सामान
पैसे चुकाने का मौजूदा समय.

GetPeerDescription

void GetPeerDescription(
  char *buf,
  uint32_t bufSize
) const 

मिलते-जुलते ऐप्लिकेशन के नोड और उससे जुड़े पते / कनेक्शन की जानकारी देने वाली स्ट्रिंग बनाई जाती है.

ब्यौरा
पैरामीटर
[in] buf
बफ़र के लिए एक पॉइंटर जिसमें स्ट्रिंग लिखी जानी चाहिए. दिया गया बफ़र कम से कम kGetPeerDescription_MaxLength जितना होना चाहिए. अगर छोटा बफ़र दिया जाता है, तो स्ट्रिंग को फ़िट करने के लिए काट दिया जाएगा. इस आउटपुट में सभी मामलों में, NUL (बंद करने वाला) का सर्टिफ़िकेट खत्म कर दिया जाएगा.
[in] bufSize
बफ़र के हिसाब से बफ़र का साइज़.

हैंडलट्रिकल मैसेज

void HandleTrickleMessage(
  const IPPacketInfo *pktInfo,
  const WeaveMessageInfo *msgInfo
)

एक्सचेंज कॉन्टेक्स्ट में हैंडल वाला हैंडल मैसेज.

ब्यौरा
पैरामीटर
[in] pktInfo
IPPacketInfo ऑब्जेक्ट का सूचक.
[in] msgInfo
Weave मैसेज की जानकारी देने वाले स्ट्रक्चर का पॉइंटर.

हैस्पीरअनुरोधड

bool HasPeerRequestedAck(
  void
) const 

यह पता करें कि मिलते-जुलते ऐप्लिकेशन ने इस एक्सचेंज पर कम से कम एक मैसेज को स्वीकार करने का अनुरोध किया है या नहीं.

ब्यौरा
लौटाए गए सामान
'true' अगर पुष्टि करने का अनुरोध किया गया है, तो 'false'.

हैशRcvdMsgFromPeer

bool HasRcvdMsgFromPeer(
  void
) const 

तय करें कि मिलते-जुलते ऐप्लिकेशन से इस एक्सचेंज पर कम से कम एक मैसेज मिला है या नहीं.

ब्यौरा
लौटाए गए सामान
'true' अगर मैसेज मिला है, तो 'false'.

isAckPending

bool IsAckPending(
  void
) const 

यह तय करें कि इस एक्सचेंज पर मिलते-जुलते ऐप्लिकेशन को भेजने की पुष्टि पहले से ही हो रही है या नहीं.

IsConnectionबंद है

bool IsConnectionClosed(
  void
) const 

देखें कि ExchangeContext के साथ कोई चालू WeaveConnection जुड़ा है या नहीं.

ब्यौरा
लौटाए गए सामान
'true' अगर कनेक्शन बंद है, तो 'false'.

शुरुआत करने वाला

bool IsInitiator(
  void
) const 

पता लगाएं कि क्या संदर्भ एक्सचेंज की शुरुआत है या नहीं.

ब्यौरा
लौटाए गए सामान
'true' अगर शुरू करता है, तो 'false'.

ISResponse की उम्मीद है

bool IsResponseExpected(
  void
) const 

तय करें कि इस एक्सचेंज पर भेजे गए मैसेज का जवाब देना चाहिए या नहीं.

ब्यौरा
लौटाए गए सामान
'true' अगर जवाब अपेक्षित है, तो 'false'.

रिलीज़ के दौरान

void Release(
  void
)

इस एक्सचेंज कॉन्टेक्स्ट के लिए रेफ़रंस रिलीज़ करें.

अगर संख्या एक तक कम है, तो संदर्भ बंद करें, सभी ऐप्लिकेशन कॉलबैक रीसेट करें, और सभी टाइमर बंद करें.

आम कॉमन मैसेज

WEAVE_ERROR SendCommonNullMessage(
  void
)

कॉमन::शून्य मैसेज भेजें.

ब्यौरा
सामान लौटाने की वैल्यू
WEAVE_ERROR_NO_MEMORY
अगर PacketBuffers उपलब्ध नहीं हैं.
WEAVE_NO_ERROR
अगर तरीका पूरा हो गया है या गड़बड़ी गंभीर नहीं है.
other
SendMessage() से एक और गंभीर गड़बड़ी मिली.

भेजें संदेश

WEAVE_ERROR SendMessage(
  uint32_t profileId,
  uint8_t msgType,
  PacketBuffer *msgPayload,
  uint16_t sendFlags,
  void *msgCtxt
)

इस एक्सचेंज पर Weave मैसेज भेजें.

ब्यौरा
पैरामीटर
[in] profileId
Weave मैसेज का प्रोफ़ाइल पहचानकर्ता भेजा जाएगा.
[in] msgType
इससे जुड़ी प्रोफ़ाइल का मैसेज टाइप.
[in] msgBuf
Weave मैसेज होल्ड करने वाले PacktBuffer ऑब्जेक्ट के लिए एक पॉइंटर.
[in] sendFlags
ऐप्लिकेशन के लिए, Weave मैसेज भेजे जाने वाले फ़्लैग.
[in] msgCtxt
भेजे जाने वाले मैसेज से जोड़ने के लिए, खास तौर पर ऐप्लिकेशन के लिए खास ऑब्जेक्ट ऑब्जेक्ट का पॉइंटर.
सामान लौटाने की वैल्यू
WEAVE_ERROR_INVALID_ARGUMENT
अगर इस SendMessage एपीआई में कोई अमान्य तर्क पास किया गया था.
WEAVE_ERROR_SEND_THROTTLED
अगर Weave भरोसेमंद मैसेजिंग प्रोटोकॉल का इस्तेमाल करते समय इस एक्सचेंज कॉन्टेक्स्ट को थ्रॉटल कर दिया गया है.
WEAVE_ERROR_WRONG_MSG_VERSION_FOR_EXCHANGE
अगर किसी खास भेजने की कार्रवाई और Weave मैसेज के प्रोटोकॉल वाले वर्शन में अंतर है. उदाहरण के लिए, यह गड़बड़ी तब जनरेट होगी, जब Weave मैसेज प्रोटोकॉल वर्शन V1 हो.
WEAVE_ERROR_NOT_CONNECTED
क्या संदर्भ किसी ऐसे कनेक्शन से जुड़ा था जो अब बंद हो गया है.
WEAVE_ERROR_INCORRECT_STATE
अगर एक्सचेंज के संदर्भ की स्थिति गलत है.
WEAVE_NO_ERROR
अगर वीव लेयर ने मैसेज को नेटवर्क लेयर पर सफलतापूर्वक भेजा है.

भेजें संदेश

WEAVE_ERROR SendMessage(
  uint32_t profileId,
  uint8_t msgType,
  PacketBuffer *msgBuf,
  uint16_t sendFlags,
  WeaveMessageInfo *msgInfo,
  void *msgCtxt
)

इस एक्सचेंज पर Weave मैसेज भेजें.

ब्यौरा
पैरामीटर
[in] profileId
Weave मैसेज का प्रोफ़ाइल पहचानकर्ता भेजा जाएगा.
[in] msgType
इससे जुड़ी प्रोफ़ाइल का मैसेज टाइप.
[in] msgBuf
Weave मैसेज होल्ड करने वाले PacktBuffer ऑब्जेक्ट के लिए एक पॉइंटर.
[in] sendFlags
ऐप्लिकेशन के लिए, Weave मैसेज भेजे जाने वाले फ़्लैग.
[in] msgInfo
WeaveMessageInfo ऑब्जेक्ट का पॉइंटर.
[in] msgCtxt
भेजे जाने वाले मैसेज से जोड़ने के लिए, खास तौर पर ऐप्लिकेशन के लिए खास ऑब्जेक्ट ऑब्जेक्ट का पॉइंटर.
सामान लौटाने की वैल्यू
WEAVE_ERROR_INVALID_ARGUMENT
अगर इस SendMessage एपीआई में कोई अमान्य तर्क पास किया गया था.
WEAVE_ERROR_SEND_THROTTLED
अगर Weave भरोसेमंद मैसेजिंग प्रोटोकॉल का इस्तेमाल करते समय इस एक्सचेंज कॉन्टेक्स्ट को थ्रॉटल कर दिया गया है.
WEAVE_ERROR_WRONG_MSG_VERSION_FOR_EXCHANGE
अगर किसी खास भेजने की कार्रवाई और Weave मैसेज के प्रोटोकॉल वाले वर्शन में अंतर है. उदाहरण के लिए, यह गड़बड़ी तब जनरेट होगी, जब Weave मैसेज प्रोटोकॉल वर्शन V1 हो.
WEAVE_ERROR_NOT_CONNECTED
क्या संदर्भ किसी ऐसे कनेक्शन से जुड़ा था जो अब बंद हो गया है.
WEAVE_ERROR_INCORRECT_STATE
अगर एक्सचेंज के संदर्भ की स्थिति गलत है.
WEAVE_NO_ERROR
अगर वीव लेयर ने मैसेज को नेटवर्क लेयर पर सफलतापूर्वक भेजा है.

सेटबारे को मंज़ूरी मिलना बाकी है

void SetAckPending(
  bool inAckPending
)

अगर इस एक्सचेंज में किसी फ़ाइल को स्वीकार करने वाला ईमेल भेजा जाए, तो उसे सेट करें.

ब्यौरा
पैरामीटर
[in] inAckPending
बूलियन जिससे यह पता चलता है कि स्वीकार किए गए मैसेज के जवाब में, सहमति स्वीकार की गई या नहीं (गलत) भेजी गई.

अपने-आप रिलीज़ होने वाली कुंजी सेट करें

void SetAutoReleaseKey(
  bool autoReleaseKey
)

सेट करें कि एक्सचेंज खाली होने पर, एक्सचेंज से जुड़ी एन्क्रिप्शन कुंजी रिलीज़ हो या नहीं.

ब्यौरा
पैरामीटर
[in] autoReleaseKey
अगर मैसेज को एन्क्रिप्ट (सुरक्षित) किया जाता है, तो सही है.

सेट करेंअपने-आपअनुरोध

void SetAutoRequestAck(
  bool autoReqAck
)

जब भी मैसेज भेजा जाए, तब यह पक्का करें कि पुष्टि करने का अनुरोध किया जाए.

ब्यौरा
पैरामीटर
[in] autoReqAck
बूलियन जिससे यह पता चलता है कि मैसेज भेजे जाने पर, उसे स्वीकार करने का अनुरोध किया जाएगा या नहीं.

सेट कनेक्शन बंद है

void SetConnectionClosed(
  bool inConnectionClosed
)

kFlagConnectionClosed के फ़्लैग बिट को सेट करें.

यह फ़्लैग तब सेट किया जाता है, जब ExchangeContext से जुड़ा WeaveConnection बंद हो.

ब्यौरा
पैरामीटर
[in] inConnectionClosed
बूलियन बताता है कि किसी कनेक्शन से संदर्भ जुड़ा है या नहीं (सही) है या नहीं.

सेटड्रॉपअक

void SetDropAck(
  bool inDropAck
)

सेट करें कि इस संदर्भ के लिए WeaveExchangeManager को रसीदें नहीं भेजनी चाहिए.

अंदरूनी तौर पर, सिर्फ़ डीबग के इस्तेमाल के लिए.

ब्यौरा
पैरामीटर
[in] inDropAck
बूलियन जिससे यह पता चलता है कि एक्सचेंज के लिए अनुमतियों को (गलत) नहीं भेजा जाना चाहिए या नहीं.

सेट इनिशिएटर

void SetInitiator(
  bool inInitiator
)

kFlagInitiator फ़्लैग बिट सेट करें.

यह फ़्लैग उस नोड से सेट है जो एक्सचेंज शुरू करता है.

ब्यौरा
पैरामीटर
[in] inInitiator
बूलियन जिससे यह पता चलता है कि कॉन्टेक्स्ट की शुरुआत करने वाला (सही) है या नहीं (गलत) है.

SetMsgRcvdFromPeer

void SetMsgRcvdFromPeer(
  bool inMsgRcvdFromPeer
)

सेट करें कि इस एक्सचेंज पर मिलते-जुलते ऐप्लिकेशन से मैसेज मिला है या नहीं.

ब्यौरा
पैरामीटर
[in] inMsgRcvdFromPeer
बूलियन जिससे यह पता चलता है कि इस एक्सचेंज का संदर्भ होने पर, पीयर से कोई मैसेज (सही) मिला या नहीं (गलत) मिला है.

setPeerRequestAck

void SetPeerRequestedAck(
  bool inPeerRequestedAck
)

बताएं कि इस एक्सचेंज के दौरान आखिरी मैसेज में पुष्टि करने का अनुरोध किया गया था या नहीं.

ब्यौरा
पैरामीटर
[in] inPeerRequestedAck
बूलियन जिससे यह पता चलता है कि आखिरी बार मिलने वाले मैसेज में पुष्टि करने का अनुरोध किया गया था या नहीं (सही) या गलत.

तय किया गया जवाब

void SetResponseExpected(
  bool inResponseExpected
)

सेट करें कि इस एक्सचेंज पर जवाब आने चाहिए या नहीं.

ब्यौरा
पैरामीटर
[in] inResponseExpected
बूलियन जिससे यह पता चलता है कि इस एक्सचेंज पर जवाब सही है या गलत (गलत) है.

setShould AutoReleaseConnection

void SetShouldAutoReleaseConnection(
  bool autoReleaseCon
)

सेट करें कि एक्सचेंज खाली होने पर, एक्सचेंज से जुड़े Weave कनेक्शन रिलीज़ होने चाहिए या नहीं.

ब्यौरा
पैरामीटर
[in] autoReleaseCon
अगर सही है तो Weave कनेक्शन अपने आप रिलीज़ हो जाना चाहिए.

सेट किए गए ट्रायल को ट्रांसफ़र करें

WEAVE_ERROR SetupTrickleRetransmit(
  uint32_t retransInterval,
  uint8_t threshold,
  uint32_t timeout
)

फिर से ट्रांसफ़र करने के तरीकों का सेट अप करके, फिर से ट्रांसफ़र करने का संबंधित अंतराल और रीब्रॉडकास्ट थ्रेशोल्ड सेट करें.

ब्यौरा
पैरामीटर
[in] retransInterval
ट्रिकल रीब्रॉडकास्ट एल्गोरिदम का फिर से ट्रांसफ़र होने का इंटरवल.
[in] threshold
किसी मैसेज को फिर से ब्रॉडकास्ट करने की ज़्यादा से ज़्यादा संख्या.
[in] timeout
ट्रिकल रीट्रांसमिशन टाइमर को रद्द करने से पहले इंतज़ार करने का ज़्यादा से ज़्यादा समय.
लौटाए गए सामान
अगर ट्रिकल सेट अप हो गया था, तो WEAVE_NO_ERROR या किसी INET_ERROR को WEAVE_ERROR में मैप किया गया था.

क्याअपने-आप रिलीज़ होने वाला कनेक्शन

bool ShouldAutoReleaseConnection() const 

बताएं कि एक्सचेंज की जगह खाली होने पर, एक्सचेंज से जुड़ा Weave कनेक्शन रिलीज़ होना चाहिए या नहीं.

चाहिए

bool ShouldDropAck(
  void
) const 

तय करें कि WeaveExchangeManager को कोई सहमति नहीं देनी चाहिए या नहीं.

अंदरूनी तौर पर, सिर्फ़ डीबग के इस्तेमाल के लिए.

StartTimerT

WEAVE_ERROR StartTimerT(
  void
)

Trickle rebroadcast एल्गोरिदम's का समय-समय पर फिर से स्थानांतरण टाइमर तंत्र शुरू करें.

ब्यौरा
लौटाए गए सामान
कामयाब होने पर WEAVE_NO_ERROR, नहीं तो INET_ERROR को WEAVE_ERROR में मैप किया जाएगा.

टियरडाउनट्रिकल ट्रांसमिट

void TeardownTrickleRetransmit(
  void
)

ट्रिकल रीट्रांसमिशन मैकेनिज़्म को आसानी से कम करने के लिए, समय-समय पर टाइमर को रद्द करें और Weave मैसेज को दबाकर रखें.

EphemeralUDPPort का इस्तेमाल करें

bool UseEphemeralUDPPort(
  void
) const 

तय करें कि एक्सचेंज के ज़रिए भेजे गए आउटबाउंड मैसेज, स्थानीय अल्पकालिक यूडीपी पोर्ट से भेजे जाएं या नहीं.

WRMPFlushAcks

WEAVE_ERROR WRMPFlushAcks(
  void
)

WRMPSendDelayedDelivery

WEAVE_ERROR WRMPSendDelayedDelivery(
  uint32_t PauseTimeMillis,
  uint64_t DelayedNodeId
)

भेजने वाले के नोड को सूचना देने के लिए देरी से डिलीवर होने का मैसेज भेजें कि पहले भेजे गए मैसेज को पाने वाले को डिलीवर होने में कुछ देरी हो सकती है.

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

ब्यौरा
पैरामीटर
[in] pauseTimeMillis
पहले भेजे गए मैसेज, डिलीवर किए जाने में देरी हो सकती है. यह समयसीमा मिलीसेकंड में होती है.
[in] delayedNodeId
मिलते-जुलते ऐप्लिकेशन के नोड का नोड आइडेंटिफ़ायर जिस पर मैसेज डिलीवर करने में देरी होगी.
सामान लौटाने की वैल्यू
WEAVE_ERROR_INVALID_ARGUMENT
अगर इस SendMessage एपीआई में कोई अमान्य तर्क पास किया गया था.
WEAVE_ERROR_WRONG_MSG_VERSION_FOR_EXCHANGE
अगर किसी खास भेजने की कार्रवाई और Weave मैसेज के प्रोटोकॉल वाले वर्शन में अंतर है. उदाहरण के लिए, यह गड़बड़ी तब जनरेट होगी, जब Weave मैसेज प्रोटोकॉल वर्शन V1 हो.
WEAVE_ERROR_NOT_CONNECTED
क्या संदर्भ किसी ऐसे कनेक्शन से जुड़ा था जो अब बंद हो गया है.
WEAVE_ERROR_INCORRECT_STATE
अगर एक्सचेंज के संदर्भ की स्थिति गलत है.
WEAVE_NO_ERROR
अगर वीव लेयर ने मैसेज को नेटवर्क लेयर पर सफलतापूर्वक भेजा है.

WRMPSendThrottleFlow

WEAVE_ERROR WRMPSendThrottleFlow(
  uint32_t PauseTimeMillis
)

पीयर नोड को थ्रॉटल फ़्लो मैसेज भेजें, ताकि वह मैसेज को थ्रॉटल कर सके.

ब्यौरा
पैरामीटर
[in] pauseTimeMillis
ईमेल पाने वाले व्यक्ति को भेजे जाने वाले समय की जानकारी (मिलीसेकंड में) चाहिए.
सामान लौटाने की वैल्यू
WEAVE_ERROR_INVALID_ARGUMENT
अगर इस SendMessage एपीआई को कोई अमान्य तर्क पास किया गया था.
WEAVE_ERROR_SEND_THROTTLED
Weave भरोसेमंद मैसेज सेवा प्रोटोकॉल का इस्तेमाल करते समय, अगर यह एक्सचेंज कॉन्टेक्स्ट थ्रॉटल हो गया है.
WEAVE_ERROR_WRONG_MSG_VERSION_FOR_EXCHANGE
अगर किसी खास भेजने की कार्रवाई और Weave मैसेज प्रोटोकॉल के वर्शन में अंतर है, तो यह सुविधा काम करती है. उदाहरण के लिए, यह गड़बड़ी तब जनरेट होगी, जब Weave मैसेज प्रोटोकॉल वर्शन V1 हो.
WEAVE_ERROR_NOT_CONNECTED
क्या संदर्भ किसी ऐसे कनेक्शन से जुड़ा था जो अब बंद हो गया है.
WEAVE_ERROR_INCORRECT_STATE
अगर एक्सचेंज के संदर्भ की स्थिति गलत है.
WEAVE_NO_ERROR
अगर वीव लेयर ने मैसेज को नेटवर्क लेयर पर सफलतापूर्वक भेजा है.