nl::Weave::WeaveMessageLayer

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

WeaveMessageLayer क्लास की परिभाषा, जो अन्य Weave नोड के साथ कम्यूनिकेशन मैनेज करती है.

खास जानकारी

यह अन्य Weave नोड के साथ कम्यूनिकेशन चैनल बनाने के लिए, InetLayer के कई एंडपॉइंट में से किसी एक का इस्तेमाल करता है.

कंस्ट्रक्टर और डिस्ट्रक्टर

WeaveMessageLayer(void)
Weave मैसेज लेयर कन्स्ट्रक्टर.

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

AcceptErrorFunct)(WeaveMessageLayer *msgLayer, WEAVE_ERROR err) typedef
void(*
यह फ़ंक्शन, आने वाले टीसीपी कनेक्शन को मैनेज करने के दौरान गड़बड़ी की शिकायत करने के लिए, हायर लेयर कॉलबैक है.
CallbackRemovedFunct)(void *listenerState) typedef
void(*
इस फ़ंक्शन को कॉलबैक हटाने के लिए इस्तेमाल किया जाता है.
ConnectionReceiveFunct)(WeaveMessageLayer *msgLayer, WeaveConnection *con) typedef
void(*
यह फ़ंक्शन, आने वाले टीसीपी कनेक्शन को मैनेज करने के लिए, हायर लेयर कॉलबैक है.
MessageLayerActivityChangeHandlerFunct)(bool messageLayerIsActive) typedef
void(*
यह फ़ंक्शन, मैसेज लेयर गतिविधि में हुए बदलाव की रिपोर्टिंग के लिए ऐप्लिकेशन कॉलबैक है.
MessageReceiveFunct)(WeaveMessageLayer *msgLayer, WeaveMessageInfo *msgInfo, PacketBuffer *payload) typedef
void(*
यह फ़ंक्शन ऊपरी लेयर कॉलबैक है, जिसे यूडीपी पर Weave मैसेज मिलने पर शुरू किया जाता है.
ReceiveErrorFunct)(WeaveMessageLayer *msgLayer, WEAVE_ERROR err, const IPPacketInfo *pktInfo) typedef
void(*
यह फ़ंक्शन, गड़बड़ी होने पर ट्रिगर होने वाला, ऊपरी लेयर का कॉलबैक है.
State{
  kState_NotInitialized = 0,
  kState_Initializing = 1,
  kState_Initialized = 2
}
enum
WeaveMessageLayer की स्थिति.
TunneledMsgReceiveFunct)(WeaveMessageLayer *msgLayer, PacketBuffer *payload) typedef
void(*
यह फ़ंक्शन, उच्च लेयर का कॉलबैक है. इसे लोकल UDP टनल के ज़रिए टनल किए गए पैकेट मिलने पर ट्रिगर किया जाता है.

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

AppState
void *
ऐप्लिकेशन के हिसाब से स्टेटस ऑब्जेक्ट का पॉइंटर.
ExchangeMgr
[सिर्फ़ पढ़ने के लिए] इससे जुड़ा WeaveExchangeManager ऑब्जेक्ट.
FabricState
[रीड ओनली] इससे जुड़ा WeaveFabricState ऑब्जेक्ट.
IncomingConIdleTimeout
uint32_t
इनकमिंग कनेक्शन के लिए, डिफ़ॉल्ट तौर पर 'इस्तेमाल में नहीं है' के तौर पर सेट होने वाला समय (मिलीसेकंड में).
Inet
InetLayer *
[सिर्फ़ पढ़ने के लिए] इससे जुड़ा InetLayer ऑब्जेक्ट.
IsListening
bool
[READ ONLY] आने वाले कनेक्शन/मैसेज को सुनने पर, यह सही है. अगर ऐसा नहीं है, तो गलत है.
OnAcceptError
OnConnectionReceived
OnMessageReceived
OnReceiveError
OnUDPTunneledMessageReceived
SecurityMgr
[रीड ओनली] इससे जुड़ा WeaveSecurityManager ऑब्जेक्ट.
State
uint8_t
[READ ONLY] WeaveMessageLayer ऑब्जेक्ट की स्थिति.
SystemLayer
mDropMessage
bool
यह सिर्फ़ इंटरनल और डीबग के लिए है. सेट होने पर, WeaveMessageLayer मैसेज को छोड़ देता है और वापस आ जाता है.

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

ClearUnsecuredConnectionListener(ConnectionReceiveFunct oldOnUnsecuredConnectionReceived, CallbackRemovedFunct newOnUnsecuredConnectionCallbacksRemoved)
CloseEndpoints(void)
सभी खुले हुए टीसीपी और यूडीपी एंडपॉइंट बंद करें.
CreateTunnel(WeaveConnectionTunnel **tunPtr, WeaveConnection & conOne, WeaveConnection & conTwo, uint32_t inactivityTimeoutMS)
दो खास WeaveConnections को जोड़कर, WeaveConnectionTunnel बनाएं.
DecodeHeader(PacketBuffer *msgBuf, WeaveMessageInfo *msgInfo, uint8_t **payloadStart)
मिले हुए Weave मैसेज से, Weave मैसेज लेयर हेडर को डिकोड करना.
EncodeMessage(WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf, WeaveConnection *con, uint16_t maxLen, uint16_t reserve)
WeaveMessageLayer हेडर को PacketBuffer में एन्कोड करें.
EncodeMessage(const IPAddress & destAddr, uint16_t destPort, InterfaceId sendIntId, WeaveMessageInfo *msgInfo, PacketBuffer *payload)
Weave मैसेज लेयर हेडर को PacketBuffer में एन्कोड करें.
EphemeralUDPPortEnabled(void) const
bool
देखें कि स्थानीय तौर पर शुरू किए गए Weave यूडीपी एक्सचेंज, इफ़ेमरल यूडीपी सोर्स पोर्ट से भेजे जाने चाहिए या नहीं.
GetConnectionPoolStats(nl::Weave::System::Stats::count_t & aOutInUse) const
void
इस्तेमाल किए जा रहे WeaveConnections की संख्या और पूल के साइज़ की जानकारी पाएं.
IPv4ListenEnabled(void) const
bool
देखें कि WeaveMessageLayer को आईपीवी4 पर इनबाउंड कम्यूनिकेशन सुनने के लिए कॉन्फ़िगर किया गया है या नहीं.
IPv6ListenEnabled(void) const
bool
देखें कि WeaveMessageLayer को IPv4 पर इनबाउंड कम्यूनिकेशन को सुनने के लिए कॉन्फ़िगर किया गया है या नहीं.
Init(InitContext *context)
Weave मैसेज लेयर ऑब्जेक्ट को शुरू करें.
IsBoundToLocalIPv4Address(void) const
bool
देखें कि WeaveMessageLayer, किसी लोकल IPv4 पते से बंधा है या नहीं.
IsBoundToLocalIPv6Address(void) const
bool
देखें कि WeaveMessageLayer स्थानीय आईपीवी6 पते से जुड़ा है या नहीं.
IsMessageLayerActive(void)
bool
NewConnection(void)
पूल से एक नया WeaveConnection ऑब्जेक्ट बनाएं.
NewConnectionTunnel(void)
पूल से नया WeaveConnectionTunnel ऑब्जेक्ट बनाएं.
ReEncodeMessage(PacketBuffer *buf)
RefreshEndpoints(void)
सिस्टम के नेटवर्क इंटरफ़ेस की मौजूदा स्थिति के आधार पर, InetLayer एंडपॉइंट रीफ़्रेश करें.
ResendMessage(WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf)
Inetlayer यूडीपी एंडपॉइंट का इस्तेमाल करके, कोड में बदले गए Weave मैसेज को फिर से भेजें.
ResendMessage(const IPAddress & destAddr, WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf)
Inetlayer यूडीपी एंडपॉइंट का इस्तेमाल करके, कोड में बदले गए Weave मैसेज को फिर से भेजें.
ResendMessage(const IPAddress & destAddr, uint16_t destPort, WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf)
Inetlayer यूडीपी एंडपॉइंट का इस्तेमाल करके, कोड में बदले गए Weave मैसेज को फिर से भेजें.
ResendMessage(const IPAddress & destAddr, uint16_t destPort, InterfaceId interfaceId, WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf)
पहले से मौजूद Inetlayer यूडीपी एंडपॉइंट का इस्तेमाल करके, कोड में बदला गया Weave मैसेज फिर से भेजें.
SendMessage(WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf)
एन्क्रिप्ट करने के बाद, Inetlayer यूडीपी एंडपॉइंट का इस्तेमाल करके Weave मैसेज भेजें.
SendMessage(const IPAddress & destAddr, WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf)
एन्क्रिप्ट करने के बाद, Inetlayer यूडीपी एंडपॉइंट का इस्तेमाल करके Weave मैसेज भेजें.
SendMessage(const IPAddress & destAddr, uint16_t destPort, InterfaceId sendIntfId, WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf)
एन्क्रिप्ट करने के बाद, Inetlayer यूडीपी एंडपॉइंट का इस्तेमाल करके Weave मैसेज भेजें.
SendUDPTunneledMessage(const IPAddress & destAddr, WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf)
लोकल UDP टनल पर, टनल किए गए पैकेट को भेजने के लिए फ़ंक्शन.
SetSignalMessageLayerActivityChanged(MessageLayerActivityChangeHandlerFunct messageLayerActivityChangeHandler)
void
एक ऐसा ऐप्लिकेशन हैंडलर सेट करें जिसे हर बार मैसेज लेयर की गतिविधि में बदलाव होने पर कॉल किया जाएगा.
SetTCPListenEnabled(bool val)
void
WeaveMessageLayer में, इनबाउंड टीसीपी कनेक्शन के लिए सुनने की सुविधा को चालू या बंद करें.
SetUDPListenEnabled(bool val)
void
WeaveMessageLayer में, इनबाउंड यूडीपी मैसेज के लिए सुनने की सुविधा को चालू या बंद करें.
SetUnsecuredConnectionListener(ConnectionReceiveFunct newOnUnsecuredConnectionReceived, CallbackRemovedFunct newOnUnsecuredConnectionCallbacksRemoved, bool force, void *listenerState)
Shutdown(void)
WeaveMessageLayer को बंद करें.
TCPListenEnabled(void) const
bool
देखें कि WeaveMessageLayer को इनबाउंड टीसीपी कनेक्शन सुनने के लिए कॉन्फ़िगर किया गया है या नहीं.
UDPListenEnabled(void) const
bool
देखें कि WeaveMessageLayer को इनबाउंड यूडीपी मैसेज सुनने के लिए कॉन्फ़िगर किया गया है या नहीं.
UnsecuredListenEnabled(void) const
bool
कुछ समय के लिए इस्तेमाल होने वाले यूडीपी सोर्स पोर्ट से, Weave यूडीपी एक्सचेंज शुरू करने की सुविधा चालू या बंद करें.

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

GetMaxWeavePayloadSize(const PacketBuffer *msgBuf, bool isUDP, uint32_t udpMTU)
uint32_t
मैसेज कॉन्फ़िगरेशन और दिए गए PacketBuffer के लिए, Weave पेलोड का ज़्यादा से ज़्यादा साइज़ पाएं.
GetPeerDescription(char *buf, size_t bufSize, uint64_t nodeId, const IPAddress *addr, uint16_t port, InterfaceId interfaceId, const WeaveConnection *con)
void
यह किसी पीयर नोड और उससे जुड़े पते / कनेक्शन की जानकारी देने वाली स्ट्रिंग बनाता है.
GetPeerDescription(char *buf, size_t bufSize, const WeaveMessageInfo *msgInfo)
void
यह फ़ंक्शन, पियर से मिले मैसेज से जुड़ी जानकारी के आधार पर, पियर नोड की जानकारी देने वाली स्ट्रिंग बनाता है.

क्लास

nl::Weave::WeaveMessageLayer::InitContext

InitContext क्लास की परिभाषा.

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

AcceptErrorFunct

void(* AcceptErrorFunct)(WeaveMessageLayer *msgLayer, WEAVE_ERROR err)

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

विवरण
पैरामीटर
[in] msgLayer
WeaveMessageLayer ऑब्जेक्ट का पॉइंटर.
[in] err
आने वाले टीसीपी कनेक्शन को हैंडल करते समय WEAVE_ERROR मिली.

CallbackRemovedFunct

void(* CallbackRemovedFunct)(void *listenerState)

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

विवरण
पैरामीटर
[in] listenerState
ऐप्लिकेशन स्टेटस ऑब्जेक्ट का पॉइंटर.

ConnectionReceiveFunct

void(* ConnectionReceiveFunct)(WeaveMessageLayer *msgLayer, WeaveConnection *con)

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

विवरण
पैरामीटर
[in] msgLayer
WeaveMessageLayer ऑब्जेक्ट का पॉइंटर.
[in] con
WeaveConnection ऑब्जेक्ट का पॉइंटर.

MessageLayerActivityChangeHandlerFunct

void(* MessageLayerActivityChangeHandlerFunct)(bool messageLayerIsActive)

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

मैसेज लेयर को तब ही ऐक्टिव माना जाता है, जब कम से कम एक एक्सचेंज खुला हो या मैसेज काउंटर सिंक करने का अनुरोध बाकी हो.

विवरण
पैरामीटर
[in] messageLayerIsActive
बूलियन वैल्यू, जिससे यह पता चलता है कि मैसेज लेयर चालू है या नहीं.

MessageReceiveFunct

void(* MessageReceiveFunct)(WeaveMessageLayer *msgLayer, WeaveMessageInfo *msgInfo, PacketBuffer *payload)

यह फ़ंक्शन, UDP पर Weave मैसेज मिलने पर, हाई लेयर कॉलबैक के तौर पर काम करता है.

विवरण
पैरामीटर
[in] msgLayer
WeaveMessageLayer ऑब्जेक्ट का पॉइंटर.
[in] msgInfo
WeaveMessageInfo ऑब्जेक्ट का पॉइंटर.
[in] payload
टनल किए गए पैकेट को शामिल करने वाले PacketBuffer मैसेज का पॉइंटर.

ReceiveErrorFunct

void(* ReceiveErrorFunct)(WeaveMessageLayer *msgLayer, WEAVE_ERROR err, const IPPacketInfo *pktInfo)

यह फ़ंक्शन, हाई लेयर कॉलबैक है और कोई गड़बड़ी मिलने पर शुरू होता है.

विवरण
पैरामीटर
[in] msgLayer
WeaveMessageLayer ऑब्जेक्ट का पॉइंटर.
[in] err
डेटा पाने के दौरान WEAVE_ERROR मिली.
[in] pktInfo
IPPacketInfo ऑब्जेक्ट का रीड-ओनली पॉइंटर.

स्थिति

 State

WeaveMessageLayer की स्थिति.

प्रॉपर्टी
kState_Initialized

यह बताएं कि WeaveMessageLayer को कब शुरू किया गया.

kState_Initializing

WeaveMessageLayer को शुरू करने की प्रोसेस के दौरान स्टेटस.

kState_NotInitialized

वह स्थिति बताएं जब WeaveMessageLayer शुरू नहीं किया गया.

TunneledMsgReceiveFunct

void(* TunneledMsgReceiveFunct)(WeaveMessageLayer *msgLayer, PacketBuffer *payload)

यह फ़ंक्शन, ऊपरी लेयर कॉलबैक है और इसका इस्तेमाल, लोकल यूडीपी टनल पर टनल किया गया पैकेट मिलने पर किया जाता है.

विवरण
पैरामीटर
[in] msgLayer
WeaveMessageLayer ऑब्जेक्ट का पॉइंटर.
[in] payload
पैकेट बफ़र मैसेज का पॉइंटर जिस पर टनल किया गया पैकेट है.

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

AppState

void * AppState

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

ExchangeMgr

WeaveExchangeManager * ExchangeMgr

[सिर्फ़ पढ़ने के लिए] इससे जुड़ा WeaveExchangeManager ऑब्जेक्ट.

FabricState

WeaveFabricState * FabricState

[रीड ओनली] इससे जुड़ा WeaveFabricState ऑब्जेक्ट.

IncomingConIdleTimeout

uint32_t IncomingConIdleTimeout

इनकमिंग कनेक्शन के लिए, डिफ़ॉल्ट तौर पर 'इस्तेमाल में नहीं है' का समय (मिलीसेकंड में).

Inet

InetLayer * Inet

[सिर्फ़ पढ़ने के लिए] इससे जुड़ा InetLayer ऑब्जेक्ट.

IsListening

bool IsListening

[रीड ओनली] अगर आने वाले कनेक्शन/मैसेज को सुनने के लिए सेट है, तो 'सही'. अगर नहीं, तो 'गलत'.

OnAcceptError

AcceptErrorFunct OnAcceptError

OnConnectionReceived

ConnectionReceiveFunct OnConnectionReceived

OnMessageReceived

MessageReceiveFunct OnMessageReceived

OnReceiveError

ReceiveErrorFunct OnReceiveError

OnUDPTunneledMessageReceived

TunneledMsgReceiveFunct OnUDPTunneledMessageReceived

SecurityMgr

WeaveSecurityManager * SecurityMgr

[रीड ओनली] इससे जुड़ा WeaveSecurityManager ऑब्जेक्ट.

स्थिति

uint8_t State

[READ ONLY] WeaveMessageLayer ऑब्जेक्ट की स्थिति.

SystemLayer

System::Layer * SystemLayer

mDropMessage

bool mDropMessage

यह सिर्फ़ इंटरनल और डीबग के लिए है. सेट होने पर, WeaveMessageLayer मैसेज को छोड़ देता है और वापस आ जाता है.

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

ClearUnsecuredConnectionListener

WEAVE_ERROR ClearUnsecuredConnectionListener(
  ConnectionReceiveFunct oldOnUnsecuredConnectionReceived,
  CallbackRemovedFunct newOnUnsecuredConnectionCallbacksRemoved
)

CloseEndpoints

WEAVE_ERROR CloseEndpoints(
  void
)

सभी खुले हुए टीसीपी और यूडीपी एंडपॉइंट बंद करें.

इसके बाद, सभी खुले हुए WeaveConnections को बंद करें और सभी खुले हुए WeaveConnectionTunnel ऑब्जेक्ट को बंद करें.

यह भी देखें:
Shutdown().

CreateTunnel

WEAVE_ERROR CreateTunnel(
  WeaveConnectionTunnel **tunPtr,
  WeaveConnection & conOne,
  WeaveConnection & conTwo,
  uint32_t inactivityTimeoutMS
)

दो खास WeaveConnections को जोड़कर, WeaveConnectionTunnel बनाएं.

कॉम्पोनेंट WeaveConnection ऑब्जेक्ट से जुड़े TCPEndPoints बनाने के बाद, उन्हें WeaveConnectionTunnel को सौंप दिया जाता है. ऐसा न करने पर, WeaveConnections बंद हो जाते हैं.

विवरण
पैरामीटर
[out] tunPtr
WeaveConnectionTunnel ऑब्जेक्ट के पॉइंटर का पॉइंटर.
[in] conOne
पहले WeaveConnection ऑब्जेक्ट का रेफ़रंस.
[in] conTwo
दूसरे WeaveConnection ऑब्जेक्ट का रेफ़रंस.
[in] inactivityTimeoutMS
Weave कनेक्शन टनल के आइडल रहने का ज़्यादा से ज़्यादा समय (मिलीसेकंड में).
रिटर्न वैल्यू
WEAVE_NO_ERROR
WeaveConnectionTunnel बनाने के बाद.
WEAVE_ERROR_INCORRECT_STATE
अगर WeaveConnectionTunnel का कॉम्पोनेंट WeaveConnection ऑब्जेक्ट सही स्थिति में नहीं है.
WEAVE_ERROR_NO_MEMORY
अगर नया WeaveConnectionTunnel ऑब्जेक्ट नहीं बनाया जा सकता.

DecodeHeader

WEAVE_ERROR DecodeHeader(
  PacketBuffer *msgBuf,
  WeaveMessageInfo *msgInfo,
  uint8_t **payloadStart
)

मिले हुए Weave मैसेज से, Weave मैसेज लेयर हेडर को डिकोड करना.

विवरण
पैरामीटर
[in] msgBuf
Weave मैसेज को होल्ड करने वाले PacketBuffer ऑब्जेक्ट का पॉइंटर.
[in] msgInfo
WeaveMessageInfo ऑब्जेक्ट का पॉइंटर, जिसे मैसेज के बारे में जानकारी मिलेगी.
[out] payloadStart
डिकोडिंग पूरा होने के बाद, मैसेज बफ़र की पोज़िशन पर पॉइंटर का पॉइंटर.
रिटर्न वैल्यू
WEAVE_NO_ERROR
मैसेज हेडर को सही तरीके से डिकोड करने पर.
WEAVE_ERROR_INVALID_MESSAGE_LENGTH
अगर मैसेज बफ़र की लंबाई अमान्य है.
WEAVE_ERROR_UNSUPPORTED_MESSAGE_VERSION
अगर Weave मैसेज के हेडर फ़ॉर्मैट का वर्शन काम नहीं करता है.

EncodeMessage

WEAVE_ERROR EncodeMessage(
  WeaveMessageInfo *msgInfo,
  PacketBuffer *msgBuf,
  WeaveConnection *con,
  uint16_t maxLen,
  uint16_t reserve
)

WeaveMessageLayer हेडर को PacketBuffer में एन्कोड करें.

विवरण
पैरामीटर
[in] msgInfo
WeaveMessageInfo ऑब्जेक्ट का पॉइंटर, जिसमें कोड में बदले जाने वाले मैसेज की जानकारी होती है.
[in] msgBuf
PacketBuffer ऑब्जेक्ट का पॉइंटर, जिसमें Weave मैसेज सेव किया जाएगा.
[in] con
WeaveConnection ऑब्जेक्ट का पॉइंटर.
[in] maxLen
कोड में बदले गए Weave मैसेज की ज़्यादा से ज़्यादा लंबाई.
[in] reserve
पेलोड से पहले, Weave मैसेज हेडर के लिए रिज़र्व किया गया स्पेस.
रिटर्न वैल्यू
WEAVE_NO_ERROR
मैसेज को कोड में बदलने के बाद मिली है.
WEAVE_ERROR_UNSUPPORTED_MESSAGE_VERSION
अगर Weave मैसेज के हेडर फ़ॉर्मैट का वर्शन काम नहीं करता है.
WEAVE_ERROR_INVALID_MESSAGE_LENGTH
अगर मैसेज बफ़र में पेलोड की लंबाई शून्य है.
WEAVE_ERROR_UNSUPPORTED_ENCRYPTION_TYPE
अगर मैसेज हेडर में एन्क्रिप्शन (सुरक्षित करने का तरीका) का वह टाइप इस्तेमाल नहीं किया जा सकता जिसका इस्तेमाल किया जा रहा है.
WEAVE_ERROR_MESSAGE_TOO_LONG
अगर कोड में बदला गया मैसेज, अनुरोध की गई ज़्यादा से ज़्यादा संख्या से ज़्यादा लंबा होगा.
WEAVE_ERROR_BUFFER_TOO_SMALL
अगर मैसेज पेलोड के पहले या बाद में ज़रूरत के मुताबिक जगह नहीं है.
other
सेशन की स्थिति फ़ेच करते समय, फ़ैब्रिक स्टेटस ऑब्जेक्ट से जनरेट हुई गड़बड़ियां.

EncodeMessage

WEAVE_ERROR EncodeMessage(
  const IPAddress & destAddr,
  uint16_t destPort,
  InterfaceId sendIntId,
  WeaveMessageInfo *msgInfo,
  PacketBuffer *payload
)

Weave मैसेज लेयर हेडर को PacketBuffer में एन्कोड करें.

विवरण
पैरामीटर
[in] destAddr
डेस्टिनेशन आईपी पता.
[in] destPort
डेस्टिनेशन पोर्ट.
[in] sendIntId
वह इंटरफ़ेस जिस पर Weave मैसेज भेजना है.
[in] msgInfo
WeaveMessageInfo ऑब्जेक्ट का पॉइंटर.
[in] payload
PacketBuffer ऑब्जेक्ट का पॉइंटर, जो Weave मैसेज को होल्ड करके रखेगा.
रिटर्न वैल्यू
WEAVE_NO_ERROR
Weave मैसेज को सही तरीके से कोड में बदलने के बारे में है.
WEAVE_ERROR_UNSUPPORTED_MESSAGE_VERSION
अगर आपके डिवाइस पर Weave Message का वर्शन काम नहीं करता है.
WEAVE_ERROR_INVALID_MESSAGE_LENGTH
अगर मैसेज बफ़र में पेलोड की लंबाई शून्य है.
WEAVE_ERROR_UNSUPPORTED_ENCRYPTION_TYPE
अगर एन्क्रिप्ट (सुरक्षित) करने का यह तरीका काम नहीं करता है.
WEAVE_ERROR_MESSAGE_TOO_LONG
कोड में बदला गया मैसेज, अनुरोध किए गए मैक्सिमम मैसेज से ज़्यादा होगा.
WEAVE_ERROR_BUFFER_TOO_SMALL
अगर मैसेज पेलोड के पहले या बाद में ज़रूरत के मुताबिक जगह नहीं है.
other
सेशन की स्थिति फ़ेच करते समय, फ़ैब्रिक स्टेटस ऑब्जेक्ट से जनरेट हुई गड़बड़ियां.

EphemeralUDPPortEnabled

bool EphemeralUDPPortEnabled(
  void
) const 

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

GetConnectionPoolStats

void GetConnectionPoolStats(
  nl::Weave::System::Stats::count_t & aOutInUse
) const 

इस्तेमाल किए जा रहे WeaveConnections की संख्या और पूल के साइज़ की जानकारी पाएं.

विवरण
पैरामीटर
[out] aOutInUse
size_t का रेफ़रंस, जिसमें इस्तेमाल में मौजूद कनेक्शन की संख्या सेव की जाती है.

IPv4ListenEnabled

bool IPv4ListenEnabled(
  void
) const 

देखें कि WeaveMessageLayer को आईपीवी4 पर इनबाउंड कम्यूनिकेशन सुनने के लिए कॉन्फ़िगर किया गया है या नहीं.

IPv6ListenEnabled

bool IPv6ListenEnabled(
  void
) const 

देखें कि WeaveMessageLayer को IPv4 पर इनबाउंड कम्यूनिकेशन को सुनने के लिए कॉन्फ़िगर किया गया है या नहीं.

Init

WEAVE_ERROR Init(
  InitContext *context
)

Weave मैसेज लेयर ऑब्जेक्ट को शुरू करें.

विवरण
पैरामीटर
[in] context
InitContext ऑब्जेक्ट का पॉइंटर.
रिटर्न वैल्यू
WEAVE_NO_ERROR
को शुरू करने के बाद.
WEAVE_ERROR_INVALID_ARGUMENT
अगर पास किया गया InitContext ऑब्जेक्ट NULL है.
WEAVE_ERROR_INCORRECT_STATE
अगर WeaveMessageLayer ऑब्जेक्ट की स्थिति गलत है.
other
एंडपॉइंट बनाते समय, निचली Inet लेयर से जनरेट हुई गड़बड़ियां.

IsBoundToLocalIPv4Address

bool IsBoundToLocalIPv4Address(
  void
) const 

देखें कि WeaveMessageLayer, किसी लोकल IPv4 पते से बंधा है या नहीं.

IsBoundToLocalIPv6Address

bool IsBoundToLocalIPv6Address(
  void
) const 

देखें कि WeaveMessageLayer, किसी स्थानीय IPv6 पते से बंधा है या नहीं.

IsMessageLayerActive

bool IsMessageLayerActive(
  void
)

NewConnection

WeaveConnection * NewConnection(
  void
)

पूल से नया WeaveConnection ऑब्जेक्ट बनाएं.

विवरण
लौटाए जाने वाले प्रॉडक्ट
अगर WeaveConnection ऑब्जेक्ट बन जाता है, तो उसके पॉइंटर को दिखाता है. अगर नहीं बनता है, तो NULL दिखाता है.

NewConnectionTunnel

WeaveConnectionTunnel * NewConnectionTunnel(
  void
)

पूल से नया WeaveConnectionTunnel ऑब्जेक्ट बनाएं.

विवरण
लौटाए जाने वाले प्रॉडक्ट
अगर WeaveConnectionTunnel ऑब्जेक्ट बन जाता है, तो उसके पॉइंटर का रेफ़रंस. अगर ऑब्जेक्ट नहीं बनता है, तो NULL.

ReEncodeMessage

WEAVE_ERROR ReEncodeMessage(
  PacketBuffer *buf
)

RefreshEndpoints

WEAVE_ERROR RefreshEndpoints(
  void
)

सिस्टम के नेटवर्क इंटरफ़ेस की मौजूदा स्थिति के आधार पर, InetLayer एंडपॉइंट रीफ़्रेश करें.

विवरण
रिटर्न वैल्यू
WEAVE_NO_ERROR
एंडपॉइंट रीफ़्रेश होने पर.
InetLayer
टीसीपी/यूडीपी एंडपॉइंट बनाने के लिए कॉल के आधार पर गड़बड़ियां.

ResendMessage

WEAVE_ERROR ResendMessage(
  WeaveMessageInfo *msgInfo,
  PacketBuffer *msgBuf
)

Inetlayer यूडीपी एंडपॉइंट का इस्तेमाल करके, कोड में बदले गए Weave मैसेज को फिर से भेजें.

विवरण
पैरामीटर
[in] msgInfo
WeaveMessageInfo ऑब्जेक्ट का पॉइंटर.
[in] payload
एन्क्रिप्ट (सुरक्षित) किए गए Weave मैसेज को होल्ड करने वाले PacketBuffer ऑब्जेक्ट का पॉइंटर.
रिटर्न वैल्यू
WEAVE_NO_ERROR
को ट्रिगर करता है.
errors
भेजने के दौरान, लोअर इनेट लेयर यूडीपी एंडपॉइंट से जनरेट किया जाता है.

ResendMessage

WEAVE_ERROR ResendMessage(
  const IPAddress & destAddr,
  WeaveMessageInfo *msgInfo,
  PacketBuffer *msgBuf
)

पहले से मौजूद Inetlayer यूडीपी एंडपॉइंट का इस्तेमाल करके, कोड में बदला गया Weave मैसेज फिर से भेजें.

विवरण
पैरामीटर
[in] destAddr
डेस्टिनेशन आईपी पता.
[in] msgInfo
WeaveMessageInfo ऑब्जेक्ट का पॉइंटर.
[in] payload
एन्क्रिप्ट (सुरक्षित) किए गए Weave मैसेज को होल्ड करने वाले PacketBuffer ऑब्जेक्ट का पॉइंटर.
रिटर्न वैल्यू
WEAVE_NO_ERROR
को ट्रिगर करता है.
errors
भेजने के दौरान, लोअर इनेट लेयर यूडीपी एंडपॉइंट से जनरेट किया जाता है.

ResendMessage

WEAVE_ERROR ResendMessage(
  const IPAddress & destAddr,
  uint16_t destPort,
  WeaveMessageInfo *msgInfo,
  PacketBuffer *msgBuf
)

Inetlayer यूडीपी एंडपॉइंट का इस्तेमाल करके, कोड में बदले गए Weave मैसेज को फिर से भेजें.

विवरण
पैरामीटर
[in] destAddr
डेस्टिनेशन आईपी पता.
[in] destPort
डेस्टिनेशन पोर्ट.
[in] msgInfo
WeaveMessageInfo ऑब्जेक्ट का पॉइंटर.
[in] payload
एन्क्रिप्ट (सुरक्षित) किए गए Weave मैसेज को होल्ड करने वाले PacketBuffer ऑब्जेक्ट का पॉइंटर.
रिटर्न वैल्यू
WEAVE_NO_ERROR
को ट्रिगर करता है.
errors
भेजने के दौरान, लोअर इनेट लेयर यूडीपी एंडपॉइंट से जनरेट किया जाता है.

ResendMessage

WEAVE_ERROR ResendMessage(
  const IPAddress & destAddr,
  uint16_t destPort,
  InterfaceId interfaceId,
  WeaveMessageInfo *msgInfo,
  PacketBuffer *msgBuf
)

Inetlayer यूडीपी एंडपॉइंट का इस्तेमाल करके, कोड में बदले गए Weave मैसेज को फिर से भेजें.

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

विवरण
पैरामीटर
[in] aDestAddr
डेस्टिनेशन आईपी पता.
[in] destPort
डेस्टिनेशन पोर्ट.
[in] interfaceId
वह इंटरफ़ेस जिस पर Weave मैसेज भेजना है.
[in] msgInfo
WeaveMessageInfo ऑब्जेक्ट का पॉइंटर.
[in] payload
एन्क्रिप्ट (सुरक्षित) किए गए Weave मैसेज को होल्ड करने वाले PacketBuffer ऑब्जेक्ट का पॉइंटर.
रिटर्न वैल्यू
WEAVE_NO_ERROR
को ट्रिगर करता है.
errors
भेजने के दौरान, लोअर इनेट लेयर यूडीपी एंडपॉइंट से जनरेट किया जाता है.

SendMessage

WEAVE_ERROR SendMessage(
  WeaveMessageInfo *msgInfo,
  PacketBuffer *msgBuf
)

इसे कोड में बदलने के बाद, Inetlayer UDP एंडपॉइंट का इस्तेमाल करके Weave मैसेज भेजें.

विवरण
पैरामीटर
[in] msgInfo
WeaveMessageInfo ऑब्जेक्ट का पॉइंटर, जिसमें भेजे जाने वाले मैसेज के बारे में जानकारी होती है.
[in] payload
एन्क्रिप्ट (सुरक्षित) किए गए Weave मैसेज को होल्ड करने वाले PacketBuffer ऑब्जेक्ट का पॉइंटर.
रिटर्न वैल्यू
WEAVE_NO_ERROR
को ट्रिगर करता है.
errors
भेजने के दौरान, लोअर इनेट लेयर यूडीपी एंडपॉइंट से जनरेट किया जाता है.

SendMessage

WEAVE_ERROR SendMessage(
  const IPAddress & destAddr,
  WeaveMessageInfo *msgInfo,
  PacketBuffer *msgBuf
)

एन्क्रिप्ट करने के बाद, Inetlayer यूडीपी एंडपॉइंट का इस्तेमाल करके Weave मैसेज भेजें.

ध्यान दें:-इस्तेमाल किया गया डेस्टिनेशन पोर्ट WEAVE_PORT है. -अगर डेस्टिनेशन पता नहीं दिया गया है, तो मैसेज हेडर में मौजूद नोड आइडेंटिफ़ायर से पता लगाने की कोशिश करें. अगर ऐसा नहीं किया जा सकता, तो गड़बड़ी का मैसेज दिखाएं.

-अगर डेस्टिनेशन पता, लोकल फ़ैब्रिक के लिए फ़ैब्रिक पता है और कॉलर ने डेस्टिनेशन नोड आईडी नहीं बताया है, तो उसे डेस्टिनेशन पते से निकालें.

विवरण
पैरामीटर
[in] destAddr
डेस्टिनेशन का आईपी पता.
[in] msgInfo
WeaveMessageInfo ऑब्जेक्ट का पॉइंटर, जिसमें भेजे जाने वाले मैसेज की जानकारी होती है.
[in] payload
कोड में बदले गए Weave मैसेज को पकड़े हुए, PacketBuffer ऑब्जेक्ट की ओर पॉइंटर.
रिटर्न वैल्यू
WEAVE_NO_ERROR
को ट्रिगर करता है.
errors
भेजने के दौरान, लोअर इनेट लेयर यूडीपी एंडपॉइंट से जनरेट किया जाता है.

SendMessage

WEAVE_ERROR SendMessage(
  const IPAddress & destAddr,
  uint16_t destPort,
  InterfaceId sendIntfId,
  WeaveMessageInfo *msgInfo,
  PacketBuffer *msgBuf
)

एन्क्रिप्ट करने के बाद, Inetlayer यूडीपी एंडपॉइंट का इस्तेमाल करके Weave मैसेज भेजें.

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

विवरण
पैरामीटर
[in] aDestAddr
डेस्टिनेशन आईपी पता.
[in] destPort
डेस्टिनेशन पोर्ट.
[in] sendIntfId
वह इंटरफ़ेस जिस पर Weave मैसेज भेजना है.
[in] msgInfo
WeaveMessageInfo ऑब्जेक्ट का पॉइंटर, जिसमें भेजे जाने वाले मैसेज की जानकारी होती है.
[in] payload
एन्क्रिप्ट (सुरक्षित) किए गए Weave मैसेज को होल्ड करने वाले PacketBuffer ऑब्जेक्ट का पॉइंटर.
रिटर्न वैल्यू
WEAVE_NO_ERROR
को ट्रिगर करता है.
WEAVE_ERROR_INVALID_ADDRESS
अगर destAddr की जानकारी नहीं दी गई है या डेस्टिनेशन नोड आईडी से यह पता नहीं लगाया जा सकता.
errors
भेजने के दौरान, लोअर इनेट लेयर यूडीपी एंडपॉइंट से जनरेट किया जाता है.

SendUDPTunneledMessage

WEAVE_ERROR SendUDPTunneledMessage(
  const IPAddress & destAddr,
  WeaveMessageInfo *msgInfo,
  PacketBuffer *msgBuf
)

लोकल UDP टनल पर, टनल किए गए पैकेट को भेजने के लिए फ़ंक्शन.

यूडीपी के ज़रिए, टनल किया गया आईपीवी6 डेटा मैसेज भेजना.

विवरण
पैरामीटर
[in] msgInfo
WeaveMessageInfo ऑब्जेक्ट का पॉइंटर.
[in] destAddr
यूडीपी टनल डेस्टिनेशन का आईपी पता.
[in] msgBuf
PacketBuffer ऑब्जेक्ट का पॉइंटर, जिसमें भेजने के लिए पैकेट मौजूद होता है.
रिटर्न वैल्यू
WEAVE_NO_ERROR
को ट्रिगर करता है.
WEAVE_ERROR_INVALID_ADDRESS
अगर destAddr की जानकारी नहीं दी गई है या डेस्टिनेशन नोड आईडी से यह पता नहीं लगाया जा सकता.
errors
भेजने के दौरान, लोअर इनेट लेयर यूडीपी एंडपॉइंट से जनरेट किया जाता है.

SetSignalMessageLayerActivityChanged

void SetSignalMessageLayerActivityChanged(
  MessageLayerActivityChangeHandlerFunct messageLayerActivityChangeHandler
)

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

खास तौर पर, ऐप्लिकेशन को हर बार सूचना दी जाएगी:

  • खुले हुए एक्सचेंज की संख्या बदल जाती है.
  • लंबित संदेश काउंटर समन्वयन अनुरोधों की संख्या शून्य से कम से कम एक और वापस शून्य से बदल जाती है. हैंडलर को सामान्य सिग्नल के तौर पर दिखाया जाता है. इससे पता चलता है कि कोई Weave बातचीत चल रही है या कोई जवाब बाकी है. WeaveMessageLayer को शुरू करने के बाद, हैंडलर सेट किया जाना चाहिए. WeaveMessageLayer को बंद करने पर, मौजूदा हैंडलर हट जाएगा.

विवरण
पैरामीटर
[in] messageLayerActivityChangeHandler
मैसेज लेयर की गतिविधि में बदलाव होने पर, फ़ंक्शन का पॉइंटर.
रिटर्न वैल्यू
None.

SetTCPListenEnabled

void SetTCPListenEnabled(
  bool val
)

WeaveMessageLayer में, इनबाउंड टीसीपी कनेक्शन के लिए सुनने की सुविधा को चालू या बंद करें.

ध्यान दें: टीसीपी सुनने की स्थिति बदलने के बाद, RefreshEndpoints() को कॉल किया जाना चाहिए.

SetUDPListenEnabled

void SetUDPListenEnabled(
  bool val
)

WeaveMessageLayer में, इनबाउंड यूडीपी मैसेज के लिए सुनने की सुविधा को चालू या बंद करें.

ध्यान दें: यूडीपी सुनने की स्थिति बदलने के बाद, RefreshEndpoints() को कॉल किया जाना चाहिए.

SetUnsecuredConnectionListener

WEAVE_ERROR SetUnsecuredConnectionListener(
  ConnectionReceiveFunct newOnUnsecuredConnectionReceived,
  CallbackRemovedFunct newOnUnsecuredConnectionCallbacksRemoved,
  bool force,
  void *listenerState
)

बंद करें

WEAVE_ERROR Shutdown(
  void
)

WeaveMessageLayer को बंद करें.

सभी खुले Inet लेयर एंडपॉइंट बंद करें, सभी हायर लेयर कॉलबैक, मेंबर वैरिएबल, और ऑब्जेक्ट रीसेट करें. शटडाउन() को करने पर, WeaveMessageLayer ऑब्जेक्ट को बंद किया जाता है.

TCPListenEnabled

bool TCPListenEnabled(
  void
) const 

देखें कि WeaveMessageLayer को इनबाउंड टीसीपी कनेक्शन सुनने के लिए कॉन्फ़िगर किया गया है या नहीं.

UDPListenEnabled

bool UDPListenEnabled(
  void
) const 

देखें कि WeaveMessageLayer को इनबाउंड यूडीपी मैसेज सुनने के लिए कॉन्फ़िगर किया गया है या नहीं.

UnsecuredListenEnabled

bool UnsecuredListenEnabled(
  void
) const 

कुछ समय के लिए इस्तेमाल होने वाले यूडीपी सोर्स पोर्ट से, Weave यूडीपी एक्सचेंज शुरू करने की सुविधा चालू या बंद करें.

ध्यान दें: कुछ समय के लिए उपलब्ध पोर्ट की स्थिति बदलने के बाद, RefreshEndpoints() को कॉल किया जाना चाहिए. देखें कि असुरक्षित तरीके से गाने सुनने की सुविधा चालू है या नहीं.

WeaveMessageLayer

 WeaveMessageLayer(
  void
)

Weave Message लेयर कंस्ट्रक्टर.

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

GetMaxWeavePayloadSize

uint32_t GetMaxWeavePayloadSize(
  const PacketBuffer *msgBuf,
  bool isUDP,
  uint32_t udpMTU
)

मैसेज कॉन्फ़िगरेशन और दिए गए PacketBuffer के लिए, ज़्यादा से ज़्यादा Weave पेलोड साइज़ पाएं.

लौटाया गया ज़्यादा से ज़्यादा पेलोड साइज़, दिए गए PacketBuffer में पेलोड के लिए उपलब्ध जगह से ज़्यादा नहीं होगा.

अगर मैसेज UDP है, तो दिखाया गया ज़्यादा से ज़्यादा पेलोड साइज़, Weave मैसेज में नहीं दिखेगा. इससे, तय किए गए UDP MTU में कोई बदलाव नहीं होगा.

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

विवरण
पैरामीटर
[in] msgBuf
PacketBuffer का पॉइंटर, जिसमें मैसेज का पेलोड लिखा जाएगा.
[in] isUDP
अगर मैसेज यूडीपी मैसेज है, तो True.
[in] udpMTU
UDP MTU का साइज़. अगर isUDP की वैल्यू गलत है, तो इसे अनदेखा कर दिया जाता है.
लौटाए जाने वाले प्रॉडक्ट
वीव पेलोड का ज़्यादा से ज़्यादा साइज़.

GetPeerDescription

void GetPeerDescription(
  char *buf,
  size_t bufSize,
  uint64_t nodeId,
  const IPAddress *addr,
  uint16_t port,
  InterfaceId interfaceId,
  const WeaveConnection *con
)

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

जनरेट की गई स्ट्रिंग का फ़ॉर्मैट यह है:

 ([]:%, con )

विवरण
पैरामीटर
[in] buf
उस बफ़र का पॉइंटर जिसमें स्ट्रिंग लिखी जानी है. दिया गया बफ़र, कम से कम kWeavePeerDescription_MaxLength जितना बड़ा होना चाहिए. अगर छोटा बफ़र दिया जाता है, तो स्ट्रिंग को फ़िट करने के लिए काट दिया जाएगा. सभी मामलों में, आउटपुट में NUL खत्म करने वाला वर्ण शामिल होगा.
[in] bufSize
बफ़र का साइज़, जिसे बफ़ से दिखाया गया है.
[in] nodeId
प्रिंट किया जाने वाला नोड आईडी.
[in] addr
किसी आईपी पते को प्रिंट किए जाने का पॉइंटर; या अगर कोई आईपी पता प्रिंट नहीं किया जाना चाहिए, तो यह शून्य हो सकता है.
[in] port
प्रिंट किया जाने वाला आईपी पोर्ट नंबर. अगर addr शून्य है, तो कोई पोर्ट नंबर नहीं छपेगा.
[in] interfaceId
प्रिंट किए जाने वाले इंटरफ़ेस की पहचान करने वाला InterfaceId. आउटपुट स्ट्रिंग में, इंटरफ़ेस का वह नाम होगा जो नेटवर्क स्टैक के लिए इस्तेमाल किया जाता है. अगर interfaceId, INET_NULL_INTERFACEID है या addr NULL है, तो कोई इंटरफ़ेस नाम नहीं दिखेगा.
[in] con
WeaveConnection ऑब्जेक्ट का पॉइंटर, जिसका लॉगिंग आईडी प्रिंट किया जाना चाहिए. अगर कोई कनेक्शन आईडी प्रिंट नहीं किया जाना चाहिए, तो NULL.

GetPeerDescription

void GetPeerDescription(
  char *buf,
  size_t bufSize,
  const WeaveMessageInfo *msgInfo
)

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

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