nl:: Weave:: WeaveMessageLayer
#include <src/lib/core/WeaveMessageLayer.h>
WeaveMessageLayer क्लास की परिभाषा, जो अन्य Weave नोड के साथ कम्यूनिकेशन मैनेज करती है.
खास जानकारी
यह अन्य Weave नोड के साथ कम्यूनिकेशन चैनल बनाने के लिए, InetLayer के कई एंडपॉइंट में से किसी एक का इस्तेमाल करता है.
कंस्ट्रक्टर और डिस्ट्रक्टर |
|
---|---|
WeaveMessageLayer(void)
Weave मैसेज लेयर कन्स्ट्रक्टर.
|
सार्वजनिक टाइप |
|
---|---|
AcceptErrorFunct)(WeaveMessageLayer *msgLayer, WEAVE_ERROR err)
|
typedefvoid(*
यह फ़ंक्शन, आने वाले टीसीपी कनेक्शन को मैनेज करने के दौरान गड़बड़ी की शिकायत करने के लिए, हायर लेयर कॉलबैक है. |
CallbackRemovedFunct)(void *listenerState)
|
typedefvoid(*
इस फ़ंक्शन को कॉलबैक हटाने के लिए इस्तेमाल किया जाता है. |
ConnectionReceiveFunct)(WeaveMessageLayer *msgLayer, WeaveConnection *con)
|
typedefvoid(*
यह फ़ंक्शन, आने वाले टीसीपी कनेक्शन को मैनेज करने के लिए, हायर लेयर कॉलबैक है. |
MessageLayerActivityChangeHandlerFunct)(bool messageLayerIsActive)
|
typedefvoid(*
यह फ़ंक्शन, मैसेज लेयर गतिविधि में हुए बदलाव की रिपोर्टिंग के लिए ऐप्लिकेशन कॉलबैक है. |
MessageReceiveFunct)(WeaveMessageLayer *msgLayer, WeaveMessageInfo *msgInfo, PacketBuffer *payload)
|
typedefvoid(*
यह फ़ंक्शन ऊपरी लेयर कॉलबैक है, जिसे यूडीपी पर Weave मैसेज मिलने पर शुरू किया जाता है. |
ReceiveErrorFunct)(WeaveMessageLayer *msgLayer, WEAVE_ERROR err, const IPPacketInfo *pktInfo)
|
typedefvoid(*
यह फ़ंक्शन, गड़बड़ी होने पर ट्रिगर होने वाला, ऊपरी लेयर का कॉलबैक है. |
State{
|
enum WeaveMessageLayer की स्थिति. |
TunneledMsgReceiveFunct)(WeaveMessageLayer *msgLayer, PacketBuffer *payload)
|
typedefvoid(*
यह फ़ंक्शन, उच्च लेयर का कॉलबैक है. इसे लोकल 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:: |
InitContext क्लास की परिभाषा. |
सार्वजनिक प्रकार
AcceptErrorFunct
void(* AcceptErrorFunct)(WeaveMessageLayer *msgLayer, WEAVE_ERROR err)
यह फ़ंक्शन, आने वाले टीसीपी कनेक्शन को मैनेज करने के दौरान गड़बड़ी की शिकायत करने के लिए, हायर लेयर कॉलबैक है.
विवरण | |||||
---|---|---|---|---|---|
पैरामीटर |
|
CallbackRemovedFunct
void(* CallbackRemovedFunct)(void *listenerState)
इस फ़ंक्शन को कॉलबैक हटाने के लिए इस्तेमाल किया जाता है.
विवरण | |||
---|---|---|---|
पैरामीटर |
|
ConnectionReceiveFunct
void(* ConnectionReceiveFunct)(WeaveMessageLayer *msgLayer, WeaveConnection *con)
यह फ़ंक्शन, आने वाले टीसीपी कनेक्शन को मैनेज करने के लिए, हायर लेयर कॉलबैक है.
विवरण | |||||
---|---|---|---|---|---|
पैरामीटर |
|
MessageLayerActivityChangeHandlerFunct
void(* MessageLayerActivityChangeHandlerFunct)(bool messageLayerIsActive)
यह फ़ंक्शन, मैसेज लेयर गतिविधि में हुए बदलाव की रिपोर्टिंग के लिए ऐप्लिकेशन कॉलबैक है.
मैसेज लेयर को तब ही ऐक्टिव माना जाता है, जब कम से कम एक एक्सचेंज खुला हो या मैसेज काउंटर सिंक करने का अनुरोध बाकी हो.
विवरण | |||
---|---|---|---|
पैरामीटर |
|
MessageReceiveFunct
void(* MessageReceiveFunct)(WeaveMessageLayer *msgLayer, WeaveMessageInfo *msgInfo, PacketBuffer *payload)
यह फ़ंक्शन, UDP पर Weave मैसेज मिलने पर, हाई लेयर कॉलबैक के तौर पर काम करता है.
विवरण | |||||||
---|---|---|---|---|---|---|---|
पैरामीटर |
|
ReceiveErrorFunct
void(* ReceiveErrorFunct)(WeaveMessageLayer *msgLayer, WEAVE_ERROR err, const IPPacketInfo *pktInfo)
यह फ़ंक्शन, हाई लेयर कॉलबैक है और कोई गड़बड़ी मिलने पर शुरू होता है.
विवरण | |||||||
---|---|---|---|---|---|---|---|
पैरामीटर |
|
स्थिति
State
WeaveMessageLayer की स्थिति.
प्रॉपर्टी | |
---|---|
kState_Initialized
|
यह बताएं कि WeaveMessageLayer को कब शुरू किया गया. |
kState_Initializing
|
WeaveMessageLayer को शुरू करने की प्रोसेस के दौरान स्टेटस. |
kState_NotInitialized
|
वह स्थिति बताएं जब WeaveMessageLayer शुरू नहीं किया गया. |
TunneledMsgReceiveFunct
void(* TunneledMsgReceiveFunct)(WeaveMessageLayer *msgLayer, PacketBuffer *payload)
यह फ़ंक्शन, ऊपरी लेयर कॉलबैक है और इसका इस्तेमाल, लोकल यूडीपी टनल पर टनल किया गया पैकेट मिलने पर किया जाता है.
विवरण | |||||
---|---|---|---|---|---|
पैरामीटर |
|
सार्वजनिक एट्रिब्यूट
AppState
void * AppState
ऐप्लिकेशन के हिसाब से स्टेटस ऑब्जेक्ट का पॉइंटर.
ExchangeMgr
WeaveExchangeManager * ExchangeMgr
[सिर्फ़ पढ़ने के लिए] इससे जुड़ा WeaveExchangeManager ऑब्जेक्ट.
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
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 बंद हो जाते हैं.
विवरण | |||||||||
---|---|---|---|---|---|---|---|---|---|
पैरामीटर |
|
||||||||
रिटर्न वैल्यू |
|
DecodeHeader
WEAVE_ERROR DecodeHeader( PacketBuffer *msgBuf, WeaveMessageInfo *msgInfo, uint8_t **payloadStart )
मिले हुए Weave मैसेज से, Weave मैसेज लेयर हेडर को डिकोड करना.
विवरण | |||||||
---|---|---|---|---|---|---|---|
पैरामीटर |
|
||||||
रिटर्न वैल्यू |
|
EncodeMessage
WEAVE_ERROR EncodeMessage( WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf, WeaveConnection *con, uint16_t maxLen, uint16_t reserve )
WeaveMessageLayer हेडर को PacketBuffer में एन्कोड करें.
विवरण | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
पैरामीटर |
|
||||||||||||||
रिटर्न वैल्यू |
|
EncodeMessage
WEAVE_ERROR EncodeMessage( const IPAddress & destAddr, uint16_t destPort, InterfaceId sendIntId, WeaveMessageInfo *msgInfo, PacketBuffer *payload )
Weave मैसेज लेयर हेडर को PacketBuffer में एन्कोड करें.
विवरण | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
पैरामीटर |
|
||||||||||||||
रिटर्न वैल्यू |
|
EphemeralUDPPortEnabled
bool EphemeralUDPPortEnabled( void ) const
देखें कि स्थानीय तौर पर शुरू किए गए Weave यूडीपी एक्सचेंज, इफ़ेमरल यूडीपी सोर्स पोर्ट से भेजे जाने चाहिए या नहीं.
GetConnectionPoolStats
void GetConnectionPoolStats( nl::Weave::System::Stats::count_t & aOutInUse ) const
इस्तेमाल किए जा रहे WeaveConnections की संख्या और पूल के साइज़ की जानकारी पाएं.
विवरण | |||
---|---|---|---|
पैरामीटर |
|
IPv4ListenEnabled
bool IPv4ListenEnabled( void ) const
देखें कि WeaveMessageLayer को आईपीवी4 पर इनबाउंड कम्यूनिकेशन सुनने के लिए कॉन्फ़िगर किया गया है या नहीं.
IPv6ListenEnabled
bool IPv6ListenEnabled( void ) const
देखें कि WeaveMessageLayer को IPv4 पर इनबाउंड कम्यूनिकेशन को सुनने के लिए कॉन्फ़िगर किया गया है या नहीं.
Init
WEAVE_ERROR Init( InitContext *context )
Weave मैसेज लेयर ऑब्जेक्ट को शुरू करें.
विवरण | |||||||||
---|---|---|---|---|---|---|---|---|---|
पैरामीटर |
|
||||||||
रिटर्न वैल्यू |
|
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 एंडपॉइंट रीफ़्रेश करें.
विवरण | |||||
---|---|---|---|---|---|
रिटर्न वैल्यू |
|
ResendMessage
WEAVE_ERROR ResendMessage( WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf )
Inetlayer यूडीपी एंडपॉइंट का इस्तेमाल करके, कोड में बदले गए Weave मैसेज को फिर से भेजें.
विवरण | |||||
---|---|---|---|---|---|
पैरामीटर |
|
||||
रिटर्न वैल्यू |
|
ResendMessage
WEAVE_ERROR ResendMessage( const IPAddress & destAddr, WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf )
पहले से मौजूद Inetlayer यूडीपी एंडपॉइंट का इस्तेमाल करके, कोड में बदला गया Weave मैसेज फिर से भेजें.
विवरण | |||||||
---|---|---|---|---|---|---|---|
पैरामीटर |
|
||||||
रिटर्न वैल्यू |
|
ResendMessage
WEAVE_ERROR ResendMessage( const IPAddress & destAddr, uint16_t destPort, WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf )
Inetlayer यूडीपी एंडपॉइंट का इस्तेमाल करके, कोड में बदले गए Weave मैसेज को फिर से भेजें.
विवरण | |||||||||
---|---|---|---|---|---|---|---|---|---|
पैरामीटर |
|
||||||||
रिटर्न वैल्यू |
|
ResendMessage
WEAVE_ERROR ResendMessage( const IPAddress & destAddr, uint16_t destPort, InterfaceId interfaceId, WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf )
Inetlayer यूडीपी एंडपॉइंट का इस्तेमाल करके, कोड में बदले गए Weave मैसेज को फिर से भेजें.
ध्यान दें:-अगर डेस्टिनेशन पता नहीं दिया गया है, तो मैसेज हेडर में नोड आइडेंटिफ़ायर से इसे तय करने की कोशिश करें. अगर ऐसा नहीं किया जा सकता, तो गड़बड़ी का मैसेज दिखाएं. -अगर डेस्टिनेशन पता, लोकल फ़ैब्रिक के लिए फ़ैब्रिक पता है और कॉलर ने डेस्टिनेशन नोड आईडी नहीं बताया है, तो उसे डेस्टिनेशन पते से निकालें.
विवरण | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
पैरामीटर |
|
||||||||||
रिटर्न वैल्यू |
|
SendMessage
WEAVE_ERROR SendMessage( WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf )
इसे कोड में बदलने के बाद, Inetlayer UDP एंडपॉइंट का इस्तेमाल करके Weave मैसेज भेजें.
विवरण | |||||
---|---|---|---|---|---|
पैरामीटर |
|
||||
रिटर्न वैल्यू |
|
SendMessage
WEAVE_ERROR SendMessage( const IPAddress & destAddr, WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf )
एन्क्रिप्ट करने के बाद, Inetlayer यूडीपी एंडपॉइंट का इस्तेमाल करके Weave मैसेज भेजें.
ध्यान दें:-इस्तेमाल किया गया डेस्टिनेशन पोर्ट WEAVE_PORT है. -अगर डेस्टिनेशन पता नहीं दिया गया है, तो मैसेज हेडर में मौजूद नोड आइडेंटिफ़ायर से पता लगाने की कोशिश करें. अगर ऐसा नहीं किया जा सकता, तो गड़बड़ी का मैसेज दिखाएं.
-अगर डेस्टिनेशन पता, लोकल फ़ैब्रिक के लिए फ़ैब्रिक पता है और कॉलर ने डेस्टिनेशन नोड आईडी नहीं बताया है, तो उसे डेस्टिनेशन पते से निकालें.
विवरण | |||||||
---|---|---|---|---|---|---|---|
पैरामीटर |
|
||||||
रिटर्न वैल्यू |
|
SendMessage
WEAVE_ERROR SendMessage( const IPAddress & destAddr, uint16_t destPort, InterfaceId sendIntfId, WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf )
एन्क्रिप्ट करने के बाद, Inetlayer यूडीपी एंडपॉइंट का इस्तेमाल करके Weave मैसेज भेजें.
ध्यान दें:-अगर डेस्टिनेशन पता नहीं दिया गया है, तो मैसेज हेडर में मौजूद नोड आइडेंटिफ़ायर से इसे पता लगाने की कोशिश करें. अगर ऐसा नहीं किया जा सकता, तो गड़बड़ी का मैसेज दिखाएं. -अगर डेस्टिनेशन पता, लोकल फ़ैब्रिक के लिए फ़ैब्रिक पता है और कॉलर ने डेस्टिनेशन नोड आईडी नहीं बताया है, तो उसे डेस्टिनेशन पते से निकालें.
विवरण | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
पैरामीटर |
|
||||||||||
रिटर्न वैल्यू |
|
SendUDPTunneledMessage
WEAVE_ERROR SendUDPTunneledMessage( const IPAddress & destAddr, WeaveMessageInfo *msgInfo, PacketBuffer *msgBuf )
लोकल UDP टनल पर, टनल किए गए पैकेट को भेजने के लिए फ़ंक्शन.
यूडीपी के ज़रिए, टनल किया गया आईपीवी6 डेटा मैसेज भेजना.
विवरण | |||||||
---|---|---|---|---|---|---|---|
पैरामीटर |
|
||||||
रिटर्न वैल्यू |
|
SetSignalMessageLayerActivityChanged
void SetSignalMessageLayerActivityChanged( MessageLayerActivityChangeHandlerFunct messageLayerActivityChangeHandler )
एक ऐसा ऐप्लिकेशन हैंडलर सेट करें जिसे हर बार मैसेज लेयर की गतिविधि में बदलाव होने पर कॉल किया जाएगा.
खास तौर पर, ऐप्लिकेशन को हर बार सूचना दी जाएगी:
- खुले हुए एक्सचेंज की संख्या बदल जाती है.
- लंबित संदेश काउंटर समन्वयन अनुरोधों की संख्या शून्य से कम से कम एक और वापस शून्य से बदल जाती है. हैंडलर को सामान्य सिग्नल के तौर पर दिखाया जाता है. इससे पता चलता है कि कोई Weave बातचीत चल रही है या कोई जवाब बाकी है. WeaveMessageLayer को शुरू करने के बाद, हैंडलर सेट किया जाना चाहिए. WeaveMessageLayer को बंद करने पर, मौजूदा हैंडलर हट जाएगा.
विवरण | |||
---|---|---|---|
पैरामीटर |
|
||
रिटर्न वैल्यू |
|
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 मैसेज आकार से ज़्यादा हो जाएगा.
विवरण | |||||||
---|---|---|---|---|---|---|---|
पैरामीटर |
|
||||||
लौटाए जाने वाले प्रॉडक्ट |
वीव पेलोड का ज़्यादा से ज़्यादा साइज़.
|
GetPeerDescription
void GetPeerDescription( char *buf, size_t bufSize, uint64_t nodeId, const IPAddress *addr, uint16_t port, InterfaceId interfaceId, const WeaveConnection *con )
यह किसी पीयर नोड और उससे जुड़े पते / कनेक्शन की जानकारी देने वाली स्ट्रिंग बनाता है.
जनरेट की गई स्ट्रिंग का फ़ॉर्मैट यह है:
([ ]: % , con )
विवरण | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
पैरामीटर |
|
GetPeerDescription
void GetPeerDescription( char *buf, size_t bufSize, const WeaveMessageInfo *msgInfo )
पीयर से मिले मैसेज से जुड़ी जानकारी के आधार पर, पीयर नोड का ब्यौरा देने वाली स्ट्रिंग बनाता है.
विवरण | |||||||
---|---|---|---|---|---|---|---|
पैरामीटर |
|