nl::Weave::ExchangeContext

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

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

खास जानकारी

इसमें, वे तरीके बताए गए हैं जिनकी मदद से टीसीपी, यूडीपी या 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) typedef
void(*
यह फ़ंक्शन एक ऐप्लिकेशन कॉलबैक है, जो किसी मौजूदा Weave कनेक्शन के बंद होने पर शुरू करने के लिए लागू होता है.
KeyErrorFunct)(ExchangeContext *ec, WEAVE_ERROR keyErr) typedef
void(*
गड़बड़ी के मैसेज को हैंडल करने वाले मुख्य फ़ंक्शन का टाइप.
MessageReceiveFunct)(ExchangeContext *ec, const IPPacketInfo *pktInfo, const WeaveMessageInfo *msgInfo, uint32_t profileId, uint8_t msgType, PacketBuffer *payload) typedef
void(*
यह फ़ंक्शन, किसी Weave पर मिले मैसेज को मैनेज करने के लिए ऐप्लिकेशन कॉलबैक करता है.
ResponseTimeoutFunct)(ExchangeContext *ec) typedef
void(*
यह फ़ंक्शन, ऐप्लिकेशन कॉलबैक है. यह तब ट्रिगर होता है, जब रिस्पॉन्स मैसेज मिलने का टाइम आउट खत्म हो जाता है.
RetransmissionTimeoutFunct)(ExchangeContext *ec) typedef
void(*
यह फ़ंक्शन, ऐप्लिकेशन कॉलबैक है. यह तब शुरू किया जाता है, जब पहले भेजे गए किसी मैसेज को फिर से भेजने की टाइम आउट अवधि खत्म हो गई हो.
Timeout typedef
uint32_t
इस ExchangeContext में टाइम आउट दिखाने के लिए, मिलीसेकंड में इस्तेमाल किया जाने वाला टाइप.
WRMPAckRcvdFunct)(ExchangeContext *ec, void *msgCtxt) typedef
void(*
यह फ़ंक्शन, ऐप्लिकेशन कॉलबैक है. यह तब शुरू किया जाता है, जब किसी Weave मैसेज के लिए पुष्टि मिलती है. इस मैसेज में Weave Trusted Stores प्रोटोकॉल के हिस्से के तौर पर, किसी Weave मैसेज का अनुरोध किया गया होता है.
WRMPPauseRcvdFunct)(ExchangeContext *ec, uint32_t pauseTime) typedef
void(*
यह फ़ंक्शन, ऐप्लिकेशन कॉलबैक है, जिसका इस्तेमाल करके थ्रॉटल मैसेज या देरी से डिलीवर होने वाले मैसेज के मिलने पर, हम उन्हें इस्तेमाल कर सकते हैं. यह ईमेल, Weave की भरोसेमंद मैसेज सेवा प्रोटोकॉल के तहत आता है.
WRMPSendErrorFunct)(ExchangeContext *ec, WEAVE_ERROR err, void *msgCtxt) typedef
void(*
यह फ़ंक्शन एक ऐप्लिकेशन कॉलबैक है, जो Weave मैसेज भेजते समय किसी गड़बड़ी के आने पर शुरू करता है.

सार्वजनिक एट्रिब्यूट

AllowDuplicateMsgs
bool
बूलियन इंडिकेटर, जिससे यह पता चलता है कि दिए गए एक्सचेंज के लिए, डुप्लीकेट मैसेज की अनुमति है या नहीं.
AppState
void *
ऐप्लिकेशन के हिसाब से खास स्थिति ऑब्जेक्ट की ओर पॉइंटर.
Con
[सिर्फ़ पढ़ने के लिए] Associated 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 के लिए Message प्रोटोकॉल वर्शन.
mWRMPConfig
WRMP कॉन्फ़िगरेशन.

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

Abort(void)
void
Exchange कॉन्टेक्स्ट को तुरंत रद्द करें और इसके सभी रेफ़रंस रिलीज़ करें.
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 रीब्रॉडकास्ट एल्गोरिदम की ओर से, समय-समय पर रीट्रांसमिशन टाइमर सेट करें.
TeardownTrickleRetransmit(void)
void
Trickle में समय-समय पर लगने वाले टाइमर को रद्द करके और 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

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

kSendFlag_DelaySend

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

kSendFlag_ExpectResponse

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

kSendFlag_FromInitiator

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

kSendFlag_MulticastFromLinkLocal

kSendFlag_DefaultMulticastSourceAddress के लिए अब काम नहीं करने वाला उपनाम.

kSendFlag_NoAutoRequestAck

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

kSendFlag_RequestAck

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

kSendFlag_RetainBuffer

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

kSendFlag_RetransmissionTrickle

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

kSendFlag_ReuseMessageId

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

kSendFlag_ReuseSourceId

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

@35

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

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

ConnectionClosedFunct

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

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

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

KeyErrorFunct

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

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

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

MessageReceiveFunct

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

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

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

ResponseTimeoutFunct

void(* ResponseTimeoutFunct)(ExchangeContext *ec)

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

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

RetransmissionTimeoutFunct

void(* RetransmissionTimeoutFunct)(ExchangeContext *ec)

यह फ़ंक्शन, ऐप्लिकेशन कॉलबैक है. यह तब शुरू किया जाता है, जब पहले भेजे गए किसी मैसेज को फिर से भेजने की टाइम आउट अवधि खत्म हो गई हो.

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

टाइम आउट की संख्या

uint32_t Timeout

इस ExchangeContext में टाइम आउट दिखाने के लिए, मिलीसेकंड में इस्तेमाल किया जाने वाला टाइप.

WRMPAckRcvdFunct

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

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

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

WRMPPauseRcvdFunct

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

यह फ़ंक्शन, ऐप्लिकेशन कॉलबैक है, जिसका इस्तेमाल करके थ्रॉटल मैसेज या देरी से डिलीवर होने वाले मैसेज के मिलने पर, हम उन्हें इस्तेमाल कर सकते हैं. यह ईमेल, Weave की भरोसेमंद मैसेज सेवा प्रोटोकॉल के तहत आता है.

इनमें से हर मैसेज के साथ एक समय मान (मिलीसेकंड में) दिया जाता है, जो इस 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
रिपोर्ट किए जा रहे ओरिजनल मैसेज से जुड़े किसी खास कॉन्टेक्स्ट ऑब्जेक्ट का पॉइंटर.

सार्वजनिक एट्रिब्यूट

AllowDuplicateMsgs

bool AllowDuplicateMsgs

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

AppState

void * AppState

ऐप्लिकेशन के हिसाब से खास स्थिति ऑब्जेक्ट की ओर पॉइंटर.

नुकसान

WeaveConnection * Con

[सिर्फ़ पढ़ने के लिए] Associated Weave का कनेक्शन.

EncryptionType

uint8_t EncryptionType

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

ExchangeId

uint16_t ExchangeId

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

ExchangeMgr

WeaveExchangeManager * ExchangeMgr

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

KeyId

uint16_t KeyId

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

OnAckRcvd

WRMPAckRcvdFunct OnAckRcvd

स्वीकार किए गए अनुरोध के लिए ऐप्लिकेशन कॉलबैक.

OnConnectionClosed

ConnectionClosedFunct OnConnectionClosed

OnDDRcvd

WRMPPauseRcvdFunct OnDDRcvd

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

OnKeyError

KeyErrorFunct OnKeyError

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

OnMessageReceived

MessageReceiveFunct OnMessageReceived

OnResponseTimeout

ResponseTimeoutFunct OnResponseTimeout

OnRetransmissionTimeout

RetransmissionTimeoutFunct OnRetransmissionTimeout

OnSendError

WRMPSendErrorFunct OnSendError

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

OnThrottleRcvd

WRMPPauseRcvdFunct OnThrottleRcvd

थ्रॉटल मैसेज के लिए ऐप्लिकेशन कॉलबैक.

PeerAddr

IPAddress PeerAddr

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

PeerIntf

InterfaceId PeerIntf

[सिर्फ़ पढ़ने के लिए] पीयर को मैसेज भेजते समय, आउटबाउंड इंटरफ़ेस का इस्तेमाल करें.

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

PeerNodeId

uint64_t PeerNodeId

[सिर्फ़ पढ़ने के लिए] पीयर नोड का नोड आईडी.

PeerPort

uint16_t PeerPort

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

ResponseTimeout

Timeout ResponseTimeout

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

RetransInterval

uint32_t RetransInterval

ट्रांसमिशन के बीच का समय (मिलीसेकंड में); 0 से ट्रांसमिशन बंद हो जाता है.

mMsgProtocolVersion

uint16_t mMsgProtocolVersion

ExchangeContext के लिए Message प्रोटोकॉल वर्शन.

mWRMPConfig

WRMPConfig mWRMPConfig

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

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

रद्द करें

void Abort(
  void
)

Exchange कॉन्टेक्स्ट को तुरंत रद्द करें और इसके सभी रेफ़रंस रिलीज़ करें.

AddRef

void AddRef(
  void
)

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

AutoRequestAck

bool AutoRequestAck() const 

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

CancelRetrans

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 मैसेज के लिए ज़रूरी पैकेटBuffer के लिए पॉइंटर.
[in] sendFlags
ऐप्लिकेशन ने भेजे जा रहे Weave मैसेज के लिए, फ़्लैग सेट किए गए हैं.
रिटर्न वैल्यू
WEAVE_ERROR_BUFFER_TOO_SMALL
अगर मैसेज बफ़र में एक्सचेंज हेडर को कोड में बदलने के लिए ज़रूरी जगह नहीं है.
WEAVE_NO_ERROR
अगर मैसेज की एन्कोडिंग सफल रही.

GetAutoReleaseKey

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
बफ़र का साइज़, जिसके लिए बफ़र की तरफ़ इशारा किया गया है.

HandleTrickleMessage

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

बातचीत के कॉन्टेक्स्ट में मैसेज का इस्तेमाल कम करें.

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

HasPeerRequestedAck

bool HasPeerRequestedAck(
  void
) const 

तय करें कि क्या पीयर ने इस एक्सचेंज के कम से कम एक मैसेज की मंज़ूरी का अनुरोध किया है.

जानकारी
लौटाए गए सामान
अगर स्वीकार करने का अनुरोध किया गया है, तो 'सही' दिखाता है, नहीं तो 'गलत' दिखाता है.

HasRcvdMsgFromPeer

bool HasRcvdMsgFromPeer(
  void
) const 

देखें कि पीयर से इस एक्सचेंज पर कम से कम एक मैसेज मिला है या नहीं.

जानकारी
लौटाए गए सामान
अगर मैसेज मिला है, तो 'सही' दिखाता है, नहीं तो 'गलत' दिखाता है.

IsAckPending

bool IsAckPending(
  void
) const 

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

IsConnectionClosed

bool IsConnectionClosed(
  void
) const 

पता लगाएं कि ExchangeContext पर कोई चालू WeaveConnection है या नहीं.

जानकारी
लौटाए गए सामान
कनेक्शन बंद होने पर 'सही' दिखाता है, नहीं तो 'गलत' दिखाता है.

IsInitiator

bool IsInitiator(
  void
) const 

तय करें कि क्या कॉन्टेक्स्ट ने एक्सचेंज की शुरुआत की है.

जानकारी
लौटाए गए सामान
शुरुआत करने वाला व्यक्ति 'सही' दिखाता है, नहीं तो 'गलत' दिखाता है.

IsResponseExpected

bool IsResponseExpected(
  void
) const 

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

जानकारी
लौटाए गए सामान
अगर जवाब सही है, तो 'सही' दिखाता है, नहीं तो 'गलत' दिखाता है.

रिलीज़ करें

void Release(
  void
)

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

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

SendCommonNullMessage

WEAVE_ERROR SendCommonNullMessage(
  void
)

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

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

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 मैसेज को होल्ड करके रखे हुए, पैकेटबफ़र ऑब्जेक्ट की ओर पॉइंटर.
[in] sendFlags
ऐप्लिकेशन ने भेजे जा रहे Weave मैसेज के लिए, फ़्लैग सेट किए गए हैं.
[in] msgCtxt
भेजे जा रहे मैसेज से जोड़े जाने वाले ऐप्लिकेशन के संदर्भ ऑब्जेक्ट का पॉइंटर.
रिटर्न वैल्यू
WEAVE_ERROR_INVALID_ARGUMENT
अगर इस SendMessage API को कोई अमान्य तर्क भेजा गया था.
WEAVE_ERROR_SEND_THROTTLED
.
WEAVE_ERROR_WRONG_MSG_VERSION_FOR_EXCHANGE
अगर ईमेल भेजने की खास कार्रवाई और काम करने वाले Weave मैसेज के प्रोटोकॉल वर्शन में कोई अंतर हो. उदाहरण के लिए, यह गड़बड़ी तब जनरेट होगी, जब Weave मैसेज के प्रोटोकॉल का वर्शन V1 होने पर, Weave सुरक्षित मैसेज से जुड़े सिमैंटिक आज़माए जा रहे हों.
WEAVE_ERROR_NOT_CONNECTED
अगर कॉन्टेक्स्ट किसी ऐसे कनेक्शन से जुड़ा था जो अब बंद हो गया है.
WEAVE_ERROR_INCORRECT_STATE
अगर एक्सचेंज कॉन्टेक्स्ट की स्थिति गलत है.
WEAVE_NO_ERROR
अगर वीव लेयर ने मैसेज को नेटवर्क लेयर पर सफलतापूर्वक भेजा हो.

SendMessage

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 मैसेज को होल्ड करके रखे हुए, पैकेटबफ़र ऑब्जेक्ट की ओर पॉइंटर.
[in] sendFlags
ऐप्लिकेशन ने भेजे जा रहे Weave मैसेज के लिए, फ़्लैग सेट किए गए हैं.
[in] msgInfo
WeaveMessageInfo ऑब्जेक्ट के लिए पॉइंटर.
[in] msgCtxt
भेजे जा रहे मैसेज से जोड़े जाने वाले ऐप्लिकेशन के संदर्भ ऑब्जेक्ट का पॉइंटर.
रिटर्न वैल्यू
WEAVE_ERROR_INVALID_ARGUMENT
अगर इस SendMessage API को कोई अमान्य तर्क भेजा गया था.
WEAVE_ERROR_SEND_THROTTLED
.
WEAVE_ERROR_WRONG_MSG_VERSION_FOR_EXCHANGE
अगर ईमेल भेजने की खास कार्रवाई और काम करने वाले Weave मैसेज के प्रोटोकॉल वर्शन में कोई अंतर हो. उदाहरण के लिए, यह गड़बड़ी तब जनरेट होगी, जब Weave मैसेज के प्रोटोकॉल का वर्शन V1 होने पर, Weave सुरक्षित मैसेज से जुड़े सिमैंटिक आज़माए जा रहे हों.
WEAVE_ERROR_NOT_CONNECTED
अगर कॉन्टेक्स्ट किसी ऐसे कनेक्शन से जुड़ा था जो अब बंद हो गया है.
WEAVE_ERROR_INCORRECT_STATE
अगर एक्सचेंज कॉन्टेक्स्ट की स्थिति गलत है.
WEAVE_NO_ERROR
अगर वीव लेयर ने मैसेज को नेटवर्क लेयर पर सफलतापूर्वक भेजा हो.

SetAckPending

void SetAckPending(
  bool inAckPending
)

सेट करें कि क्या इस लेन-देन के लिए, साथी को उसकी सहमति वापस भेजी जानी चाहिए.

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

SetAutoReleaseKey

void SetAutoReleaseKey(
  bool autoReleaseKey
)

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

जानकारी
पैरामीटर
[in] autoReleaseKey
अगर मैसेज को एन्क्रिप्ट करने वाली कुंजी अपने-आप रिलीज़ होनी चाहिए, तो वैल्यू 'सही' होगी.

SetAutoRequestAck

void SetAutoRequestAck(
  bool autoReqAck
)

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

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

SetConnectionClosed

void SetConnectionClosed(
  bool inConnectionClosed
)

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

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

जानकारी
पैरामीटर
[in] inConnectionClosed
बूलियन, जो बताता है कि कॉन्टेक्स्ट किसी कनेक्शन से जुड़ा था (सही) या गलत (गलत).

SetDropAck

void SetDropAck(
  bool inDropAck
)

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

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

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

SetInitiator

void SetInitiator(
  bool inInitiator
)

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

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

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

SetMsgRcvdFromPeer

void SetMsgRcvdFromPeer(
  bool inMsgRcvdFromPeer
)

सेट करें कि इस एक्सचेंज पर पीयर की ओर से कोई मैसेज मिला है या नहीं.

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

SetPeerRequestedAck

void SetPeerRequestedAck(
  bool inPeerRequestedAck
)

सेट करें कि क्या इस एक्सचेंज पर मिले पिछले मैसेज में स्वीकार करने का अनुरोध किया गया था.

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

SetResponseExpected

void SetResponseExpected(
  bool inResponseExpected
)

सेट करें कि इस लेन-देन पर जवाब मिल सकता है या नहीं.

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

SetShouldAutoReleaseConnection

void SetShouldAutoReleaseConnection(
  bool autoReleaseCon
)

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

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

SetupTrickleRetransmit

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

बार-बार ट्रांसमिशन करने का तरीका सेट अप करने के लिए, इसके हिसाब से ट्रांसमिशन इंटरवल और रीब्रॉडकास्ट थ्रेशोल्ड सेट करें.

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

ShouldAutoReleaseConnection

bool ShouldAutoReleaseConnection() const 

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

ShouldDropAck

bool ShouldDropAck(
  void
) const 

तय करें कि WeaveExchangeManager को स्ट्राइक स्वीकार नहीं करनी चाहिए.

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

StartTimerT

WEAVE_ERROR StartTimerT(
  void
)

Trickle रीब्रॉडकास्ट एल्गोरिदम की ओर से, समय-समय पर रीट्रांसमिशन टाइमर सेट करें.

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

TeardownTrickleRetransmit

void TeardownTrickleRetransmit(
  void
)

Trickle में समय-समय पर लगने वाले टाइमर को रद्द करके और Weave मैसेज को होल्ड करके रखे हुए मैसेज बफ़र को खाली करके, ट्रिकल रीट्रांसमिशन तकनीक को बंद करें.

UseEphemeralUDPPort

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 API को कोई अमान्य तर्क भेजा गया था.
WEAVE_ERROR_WRONG_MSG_VERSION_FOR_EXCHANGE
अगर ईमेल भेजने की खास कार्रवाई और काम करने वाले Weave मैसेज के प्रोटोकॉल वर्शन में कोई अंतर हो. उदाहरण के लिए, यह गड़बड़ी तब जनरेट होगी, जब Weave मैसेज के प्रोटोकॉल का वर्शन V1 होने पर, Weave सुरक्षित मैसेज से जुड़े सिमैंटिक आज़माए जा रहे हों.
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 API को कोई गलत तर्क पास किया गया था.
WEAVE_ERROR_SEND_THROTTLED
अगर Weave के भरोसेमंद मैसेज सेवा प्रोटोकॉल का इस्तेमाल करते समय इस एक्सचेंज के कॉन्टेक्स्ट को थ्रॉटल कर दिया जाता है.
WEAVE_ERROR_WRONG_MSG_VERSION_FOR_EXCHANGE
अगर भेजने की खास कार्रवाई और काम करने वाले Weave मैसेज के प्रोटोकॉल वर्शन में कोई अंतर हो. उदाहरण के लिए, यह गड़बड़ी तब जनरेट होगी, जब Weave मैसेज के प्रोटोकॉल का वर्शन V1 होने पर, Weave सुरक्षित मैसेज से जुड़े सिमैंटिक आज़माए जा रहे हों.
WEAVE_ERROR_NOT_CONNECTED
अगर कॉन्टेक्स्ट किसी ऐसे कनेक्शन से जुड़ा था जो अब बंद हो गया है.
WEAVE_ERROR_INCORRECT_STATE
अगर एक्सचेंज कॉन्टेक्स्ट की स्थिति गलत है.
WEAVE_NO_ERROR
अगर वीव लेयर ने मैसेज को नेटवर्क लेयर पर भेज दिया हो.