nl::Weave::WeaveMessageLayer

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

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

खास जानकारी

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

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

WeaveMessageLayer(void)
Weave Message लेयर कंस्ट्रक्टर.

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

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(*
यह फ़ंक्शन, हाई लेयर कॉलबैक है. इसे लोकल यूडीपी टनल के ऊपर टनल किया गया पैकेट मिलने पर शुरू किया जाता है.

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

AppState
void *
किसी ऐप्लिकेशन के लिए खास तौर पर सेट किए गए स्टेट ऑब्जेक्ट का पॉइंटर.
ExchangeMgr
[सिर्फ़ पढ़ने के लिए] इससे जुड़ा WeaveExchangeManager ऑब्जेक्ट.
FabricState
[रीड ओनली] इससे जुड़ा WeaveFabricState ऑब्जेक्ट.
IncomingConIdleTimeout
uint32_t
इनकमिंग कनेक्शन के लिए, डिवाइस इस्तेमाल न होने पर टाइम आउट (मिलीसेकंड में).
Inet
InetLayer *
[सिर्फ़ पढ़ने के लिए] जुड़ा हुआ Inetlayer ऑब्जेक्ट.
IsListening
bool
[सिर्फ़ पढ़ने के लिए] आने वाले कनेक्शन/मैसेज को सुनने पर 'सही' है, नहीं तो 'गलत' है.
OnAcceptError
OnConnectionReceived
OnMessageReceived
OnReceiveError
OnUDPTunneledMessageReceived
SecurityMgr
[रीड ओनली] इससे जुड़ा WeaveSecurityManager ऑब्जेक्ट.
State
uint8_t
[रीड ओनली] 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 हेडर को पैकेटBuffer में कोड में बदलें.
EncodeMessage(const IPAddress & destAddr, uint16_t destPort, InterfaceId sendIntId, WeaveMessageInfo *msgInfo, PacketBuffer *payload)
एक Weave Message लेयर हेडर को एक पैकेटबफ़र में कोड में बदलें.
EphemeralUDPPortEnabled(void) const
bool
देखें कि स्थानीय तौर पर शुरू किए गए Weave UDP के एक्सचेंज को, कुछ समय के लिए इस्तेमाल होने वाले यूडीपी सोर्स पोर्ट से भेजा जाना चाहिए या नहीं.
GetConnectionPoolStats(nl::Weave::System::Stats::count_t & aOutInUse) const
void
इस्तेमाल किए जा रहे WeaveConnections की संख्या और पूल का साइज़ जानें.
IPv4ListenEnabled(void) const
bool
देखें कि WeaveMessageLayer को IPv4 पर इनबाउंड कम्यूनिकेशन को सुनने के लिए कॉन्फ़िगर किया गया है.
IPv6ListenEnabled(void) const
bool
देखें कि WeaveMessageLayer को IPv4 पर इनबाउंड कम्यूनिकेशन को सुनने के लिए कॉन्फ़िगर किया गया है.
Init(InitContext *context)
Weave Messages लेयर ऑब्जेक्ट को शुरू करें.
IsBoundToLocalIPv4Address(void) const
bool
देखें कि WeaveMessageLayer किसी लोकल आईपीवी4 पते से जुड़ी है या नहीं.
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)
स्थानीय यूडीपी टनल के ऊपर टनल वाला पैकेट भेजने का फ़ंक्शन.
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 UDP एक्सचेंज करने की सुविधा चालू या बंद करें.

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

GetMaxWeavePayloadSize(const PacketBuffer *msgBuf, bool isUDP, uint32_t udpMTU)
uint32_t
मैसेज कॉन्फ़िगरेशन और दिए गए पैकेटBuffer के लिए, 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)

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

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

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

इनकमिंग कनेक्शन के लिए, डिवाइस इस्तेमाल न होने पर टाइम आउट (मिलीसेकंड में).

इनेट

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

[रीड ओनली] WeaveMessageLayer ऑब्जेक्ट की स्थिति.

SystemLayer

System::Layer * SystemLayer

mDropMessage

bool mDropMessage

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

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

