nl:: Weave:: Profiles:: Echo_Next:: WeaveEchoServer
#include <src/lib/profiles/echo/Next/WeaveEchoServer.h>
Accepts EchoRequest messages from a peer node and responds with an EchoResponse message.
खास जानकारी
WeaveEchoServer क्लास, Weave Echo प्रोटोकॉल के रिस्पॉन्सर साइड को लागू करती है. आईसीएमपी पिंग प्रोटोकॉल की तरह ही, Weave Echo प्रोटोकॉल का इस्तेमाल, Weave नोड की लाइवनेस और रीचेबिलिटी की जांच करने के लिए किया जा सकता है.
आने वाले EchoRequest मैसेज के अपने-आप जवाब देने की सुविधा चालू करने के लिए, ऐप्लिकेशन WeaveEchoServer क्लास का इस्तेमाल कर सकते हैं. इको अनुरोध शुरू करने के लिए एक संबंधित क्लास मौजूद है (WeaveEchoClient देखें).
डिफ़ॉल्ट रूप से WeaveEchoServer, EchoRequest के जवाब के तुरंत जवाब देता है, जिसमें अनुरोध के पेलोड जैसा ही होता है. हालांकि, EchoRequestReceived API इवेंट की प्रोसेसिंग के दौरान ऐप्लिकेशन इस व्यवहार में बदलाव कर सकता है.
एपीआई इवेंट
इस कार्रवाई के दौरान, WeaveEchoServer ऑब्जेक्ट खास कार्रवाइयों का अनुरोध करने या अहम इवेंट की सूचनाएं डिलीवर करने के लिए, ऐप्लिकेशन को कॉल करेगा. ये एपीआई इवेंट कॉल, सर्वर ऑब्जेक्ट पर हाल ही में कॉन्फ़िगर किए गए कॉलबैक फ़ंक्शन में किए जाते हैं. यहां बताए गए मामलों को छोड़कर, किसी इवेंट कॉलबैक के दौरान, ऐप्लिकेशन सर्वर की स्थिति में बदलाव कर सकते हैं. ऑब्जेक्ट का शटडाउन() तरीका कुल मिलाकर एक अपवाद है. इसे कॉलबैक के दौरान कभी भी कॉल नहीं किया जा सकता.
एपीआई इवेंट के बारे में नीचे बताया गया है:
EchoRequestReceived
किसी सहकर्मी से EchoRequest मैसेज मिला. इवेंट के आर्ग्युमेंट में, अनुरोध पेलोड, मैसेज पाने वाले एक्सचेंज का कॉन्टेक्स्ट, और अनुरोध किए गए मैसेज की मेटा-जानकारी शामिल होती है.
अगर ऐप्लिकेशन चुनता है, तो वह इवेंट के आउटपुट आर्ग्युमेंट में बदलाव कर सकता है, ताकि जवाब देने में देरी हो सके या रिस्पॉन्स को पूरी तरह से रोका जा सके. इसके अलावा, यह पेलोड बफ़र की सामग्री में बदलाव कर सकता है, जो जवाब वाले मैसेज के लिए पेलोड बन जाएगा.
EchoResponseSent
EchoResponse संदेश भेजा गया था, या भेजा नहीं जा सका. इवेंट के लिए आर्ग्युमेंट में, मैसेज भेजने की वजह से हुई गड़बड़ी (अगर कोई है) और वह एक्सचेंज कॉन्टेक्स्ट होता है जिस पर मैसेज भेजा गया था.
इनहेरिटेंस
इनसे इनहेरिट किया जाता है: nl::Weave::WeaveServerBaseपहले से मालूम सब-क्लास: nl::Weave::DeviceLayer::Internal::EchoServer
कंस्ट्रक्टर और डिस्ट्रक्टर |
|
---|---|
WeaveEchoServer(void)
WeaveEchoServer के लिए डिफ़ॉल्ट कंस्ट्रक्टर.
|
सार्वजनिक प्रकार |
|
---|---|
EchoFunct)(uint64_t nodeId, IPAddress nodeAddr, PacketBuffer *payload)
|
टाइपडिफ़void(*
|
EventCallback)(void *appState, EventType eventType, const InEventParam &inParam, OutEventParam &outParam)
|
टाइपडिफ़void(*
|
EventType{
|
enum |
सार्वजनिक विशेषताएं |
|
---|---|
AppState
|
void *
ऐप्लिकेशन के लिए खास डेटा का पॉइंटर.
|
OnEchoRequestReceived
|
EchoFunct
|
सार्वजनिक फ़ंक्शन |
|
---|---|
GetEventCallback(void) const
|
EventCallback
एपीआई इवेंट के कॉलबैक फ़ंक्शन का पॉइंटर दिखाता है, जो फ़िलहाल WeaveEchoServer ऑब्जेक्ट पर कॉन्फ़िगर किया गया है.
|
Init(WeaveExchangeManager *exchangeMgr, EventCallback eventCallback, void *appState)
|
WeaveEchoServer ऑब्जेक्ट शुरू करें.
|
Init(WeaveExchangeManager *exchangeMgr)
|
WeaveEchoServer ऑब्जेक्ट शुरू करें.
|
SetEventCallback(EventCallback eventCallback)
|
void
यह WeaveEchoServer ऑब्जेक्ट पर, एपीआई इवेंट के कॉलबैक फ़ंक्शन को सेट करता है.
|
Shutdown(void)
|
पहले से शुरू किए गए WeaveEchoServer ऑब्जेक्ट को शटडाउन करें.
|
सार्वजनिक स्टैटिक फ़ंक्शन |
|
---|---|
DefaultEventHandler(void *appState, EventType eventType, const InEventParam & inParam, OutEventParam & outParam)
|
void
WeaveEchoServer एपीआई इवेंट के लिए डिफ़ॉल्ट हैंडलर.
|
स्ट्रक्चर |
|
---|---|
nl:: |
WeaveEchoServer एपीआई इवेंट के लिए पैरामीटर इनपुट करें. |
nl:: |
WeaveEchoServer एपीआई इवेंट के लिए आउटपुट पैरामीटर. |
सार्वजनिक प्रकार
EchoFunct
void(* EchoFunct)(uint64_t nodeId, IPAddress nodeAddr, PacketBuffer *payload)
EventCallback
void(* EventCallback)(void *appState, EventType eventType, const InEventParam &inParam, OutEventParam &outParam)
EventType
EventType
प्रॉपर्टी | |
---|---|
kEvent_DefaultCheck
|
इसका इस्तेमाल ऐप्लिकेशन में, डिफ़ॉल्ट तौर पर इवेंट मैनेज करने के सही तरीके की पुष्टि करने के लिए किया जाता है. |
kEvent_EchoRequestReceived
|
किसी सहकर्मी से EchoRequest मैसेज मिला. |
kEvent_EchoResponseSent
|
EchoResponse संदेश भेजा गया था, या भेजा नहीं जा सका. |
सार्वजनिक विशेषताएं
AppState
void * AppState
ऐप्लिकेशन के लिए खास डेटा का पॉइंटर.
OnEchoRequestReceived
EchoFunct OnEchoRequestReceived
सार्वजनिक फ़ंक्शन
GetEventCallback
EventCallback GetEventCallback( void ) const
एपीआई इवेंट के कॉलबैक फ़ंक्शन का पॉइंटर दिखाता है, जो फ़िलहाल WeaveEchoServer ऑब्जेक्ट पर कॉन्फ़िगर किया गया है.
Init
WEAVE_ERROR Init( WeaveExchangeManager *exchangeMgr, EventCallback eventCallback, void *appState )
WeaveEchoServer ऑब्जेक्ट शुरू करें.
किसी साथी के मैसेज इको का जवाब देने के लिए, WeaveEchoServer ऑब्जेक्ट को शुरू करें.
जानकारी | |||||||
---|---|---|---|---|---|---|---|
पैरामीटर |
|
Init
WEAVE_ERROR Init( WeaveExchangeManager *exchangeMgr )
WeaveEchoServer ऑब्जेक्ट शुरू करें.
किसी साथी के मैसेज इको का जवाब देने के लिए, WeaveEchoServer ऑब्जेक्ट को शुरू करें.
बंद किया गया: कृपया Init(WeaveExchangeManager * ExchangeMgr, EventCallback eventCallback, void * appState) का इस्तेमाल करें
जानकारी | |||||||
---|---|---|---|---|---|---|---|
पैरामीटर |
|
SetEventCallback
void SetEventCallback( EventCallback eventCallback )
यह WeaveEchoServer ऑब्जेक्ट पर, एपीआई इवेंट के कॉलबैक फ़ंक्शन को सेट करता है.
बंद करें
WEAVE_ERROR Shutdown( void )
पहले से शुरू किए गए WeaveEchoServer ऑब्जेक्ट को शटडाउन करें.
ध्यान रखें कि यह तरीका सिर्फ़ तब कॉल किया जा सकता है, जब Init() तरीके को पहले कॉल किया गया हो.
सार्वजनिक स्टैटिक फ़ंक्शन
DefaultEventHandler
void DefaultEventHandler( void *appState, EventType eventType, const InEventParam & inParam, OutEventParam & outParam )
WeaveEchoServer एपीआई इवेंट के लिए डिफ़ॉल्ट हैंडलर.
ऐप्लिकेशन को ऐसे किसी भी एपीआई इवेंट के लिए इस तरीके को कॉल करना होगा जिसे वे नहीं पहचानते या हैंडल नहीं करते. दिए गए पैरामीटर वही होने चाहिए जो सर्वर ऑब्जेक्ट से ऐप्लिकेशन के इवेंट हैंडलर फ़ंक्शन को पास किए गए हों.
जानकारी | |||||||||
---|---|---|---|---|---|---|---|---|---|
पैरामीटर |
|