ClearUnsecuredConnectionListener

WEAVE_ERROR ClearUnsecuredConnectionListener(
  ConnectionReceiveFunct oldOnUnsecuredConnectionReceived,
  CallbackRemovedFunct newOnUnsecuredConnectionCallbacksRemoved
)

CloseEndpoints

WEAVE_ERROR CloseEndpoints(
  void
)

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

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

यह भी देखें:
शटडाउन().

CreateTunnel

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

दिए गए दो WeaveConnections को एक साथ जोड़कर एक WeaveConnectionTunnel बनाएं.

फ़ाइल बन जाने पर, WeaveConnection कॉम्पोनेंट से जुड़े टीसीपीएंडपॉइंट, 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 मैसेज को होल्ड करके रखे हुए, पैकेटबफ़र ऑब्जेक्ट की ओर पॉइंटर.
[in] msgInfo
WeaveMessageInfo ऑब्जेक्ट का पॉइंटर, जिसे मैसेज के बारे में जानकारी मिलेगी.
[out] payloadStart
डिकोड करने के बाद, मैसेज बफ़र में जगह के लिए पॉइंटर का पॉइंटर.
रिटर्न वैल्यू
WEAVE_NO_ERROR
मैसेज हेडर को डिकोड करने पर.
WEAVE_ERROR_INVALID_MESSAGE_LENGTH
अगर मैसेज बफ़र की संख्या अमान्य है.
WEAVE_ERROR_UNSUPPORTED_MESSAGE_VERSION
अगर Weave Messages हेडर फ़ॉर्मैट का वर्शन काम नहीं करता.

EncodeMessage

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

WeaveMessageLayer हेडर को पैकेटBuffer में कोड में बदलें.

जानकारी
पैरामीटर
[in] msgInfo
WeaveMessageInfo ऑब्जेक्ट का पॉइंटर, जिसमें कोड में बदले जाने वाले मैसेज के बारे में जानकारी होती है.
[in] msgBuf
पैकेटबफ़र ऑब्जेक्ट के लिए पॉइंटर की सुविधा, जिसमें Weave मैसेज रखा जाएगा.
[in] con
WeaveConnection ऑब्जेक्ट के लिए पॉइंटर.
[in] maxLen
कोड में बदले गए Weave मैसेज की ज़्यादा से ज़्यादा लंबाई.
[in] reserve
Weave मैसेज हेडर को होल्ड करने के लिए पेलोड से पहले की रिज़र्व जगह.
रिटर्न वैल्यू
WEAVE_NO_ERROR
को सही तरीके से कोड में बदलने के लिए किया जा सकता है.
WEAVE_ERROR_UNSUPPORTED_MESSAGE_VERSION
अगर Weave Messages हेडर फ़ॉर्मैट का वर्शन काम नहीं करता.
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 Message लेयर हेडर को एक पैकेटबफ़र में कोड में बदलें.

जानकारी
पैरामीटर
[in] destAddr
डेस्टिनेशन का आईपी पता.
[in] destPort
डेस्टिनेशन पोर्ट.
[in] sendIntId
वह इंटरफ़ेस जिस पर Weave मैसेज भेजना है.
[in] msgInfo
WeaveMessageInfo ऑब्जेक्ट के लिए पॉइंटर.
[in] payload
पैकेटबफ़र ऑब्जेक्ट के लिए पॉइंटर की सुविधा, जिसमें Weave मैसेज रखा जाएगा.
रिटर्न वैल्यू
WEAVE_NO_ERROR
सही तरीका बताया है.
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 UDP के एक्सचेंज को, कुछ समय के लिए इस्तेमाल होने वाले यूडीपी सोर्स पोर्ट से भेजा जाना चाहिए या नहीं.

GetConnectionPoolStats

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

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

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

IPv4ListenEnabled

bool IPv4ListenEnabled(
  void
) const 

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

IPv6ListenEnabled

bool IPv6ListenEnabled(
  void
) const 

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

शुरू करें

WEAVE_ERROR Init(
  InitContext *context
)

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

जानकारी
पैरामीटर
[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 किसी लोकल आईपीवी4 पते से जुड़ी है या नहीं.

IsBoundToLocalIPv6Address

bool IsBoundToLocalIPv6Address(
  void
) const 

देखें कि WeaveMessageLayer किसी लोकल आईपीवी6 पते से जुड़ी है या नहीं.

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 मैसेज को पकड़े हुए, पैकेटबफ़र ऑब्जेक्ट की ओर पॉइंटर.
रिटर्न वैल्यू
WEAVE_NO_ERROR
नेटवर्क लेयर पर सफलतापूर्वक संदेश भेजे जाने पर.
errors
भेजने के दौरान निचले Inet लेयर के यूडीपी एंडपॉइंट से जनरेट किया जाता है.

ResendMessage

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

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

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

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 मैसेज को पकड़े हुए, पैकेटबफ़र ऑब्जेक्ट की ओर पॉइंटर.
रिटर्न वैल्यू
WEAVE_NO_ERROR
नेटवर्क लेयर पर सफलतापूर्वक संदेश भेजे जाने पर.
errors
भेजने के दौरान निचले Inet लेयर के यूडीपी एंडपॉइंट से जनरेट किया जाता है.

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 मैसेज को पकड़े हुए, पैकेटबफ़र ऑब्जेक्ट की ओर पॉइंटर.
रिटर्न वैल्यू
WEAVE_NO_ERROR
नेटवर्क लेयर पर सफलतापूर्वक संदेश भेजे जाने पर.
errors
भेजने के दौरान निचले Inet लेयर के यूडीपी एंडपॉइंट से जनरेट किया जाता है.

SendMessage

WEAVE_ERROR SendMessage(
  WeaveMessageInfo *msgInfo,
  PacketBuffer *msgBuf
)

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

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

SendMessage

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

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

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

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

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

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 मैसेज को पकड़े हुए, पैकेटबफ़र ऑब्जेक्ट की ओर पॉइंटर.
रिटर्न वैल्यू
WEAVE_NO_ERROR
नेटवर्क लेयर पर सफलतापूर्वक संदेश भेजे जाने पर.
WEAVE_ERROR_INVALID_ADDRESS
अगर destAddr तय नहीं है या डेस्टिनेशन नोड आईडी से तय नहीं किया जा सकता है.
errors
भेजने के दौरान निचले Inet लेयर के यूडीपी एंडपॉइंट से जनरेट किया जाता है.

SendUDPTunneledMessage

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

स्थानीय यूडीपी टनल के ऊपर टनल वाला पैकेट भेजने का फ़ंक्शन.

यूडीपी पर, टनल किया गया IPv6 डेटा मैसेज भेजें.

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

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 UDP एक्सचेंज करने की सुविधा चालू या बंद करें.

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

WeaveMessageLayer

 WeaveMessageLayer(
  void
)

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

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

GetMaxWeavePayloadSize

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

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

पेलोड का ज़्यादा से ज़्यादा साइज़, दिए गए पैकेटBuffer के अंदर पेलोड के लिए उपलब्ध जगह से ज़्यादा नहीं होगा.

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

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

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

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
प्रिंट किया जाने वाला आईपी पोर्ट नंबर. अगर ऐडर NULL है, तो कोई भी पोर्ट नंबर प्रिंट नहीं किया जाएगा.
[in] interfaceId
प्रिंट किए जाने वाले इंटरफ़ेस की पहचान करने वाला InterfaceId. आउटपुट स्ट्रिंग में इंटरफ़ेस का नाम वही होगा जो मौजूदा नेटवर्क स्टैक के बारे में है. अगर इंटरफ़ेस आईडी INET_NULL_INTERFACEID है या एडर NULL है, तो कोई भी इंटरफ़ेस नाम प्रिंट नहीं किया जाएगा.
[in] con
उस WeaveConnection ऑब्जेक्ट का पॉइंटर जिसका लॉगिंग आईडी प्रिंट किया जाना चाहिए; या अगर कोई कनेक्शन आईडी प्रिंट नहीं किया जाना चाहिए, तो वैल्यू अमान्य है.

GetPeerDescription

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

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

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