nl:: Weave:: Profiles:: Time:: TimeSyncNode
खास जानकारी
इनहेरिटेंस
इनसे इनहेरिट किया जाता है: nl::Weave::Profiles::Time::_TimeSyncNodeBase
कंस्ट्रक्टर और डिस्ट्रक्टर |
|
---|---|
TimeSyncNode(void)
|
mBootTimeForNextAutoDiscovery_usec
|
timesync_t
|
mIsAutoSyncEnabled
|
bool
अपने-आप सिंक होने की सुविधा के लिए इस्तेमाल किए जाने वाले राज्य.
|
mIsUrgentDiscoveryPending
|
bool
|
mNominalDiscoveryPeriod_msec
|
int32_t
|
mShortestDiscoveryPeriod_msec
|
int32_t
|
mSyncPeriod_msec
|
int32_t
|
mActiveContact
|
Contact *
में बातचीत के लिए इस्तेमाल किया जाता है.
|
mExchangeContext
|
|
mUnadjTimestampLastSent_usec
|
timesync_t
|
EnterState_Discover(void)
|
void
ये स्टेट ट्रांज़िशन फ़ंक्शन अंदरूनी होते हैं और ये गड़बड़ी कोड नहीं दिखा सकते, क्योंकि पिछली स्थिति में इन्हें मैनेज करने का कोई तरीका नहीं होता.
|
EnterState_ServiceSync_1(void)
|
void
|
EnterState_ServiceSync_2(void)
|
void
|
EnterState_Sync_1(void)
|
void
|
EnterState_Sync_2(void)
|
void
|
सार्वजनिक प्रकार |
|
---|---|
ClientState
|
enum इस टाइम सिंक क्लाइंट की मौजूदा स्थिति |
CommState
|
enum किसी संपर्क से बातचीत की स्थिति. |
ContributorFilter)(void *const aApp, Contact aContact[], const int aSize)
|
typedefvoid(*
कॉलबैक की सुविधा, रिस्पॉन्स के समय में किए गए सुधार का हिसाब लगाने से ठीक पहले होती है. |
OnSyncRequestReceivedHandler)(void *const aApp, const WeaveMessageInfo *aMsgInfo, const uint8_t aLikelyhood, const bool aIsTimeCoordinator)
|
typedefbool(*
कॉलबैक से पता चलता है कि हमें अभी-अभी सिंक का अनुरोध मिला है. |
ResponseStatus
|
enum किसी खास संपर्क के लिए सेव किए गए जवाब की स्थिति. |
ServerState{
|
enum इस टाइम सिंक सर्वर की मौजूदा स्थिति |
SyncFailedHandler)(void *const aApp, const WEAVE_ERROR aErrorCode)
|
typedefvoid(*
जब सिंक की प्रोसेस पूरी नहीं होती, तब कॉलबैक होता है. इसमें, अपने-आप सिंक होने की सुविधा भी शामिल है. |
SyncSucceededHandler)(void *const aApp, const timesync_t aOffsetUsec, const bool aIsReliable, const bool aIsServer, const uint8_t aNumContributor)
|
typedefbool(*
कॉलबैक, सिंक की प्रोसेस पूरी होने के बाद होता है. इसमें अपने-आप सिंक होने की सुविधा भी शामिल है. हालांकि, नतीजा लागू होने से पहले होता है. |
TimeChangeNotificationHandler)(void *const aApp, const uint64_t aNodeId, const IPAddress &aNodeAddr)
|
typedefvoid(*
कॉलबैक से पता चलता है कि हमें अभी-अभी समय में बदलाव की सूचना मिली है. |
सार्वजनिक विशेषताएं |
|
---|---|
FilterTimeCorrectionContributor
|
|
OnSyncFailed
|
|
OnSyncRequestReceived
|
अगर इस नीति को सेट नहीं किया जाता है, तो डिफ़ॉल्ट तौर पर लागू होने वाला डिफ़ॉल्ट तरीका हमेशा 'सही' दिखाता है
|
OnSyncSucceeded
|
अगर इस नीति को सेट नहीं किया जाता है, तो सर्वर में किए गए बहुत छोटे सुधारों को छोड़कर, डिफ़ॉल्ट तौर पर सेट किए गए सभी नतीजे दिखते हैं
|
OnTimeChangeNotificationReceived
|
|
mEncryptionType
|
uint8_t
लोकल कम्यूनिकेशन के लिए एन्क्रिप्शन का तरीका
|
mKeyId
|
uint16_t
स्थानीय बातचीत के लिए इस्तेमाल किया जाने वाला कुंजी आईडी
|
सुरक्षित किए गए एट्रिब्यूट |
|
---|---|
mApp
|
void *
उच्च लेयर डेटा की ओर पॉइंटर
|
mClientState
|
|
mConnectionToService
|
सेवा से संपर्क करने के लिए इस्तेमाल किया जाने वाला टीसीपी कनेक्शन.
|
mContacts[WEAVE_CONFIG_TIME_CLIENT_MAX_NUM_CONTACTS]
|
खोज के दौरान मिली संपर्क जानकारी.
|
mIsAlwaysFresh
|
bool
|
mIsInCallback
|
bool
सही है अगर हम उच्च लेयर के कॉलबैक में हैं
|
mLastLikelihoodSent
|
int8_t
|
mNumContributorInLastLocalSync
|
uint8_t
|
mRole
|
TimeSyncRole
इस नोड की असल भूमिका.
|
mServerState
|
|
mServiceContact
|
|
mTimestampLastCorrectionFromServerOrNtp_usec
|
timesync_t
ध्यान रखें कि यह बूट टाइम होना चाहिए, क्योंकि हमें सोने के समय के लिए मुआवज़ा चाहिए
|
mTimestampLastLocalSync_usec
|
timesync_t
ध्यान रखें कि यह बूट टाइम होना चाहिए, क्योंकि हमें सोने के समय के लिए मुआवज़ा चाहिए
|
सार्वजनिक फ़ंक्शन |
|
---|---|
Abort(void)
|
इंजन को जो कुछ भी हो रहा है उसे रद्द करते हुए, उसे फिर से इस्तेमाल में न होने पर जाने के लिए मजबूर करें.
|
DisableAutoSync(void)
|
void
अपने-आप सिंक होने की सुविधा बंद करें.
|
EnableAutoSync(const int32_t aSyncPeriod_msec, const int32_t aNominalDiscoveryPeriod_msec, const int32_t aShortestDiscoveryPeriod_msec)
|
अपने-आप सिंक होने की सुविधा चालू करें.
|
GetCapacityOfContactList(void) const
|
int
इस इंजन के स्टोर करने के लिए कॉन्फ़िगर किए गए संपर्कों की ज़्यादा से ज़्यादा संख्या के लिए सिंपल गैटर
|
GetClientState(void) const
|
क्लाइंट स्टेट के लिए सिंपल गैटर
|
GetNextLikelihood(void) const
|
int8_t
स्थायी यूआरएल की संभावना को एक्सट्रैक्ट करें.
|
GetServerState(void) const
|
सर्वर की स्थिति के लिए आसान गैटर
|
InitClient(void *const aApp, WeaveExchangeManager *aExchangeMgr, const uint8_t aEncryptionType, const uint16_t aKeyId, const int8_t aInitialLikelyhood)
|
इस क्लाइंट को शुरू करें.
|
InitCoordinator(nl::Weave::WeaveExchangeManager *aExchangeMgr, const uint8_t aEncryptionType, const uint16_t aKeyId, const int32_t aSyncPeriod_msec, const int32_t aNominalDiscoveryPeriod_msec, const int32_t aShortestDiscoveryPeriod_msec)
|
इस कोऑर्डिनेटर को शुरू करना होगा.
|
InitServer(void *const aApp, WeaveExchangeManager *const aExchangeMgr, const bool aIsAlwaysFresh)
|
अगर इंटेंट टाइम सिंक सर्वर बनाना है, तो सर्वर भूमिका के लिए शुरू करें को ऑब्जेक्ट बनाने के बाद पहले फ़ंक्शन के रूप में कॉल किया जाना चाहिए.
|
MulticastTimeChangeNotification(const uint8_t aEncryptionType, const uint16_t aKeyId) const
|
void
समय बदलने की सूचना को मल्टीकास्ट करने के लिए, ज़्यादा लेयर के ज़रिए कॉल किया जाता है.
|
RegisterCorrectionFromServerOrNtp(void)
|
void
यह बताने के लिए कि हमने अभी-अभी किसी सर्वर या एनटीपी जैसे कुछ भरोसेमंद तरीकों के साथ समय-समय पर सिंक पूरा किया है, यह बताने के लिए इसे उच्च लेयर कहा जाता है.
|
RegisterLocalSyncOperation(const uint8_t aNumContributor)
|
void
यह बताने के लिए उच्च लेयर का इस्तेमाल किया गया है कि हमने अन्य लोकल कोऑर्डिनेटर के साथ अभी-अभी सिंक का एक राउंड पूरा किया है.
|
Shutdown(void)
|
सेवा को रोक देना चाहिए, चाहे वह कोई भी भूमिका निभा रही हो.
|
Sync(const bool aForceDiscoverAgain)
|
मौजूदा संपर्कों का इस्तेमाल करके सिंक करें.
|
SyncWithNodes(const int16_t aNumNode, const ServingNode aNodes[])
|
संपर्कों की दी गई सूची का उपयोग करके सिंक करें.
|
SyncWithService(WeaveConnection *const aConnection)
|
दिए गए टीसीपी कनेक्शन और उससे जुड़े एन्क्रिप्शन और कुंजी आईडी का इस्तेमाल करके सिंक करें.
|
सुरक्षित फ़ंक्शन |
|
---|---|
AbortOnError(const WEAVE_ERROR aCode)
|
void
यदि aCode WEAVE_NO_ERROR नहीं है तो आंतरिक रद्द करें
|
AutoSyncNow(void)
|
void
इंटरनल फ़ंक्शन, जो अपने-आप सिंक होने वाले सेशन को शुरू करने के लिए इस्तेमाल किया जाता है
|
CallbackForSyncCompletion(const bool aIsSuccessful, bool aShouldUpdate, const bool aIsCorrectionReliable, const bool aIsFromServer, const uint8_t aNumContributor, const timesync_t aSystemTimestamp_usec, const timesync_t aDiffTime_usec)
|
ऐप्लिकेशन लेयर पर कॉलबैक शुरू करें.
|
ClearState(void)
|
void
|
DestroyCommContext(void)
|
bool
Weave ExchangeContext बंद करें
|
EndLocalSyncAndTryCalculateTimeFix(void)
|
void
|
EndServiceSyncAndTryCalculateTimeFix(void)
|
void
|
FindReplaceableContact(const uint64_t aNodeId, const IPAddress & aNodeAddr, bool aIsTimeChangeNotification)
|
Contact *
संपर्क जानकारी संग्रहित करने के लिए स्लॉट वापस करना
|
GetClientStateName(void) const
|
const char *const
|
GetNextIdleContact(void)
|
Contact *
बात करने के लिए, अगला मान्य और कुछ समय से इस्तेमाल में न रहने वाला संपर्क पाएं
|
GetNumNotYetCompletedContacts(void)
|
int16_t
उन संपर्कों की संख्या मिलेगी जो मान्य हैं, लेकिन हमने अभी तक उनसे बात नहीं की है.
|
GetNumReliableResponses(void)
|
int16_t
'भरोसेमंद' विकल्प की संख्या बताओ अब तक मिले जवाबों का आकलन कर सकें.
|
InitState(const TimeSyncRole aRole, void *const aApp, WeaveExchangeManager *const aExchangeMgr)
|
|
InvalidateAllContacts(void)
|
void
सभी स्थानीय संपर्क अमान्य करें
|
InvalidateServiceContact(void)
|
void
सेवा से अमान्य संपर्क
|
RegisterCommError(Contact *const aContact)
|
void
किसी संपर्क पर कम्यूनिकेशन से जुड़ी गड़बड़ी को रजिस्टर करें. साथ ही, ज़रूरत पड़ने पर संपर्क अपने-आप दिखने की अवधि को कम कर दें. इससे यह पता चलता है कि हमारे पास बात करने के लिए कोई नहीं है. इसलिए, बस अपने-आप दिखने की अवधि को कम कर दें
|
SendSyncRequest(bool *const rIsMessageSent, Contact *const aContact)
|
किसी संपर्क को यूनिकास्ट सिंक अनुरोध भेजें.
|
SetAllCompletedContactsToIdle(void)
|
int16_t
सभी पूर्ण संपर्कों को फिर से प्रयोग में नहीं स्थिति पर रीसेट करें, लेकिन प्रतिक्रिया को स् पर्श न करें.
|
SetAllValidContactsToIdleAndInvalidateResponse(void)
|
int16_t
सभी मान्य स्थानीय संपर्कों को निष्क्रिय स्थिति पर सेट करें और प्रतिक्रिया हटाएं.
|
SetClientState(const ClientState state)
|
void
|
SetupUnicastCommContext(Contact *const aContact)
|
यूनिकास्ट कम्यूनिकेशन के लिए नया Weave Exchange बनाएं
|
StoreNotifyingContact(const uint64_t aNodeId, const IPAddress & aNodeAddr)
|
void
उस नोड की संपर्क जानकारी संग्रहित करें, जिसने हमें समय परिवर्तन सूचना भेजी है
|
UpdateMulticastSyncResponse(const uint64_t aNodeId, const IPAddress & aNodeAddr, const TimeSyncResponse & aResponse)
|
void
मल्टीकास्ट अनुरोध से आने वाले जवाब को प्रोसेस करें
|
UpdateUnicastSyncResponse(const TimeSyncResponse & aResponse)
|
void
एक यूनिकास्ट अनुरोध से आने वाले जवाब को प्रोसेस करें
|
_InitClient(const uint8_t aEncryptionType, const uint16_t aKeyId, const int8_t aInitialLikelyhood)
|
क्लाइंट की भूमिका के लिए शुरू करें.
|
_InitServer(const bool aIsAlwaysFresh)
|
सर्वर रोल के लिए शुरू करें.
|
_ShutdownClient(void)
|
उस क्लाइंट को रोकना जो कॉलबैक में उपलब्ध नहीं है.
|
_ShutdownCoordinator(void)
|
उस कोऑर्डिनेटर को रोकें जो कॉलबैक में उपलब्ध नहीं है.
|
_ShutdownServer(void)
|
उस सर्वर को रोकना जो कॉलबैक में उपलब्ध नहीं है.
|
सुरक्षित किए गए स्टैटिक फ़ंक्शन |
|
---|---|
HandleAutoDiscoveryTimeout(System::Layer *aSystemLayer, void *aAppState, System::Error aError)
|
void
|
HandleAutoSyncTimeout(System::Layer *aSystemLayer, void *aAppState, System::Error aError)
|
void
|
HandleMulticastResponseTimeout(System::Layer *aSystemLayer, void *aAppState, System::Error aError)
|
void
|
HandleMulticastSyncResponse(ExchangeContext *ec, const IPPacketInfo *pktInfo, const WeaveMessageInfo *msgInfo, uint32_t profileId, uint8_t msgType, PacketBuffer *payload)
|
void
|
HandleSyncRequest(ExchangeContext *ec, const IPPacketInfo *pktInfo, const WeaveMessageInfo *msgInfo, uint32_t profileId, uint8_t msgType, PacketBuffer *payload)
|
void
समय को सिंक करने का अनुरोध मिलने पर, Weave Exchange से कॉलबैक
|
HandleTimeChangeNotification(ExchangeContext *ec, const IPPacketInfo *pktInfo, const WeaveMessageInfo *msgInfo, uint32_t profileId, uint8_t msgType, PacketBuffer *payload)
|
void
|
HandleUnicastResponseTimeout(ExchangeContext *const ec)
|
void
|
HandleUnicastSyncResponse(ExchangeContext *ec, const IPPacketInfo *pktInfo, const WeaveMessageInfo *msgInfo, uint32_t profileId, uint8_t msgType, PacketBuffer *payload)
|
void
|
HandleUnreliableAfterBootTimer(System::Layer *aSystemLayer, void *aAppState, System::Error aError)
|
void
वीव टाइमर से कॉलबैक जब हमने बूट बैरियर के बाद गैर-भरोसेमंद लक्ष्य को पार कर लिया था
|
IsOperationalState(ClientState aState)
|
bool
यह तय करें कि दी गई स्थिति काम कर रही है या नहीं.
|
_OnSyncSucceeded(void *const aApp, const nl::Weave::Profiles::Time::timesync_t aOffsetUsec, const bool aIsReliable, const bool aIsServer, const uint8_t aNumContributor)
|
bool
|
mBootTimeForNextAutoDiscovery_usec
timesync_t mBootTimeForNextAutoDiscovery_usec
mIsAutoSyncEnabled
bool mIsAutoSyncEnabled
अपने-आप सिंक होने की सुविधा के लिए इस्तेमाल किए जाने वाले राज्य.
mIsUrgentDiscoveryPending
bool mIsUrgentDiscoveryPending
mNominalDiscoveryPeriod_msec
int32_t mNominalDiscoveryPeriod_msec
mShortestDiscoveryPeriod_msec
int32_t mShortestDiscoveryPeriod_msec
mSyncPeriod_msec
int32_t mSyncPeriod_msec
mExchangeContext
ExchangeContext * mExchangeContext
mUnadjTimestampLastSent_usec
timesync_t mUnadjTimestampLastSent_usec
EnterState_Discover
void EnterState_Discover( void )
ये स्टेट ट्रांज़िशन फ़ंक्शन अंदरूनी होते हैं और ये गड़बड़ी कोड नहीं दिखा सकते, क्योंकि पिछली स्थिति में इन्हें मैनेज करने का कोई तरीका नहीं होता.
किसी भी गड़बड़ी की वजह से, समय के साथ एक और स्थिति बदल जाएगी (टाइम आउट भी हो सकता है) अगर टाइमर भी फ़ेल हो जाता है, तो हम ट्रिक से बाहर हो सकते हैं.
EnterState_ServiceSync_1
void EnterState_ServiceSync_1( void )
EnterState_ServiceSync_2
void EnterState_ServiceSync_2( void )
EnterState_Sync_1
void EnterState_Sync_1( void )
EnterState_Sync_2
void EnterState_Sync_2( void )
सार्वजनिक प्रकार
ClientState
ClientState
इस टाइम सिंक क्लाइंट की मौजूदा स्थिति
CommState
CommState
किसी संपर्क से बातचीत की स्थिति.
यह सार्वजनिक तौर पर उपलब्ध है, क्योंकि संपर्क सार्वजनिक है
ContributorFilter
void(* ContributorFilter)(void *const aApp, Contact aContact[], const int aSize)
कॉलबैक की सुविधा, रिस्पॉन्स के समय में किए गए सुधार का हिसाब लगाने से ठीक पहले होती है.
ऐप्लिकेशन लेयर, aContact[i].mResponseStatus को kResponseStatus_ चलाकर ओवरराइट कर सकती है, ताकि कैलकुलेशन में रिस्पॉन्स को अनदेखा कर दिया जाए
विवरण | |||||||
---|---|---|---|---|---|---|---|
पैरामीटर |
|
OnSyncRequestReceivedHandler
bool(* OnSyncRequestReceivedHandler)(void *const aApp, const WeaveMessageInfo *aMsgInfo, const uint8_t aLikelyhood, const bool aIsTimeCoordinator)
कॉलबैक से पता चलता है कि हमें अभी-अभी सिंक का अनुरोध मिला है.
विवरण | |||||||||
---|---|---|---|---|---|---|---|---|---|
पैरामीटर |
|
||||||||
लौटाए जाने वाले प्रॉडक्ट |
गलत है और इंजन इस अनुरोध को अनदेखा कर देगा
|
ResponseStatus
ResponseStatus
किसी खास संपर्क के लिए सेव किए गए जवाब की स्थिति.
यह सार्वजनिक तौर पर उपलब्ध है, क्योंकि संपर्क सार्वजनिक है
ServerState
ServerState
इस टाइम सिंक सर्वर की मौजूदा स्थिति
प्रॉपर्टी | |
---|---|
kServerState_Idle
|
सर्वर सामान्य सेटिंग वाले अनुरोधों का जवाब देने के लिए तैयार है |
kServerState_UnreliableAfterBoot
|
समय, जो सर्वर अपने सिस्टम समय को सिंक करने के लिए किसी अन्य तरीके से रिज़र्व करता है. यह सिर्फ़ तब काम आता है, जब Init को कॉल करने पर aIsAlwaysFresh सही हो |
SyncFailedHandler
void(* SyncFailedHandler)(void *const aApp, const WEAVE_ERROR aErrorCode)
जब सिंक की प्रोसेस पूरी नहीं होती, तब कॉलबैक होता है. इसमें, अपने-आप सिंक होने की सुविधा भी शामिल है.
ध्यान दें कि अगर सिंक करने की प्रोसेस रोकने के लिए, 'रद्द करें' बटन को कॉल किया जाता है, तो कॉलबैक नहीं होता
विवरण | |||||
---|---|---|---|---|---|
पैरामीटर |
|
SyncSucceededHandler
bool(* SyncSucceededHandler)(void *const aApp, const timesync_t aOffsetUsec, const bool aIsReliable, const bool aIsServer, const uint8_t aNumContributor)
कॉलबैक, सिंक की प्रोसेस पूरी होने के बाद होता है. इसमें अपने-आप सिंक होने की सुविधा भी शामिल है. हालांकि, नतीजा लागू होने से पहले होता है.
ध्यान दें कि सफल होने का मतलब यह नहीं है कि हमारे पास लागू नतीजे मौजूद हैं. कोई जवाब न मिलने पर, aNumContributor को 0 पर सेट किया जाएगा. ऐप्लिकेशन लेयर, aContact[i].mResponseStatus को kResponseStatus_ बदल में बदल सकता है, ताकि कैलकुलेशन के दौरान जवाब को अनदेखा कर दिया जाए
विवरण | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
पैरामीटर |
|
||||||||||
लौटाए जाने वाले प्रॉडक्ट |
सही है, अगर इस ऑफ़सेट का इस्तेमाल सिस्टम के समय को अडजस्ट करने के लिए किया जाएगा. अगर aNumContributor 0 है, तो रिटर्न वैल्यू को अनदेखा कर दिया जाएगा.
|
TimeChangeNotificationHandler
void(* TimeChangeNotificationHandler)(void *const aApp, const uint64_t aNodeId, const IPAddress &aNodeAddr)
कॉलबैक से पता चलता है कि हमें अभी-अभी समय में बदलाव की सूचना मिली है.
अगर अपने-आप सिंक होने वाला मोड चालू है, तो इस कॉलबैक के बाद अपने-आप समय सिंक होने की प्रोसेस कुछ समय बाद शेड्यूल हो जाएगी. नहीं तो ऐप्लिकेशन लेयर, सिंक कार्रवाई को सीधे शुरू करने के लिए फ़ंक्शन के सिंक फ़ैमिली ग्रुप को कॉल करने का विकल्प चुन सकती है. यह नियम, कॉल के दौरान उपलब्ध न होने के सामान्य नियम के तहत प्रतिबंधित नहीं होता. हालांकि, यह ध्यान देना ज़रूरी है कि यह खास कॉलबैक, Weave Exchange लेयर के कॉलबैक स्टैक के ऊपर अब भी है.
विवरण | |||||||
---|---|---|---|---|---|---|---|
पैरामीटर |
|
सार्वजनिक विशेषताएं
FilterTimeCorrectionContributor
ContributorFilter FilterTimeCorrectionContributor
OnSyncFailed
SyncFailedHandler OnSyncFailed
OnSyncRequestReceived
OnSyncRequestReceivedHandler OnSyncRequestReceived
अगर इस नीति को सेट नहीं किया जाता है, तो डिफ़ॉल्ट तौर पर लागू होने वाला डिफ़ॉल्ट तरीका हमेशा 'सही' दिखाता है
OnSyncSucceeded
SyncSucceededHandler OnSyncSucceeded
अगर इस नीति को सेट नहीं किया जाता है, तो सर्वर में किए गए बहुत छोटे सुधारों को छोड़कर, डिफ़ॉल्ट तौर पर सेट किए गए सभी नतीजे दिखते हैं
OnTimeChangeNotificationReceived
TimeChangeNotificationHandler OnTimeChangeNotificationReceived
mEncryptionType
uint8_t mEncryptionType
लोकल कम्यूनिकेशन के लिए एन्क्रिप्शन का तरीका
mKeyId
uint16_t mKeyId
स्थानीय बातचीत के लिए इस्तेमाल किया जाने वाला कुंजी आईडी
सुरक्षित किए गए एट्रिब्यूट
mApp
void * mApp
उच्च लेयर डेटा की ओर पॉइंटर
mClientState
ClientState mClientState
mConnectionToService
WeaveConnection * mConnectionToService
सेवा से संपर्क करने के लिए इस्तेमाल किया जाने वाला टीसीपी कनेक्शन.
mContacts
Contact mContacts[WEAVE_CONFIG_TIME_CLIENT_MAX_NUM_CONTACTS]
खोज के दौरान मिली संपर्क जानकारी.
mIsAlwaysFresh
bool mIsAlwaysFresh
mIsInCallback
bool mIsInCallback
सही है अगर हम उच्च लेयर के कॉलबैक में हैं
mLastLikelihoodSent
int8_t mLastLikelihoodSent
mNumContributorInLastLocalSync
uint8_t mNumContributorInLastLocalSync
mRole
TimeSyncRole mRole
इस नोड की असल भूमिका.
mServerState
ServerState mServerState
mServiceContact
Contact mServiceContact
mTimestampLastCorrectionFromServerOrNtp_usec
timesync_t mTimestampLastCorrectionFromServerOrNtp_usec
ध्यान दें कि यह बूट टाइम होना चाहिए, क्योंकि हमें सोने के समय के लिए पैसे चाहिए
mTimestampLastLocalSync_usec
timesync_t mTimestampLastLocalSync_usec
ध्यान रखें कि यह बूट टाइम होना चाहिए, क्योंकि हमें सोने के समय के लिए मुआवज़ा चाहिए
सार्वजनिक फ़ंक्शन
रद्द करें
WEAVE_ERROR Abort( void )
इंजन को जो कुछ भी हो रहा है उसे रद्द करते हुए, उसे फिर से इस्तेमाल में न होने पर जाने के लिए मजबूर करें.
ध्यान दें कि कोई भी सिंक पूरा नहीं हुआ या नहीं हो सका, तो उसे कॉल नहीं किया जाएगा. सभी Weave एक्सचेंज बंद हो जाएंगे. इसके बाद टीसीपी कनेक्शन को नहीं छूया जाएगा. कोई कार्रवाई नहीं होगी, अगर हम पहले से ही कुछ समय से इस्तेमाल में नहीं हैं. कॉलबैक में उपलब्ध नहीं होता.
विवरण | |
---|---|
लौटाए जाने वाले प्रॉडक्ट |
सफलता पर WEAVE_NO_ERROR
|
DisableAutoSync
void DisableAutoSync( void )
अपने-आप सिंक होने की सुविधा बंद करें.
सिर्फ़ कुछ समय से इस्तेमाल में न होने पर उपलब्ध होता है. कॉलबैक में उपलब्ध नहीं होता.
EnableAutoSync
WEAVE_ERROR EnableAutoSync( const int32_t aSyncPeriod_msec, const int32_t aNominalDiscoveryPeriod_msec, const int32_t aShortestDiscoveryPeriod_msec )
अपने-आप सिंक होने की सुविधा चालू करें.
सिर्फ़ कुछ समय से इस्तेमाल में न होने पर उपलब्ध होता है. तुरंत पता चल जाता है. कॉलबैक में उपलब्ध नहीं होता.
विवरण | |||||||
---|---|---|---|---|---|---|---|
पैरामीटर |
|
||||||
लौटाए जाने वाले प्रॉडक्ट |
सफलता पर WEAVE_NO_ERROR
|
GetCapacityOfContactList
int GetCapacityOfContactList( void ) const
इस इंजन के स्टोर करने के लिए कॉन्फ़िगर किए गए संपर्कों की ज़्यादा से ज़्यादा संख्या के लिए सिंपल गैटर
GetNextLikelihood
int8_t GetNextLikelihood( void ) const
स्थायी यूआरएल की संभावना को एक्सट्रैक्ट करें.
OnSyncSucceeded और OnSyncFailed के कॉलबैक में, सिंक करने की कार्रवाई पूरी होने के बाद ही, नतीजा मान्य होगा. ऐसा न होने पर, यह कुछ समय के लिए बना रहता है. साथ ही, हो सकता है कि यह अगली संभावना न हो कि आने वाले समय में इसे इस्तेमाल किया जाए.
विवरण | |
---|---|
लौटाए जाने वाले प्रॉडक्ट |
अगले अनुरोध में जवाब के इस्तेमाल की संभावना
|
InitClient
WEAVE_ERROR InitClient( void *const aApp, WeaveExchangeManager *aExchangeMgr, const uint8_t aEncryptionType, const uint16_t aKeyId, const int8_t aInitialLikelyhood )
इस क्लाइंट को शुरू करें.
कॉलबैक में उपलब्ध नहीं है
विवरण | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
पैरामीटर |
|
||||||||||||
लौटाए जाने वाले प्रॉडक्ट |
सफलता पर WEAVE_NO_ERROR
|
InitCoordinator
WEAVE_ERROR InitCoordinator( nl::Weave::WeaveExchangeManager *aExchangeMgr, const uint8_t aEncryptionType, const uint16_t aKeyId, const int32_t aSyncPeriod_msec, const int32_t aNominalDiscoveryPeriod_msec, const int32_t aShortestDiscoveryPeriod_msec )
इस कोऑर्डिनेटर को शुरू करना होगा.
विवरण | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
पैरामीटर |
|
||||||||||||
लौटाए जाने वाले प्रॉडक्ट |
सफलता पर WEAVE_NO_ERROR
|
InitServer
WEAVE_ERROR InitServer( void *const aApp, WeaveExchangeManager *const aExchangeMgr, const bool aIsAlwaysFresh )
अगर इंटेंट टाइम सिंक सर्वर बनाना है, तो सर्वर भूमिका के लिए शुरू करें को ऑब्जेक्ट बनाने के बाद पहले फ़ंक्शन के रूप में कॉल किया जाना चाहिए.
कॉलबैक में उपलब्ध नहीं है
विवरण | |||||||
---|---|---|---|---|---|---|---|
पैरामीटर |
|
||||||
लौटाए जाने वाले प्रॉडक्ट |
सफलता पर WEAVE_NO_ERROR
|
MulticastTimeChangeNotification
void MulticastTimeChangeNotification( const uint8_t aEncryptionType, const uint16_t aKeyId ) const
समय में बदलाव की सूचना को मल्टीकास्ट करने के लिए, ज़्यादा लेयर के ज़रिए कॉल किया जाता है.
कॉलबैक में उपलब्ध नहीं होता.
विवरण | |||||
---|---|---|---|---|---|
पैरामीटर |
|
RegisterCorrectionFromServerOrNtp
void RegisterCorrectionFromServerOrNtp( void )
यह बताने के लिए कि हमने अभी-अभी किसी सर्वर या एनटीपी जैसे कुछ भरोसेमंद तरीकों के साथ समय-समय पर सिंक पूरा किया है, यह बताने के लिए इसे उच्च लेयर कहा जाता है.
RegisterLocalSyncOperation
void RegisterLocalSyncOperation( const uint8_t aNumContributor )
यह बताने के लिए उच्च लेयर का इस्तेमाल किया गया है कि हमने अन्य लोकल कोऑर्डिनेटर के साथ अभी-अभी सिंक का एक राउंड पूरा किया है.
विवरण | |||
---|---|---|---|
पैरामीटर |
|
बंद करें
WEAVE_ERROR Shutdown( void )
सेवा को रोक देना चाहिए, चाहे वह कोई भी भूमिका निभा रही हो.
इस फ़ंक्शन को, किसी भी इनिट फ़ंक्शन को इस्तेमाल करने से पहले, तय किए गए रिसॉर्स पर फिर से दावा करने के लिए कहा जाना चाहिए. कॉलबैक में उपलब्ध नहीं होता.
विवरण | |
---|---|
लौटाए जाने वाले प्रॉडक्ट |
सफलता पर WEAVE_NO_ERROR
|
सिंक करें
WEAVE_ERROR Sync( const bool aForceDiscoverAgain )
मौजूदा संपर्कों का इस्तेमाल करके सिंक करें.
अगर कोई मान्य संपर्क उपलब्ध नहीं है, तो सिंक नहीं किया जा सकता. खोज को तुरंत लागू करने के लिए, aForceDiscoverAgain को सही पर सेट करें. सिर्फ़ कुछ समय से इस्तेमाल में न होने पर उपलब्ध होता है. कॉलबैक में उपलब्ध नहीं होता.
विवरण | |||
---|---|---|---|
पैरामीटर |
|
||
लौटाए जाने वाले प्रॉडक्ट |
सफलता पर WEAVE_NO_ERROR
|
SyncWithNodes
WEAVE_ERROR SyncWithNodes( const int16_t aNumNode, const ServingNode aNodes[] )
संपर्कों की दी गई सूची का उपयोग करके सिंक करें.
मौजूदा संपर्क सूची मिटा दी जाएगी. सिर्फ़ कुछ समय से इस्तेमाल में न होने पर उपलब्ध होता है. कॉलबैक में उपलब्ध नहीं होता.
विवरण | |||||
---|---|---|---|---|---|
पैरामीटर |
|
||||
लौटाए जाने वाले प्रॉडक्ट |
सफलता पर WEAVE_NO_ERROR
|
SyncWithService
WEAVE_ERROR SyncWithService( WeaveConnection *const aConnection )
दिए गए टीसीपी कनेक्शन और उससे जुड़े एन्क्रिप्शन और कुंजी आईडी का इस्तेमाल करके सिंक करें.
सिंक पूरा हो जाने के बाद, कॉलर को टीसीपी कनेक्शन का मालिकाना हक मिल जाना चाहिए. टीसीपी कनेक्शन के लिए किसी भी कॉलबैक को ओवरराइट नहीं किया जाएगा, क्योंकि एक नया Weave Exchange बनाया जाएगा और उस कॉन्टेक्स्ट के ऊपर कॉलबैक सेट किए जाएंगे, जो सिर्फ़ कुछ समय से इस्तेमाल में न होने पर उपलब्ध होंगे. कॉलबैक में उपलब्ध नहीं होता.
विवरण | |||
---|---|---|---|
पैरामीटर |
|
||
लौटाए जाने वाले प्रॉडक्ट |
सफलता पर WEAVE_NO_ERROR
|
TimeSyncNode
TimeSyncNode( void )
सुरक्षित फ़ंक्शन
AbortOnError
void AbortOnError( const WEAVE_ERROR aCode )
आंतरिक रद्द अगर aCode WEAVE_NO_ERROR नहीं है
AutoSyncNow
void AutoSyncNow( void )
इंटरनल फ़ंक्शन, जो अपने-आप सिंक होने वाले सेशन को शुरू करने के लिए इस्तेमाल किया जाता है
CallbackForSyncCompletion
WEAVE_ERROR CallbackForSyncCompletion( const bool aIsSuccessful, bool aShouldUpdate, const bool aIsCorrectionReliable, const bool aIsFromServer, const uint8_t aNumContributor, const timesync_t aSystemTimestamp_usec, const timesync_t aDiffTime_usec )
ऐप्लिकेशन लेयर पर कॉलबैक शुरू करें.
गड़बड़ी कॉलबैक शुरू करने के लिए, aIsसफल को गलत पर सेट करें
ClearState
void ClearState( void )
EndLocalSyncAndTryCalculateTimeFix
void EndLocalSyncAndTryCalculateTimeFix( void )
EndServiceSyncAndTryCalculateTimeFix
void EndServiceSyncAndTryCalculateTimeFix( void )
FindReplaceableContact
Contact * FindReplaceableContact( const uint64_t aNodeId, const IPAddress & aNodeAddr, bool aIsTimeChangeNotification )
संपर्क जानकारी संग्रहित करने के लिए स्लॉट वापस करना
GetClientStateName
const char *const GetClientStateName( void ) const
GetNextIdleContact
Contact * GetNextIdleContact( void )
बात करने के लिए, अगला मान्य और कुछ समय से इस्तेमाल में न रहने वाला संपर्क पाएं
GetNumNotYetCompletedContacts
int16_t GetNumNotYetCompletedContacts( void )
उन संपर्कों की संख्या मिलेगी जो मान्य हैं, लेकिन हमने अभी तक उनसे बात नहीं की है.
GetNumReliableResponses
int16_t GetNumReliableResponses( void )
'भरोसेमंद' विकल्प की संख्या बताओ अब तक मिले जवाबों का आकलन कर सकें.
यह तय करने के लिए कॉल किया कि क्या हमने पर्याप्त संख्या में प्रतिक्रियाएं इकट्ठा की हैं
InitState
WEAVE_ERROR InitState( const TimeSyncRole aRole, void *const aApp, WeaveExchangeManager *const aExchangeMgr )
InvalidateAllContacts
void InvalidateAllContacts( void )
सभी स्थानीय संपर्क अमान्य करें
InvalidateServiceContact
void InvalidateServiceContact( void )
सेवा से अमान्य संपर्क
RegisterCommError
void RegisterCommError( Contact *const aContact )
किसी संपर्क पर कम्यूनिकेशन से जुड़ी गड़बड़ी को रजिस्टर करें. साथ ही, ज़रूरत पड़ने पर संपर्क अपने-आप दिखने की अवधि को कम कर दें. इससे यह पता चलता है कि हमारे पास बात करने के लिए कोई नहीं है. इसलिए, बस अपने-आप दिखने की अवधि को कम कर दें
SendSyncRequest
WEAVE_ERROR SendSyncRequest( bool *const rIsMessageSent, Contact *const aContact )
किसी संपर्क को यूनिकास्ट सिंक अनुरोध भेजें.
*rIsMessageSent को यह बताने के लिए सेट किया जाएगा कि मैसेज भेजा जा चुका है या नहीं. कम्यूनिकेशन से जुड़ी गड़बड़ियां, जैसे कि पता ऐक्सेस नहीं किया जा सकता, नहीं लौटाया जाता. इसलिए, कॉलर को रिटर्न कोड और *rIsMessageSent, दोनों की जांच करनी होगी.
SetAllCompletedContactsToIdle
int16_t SetAllCompletedContactsToIdle( void )
सभी पूर्ण संपर्कों को फिर से प्रयोग में नहीं स्थिति पर रीसेट करें, लेकिन प्रतिक्रिया को स् पर्श न करें.
इसे एक ही नोड से कम्यूनिकेशन के दो राउंड के बीच कॉल किया जाता है
SetAllValidContactsToIdleAndInvalidateResponse
int16_t SetAllValidContactsToIdleAndInvalidateResponse( void )
सभी मान्य स्थानीय संपर्कों को निष्क्रिय स्थिति पर सेट करें और प्रतिक्रिया हटाएं.
उनसे एक-एक करके संपर्क करने से पहले, इस कॉल का जवाब दिया जाता है
SetClientState
void SetClientState( const ClientState state )
SetupUnicastCommContext
WEAVE_ERROR SetupUnicastCommContext( Contact *const aContact )
यूनिकास्ट कम्यूनिकेशन के लिए नया Weave Exchange बनाएं
StoreNotifyingContact
void StoreNotifyingContact( const uint64_t aNodeId, const IPAddress & aNodeAddr )
उस नोड की संपर्क जानकारी संग्रहित करें, जिसने हमें समय परिवर्तन सूचना भेजी है
UpdateMulticastSyncResponse
void UpdateMulticastSyncResponse( const uint64_t aNodeId, const IPAddress & aNodeAddr, const TimeSyncResponse & aResponse )
मल्टीकास्ट अनुरोध से आने वाले जवाब को प्रोसेस करें
UpdateUnicastSyncResponse
void UpdateUnicastSyncResponse( const TimeSyncResponse & aResponse )
एक यूनिकास्ट अनुरोध से आने वाले जवाब को प्रोसेस करें
_InitClient
WEAVE_ERROR _InitClient( const uint8_t aEncryptionType, const uint16_t aKeyId, const int8_t aInitialLikelyhood )
क्लाइंट की भूमिका के लिए शुरू करें.
इसे सार्वजनिक फ़ंक्शन के Init परिवार के ज़रिए अंदरूनी तौर पर इस्तेमाल करने के लिए बनाया गया है. लौटाने से पहले mClientState सेट करना ज़रूरी है. कॉलबैक में उपलब्ध नहीं है
विवरण | |||||||
---|---|---|---|---|---|---|---|
पैरामीटर |
|
||||||
लौटाए जाने वाले प्रॉडक्ट |
सफलता पर WEAVE_NO_ERROR
|
_InitServer
WEAVE_ERROR _InitServer( const bool aIsAlwaysFresh )
सर्वर रोल के लिए शुरू करें.
इसे सार्वजनिक फ़ंक्शन के Init परिवार के ज़रिए अंदरूनी तौर पर इस्तेमाल करने के लिए बनाया गया है. लौटाने से पहले mClientState सेट करना ज़रूरी है. कॉलबैक में उपलब्ध नहीं है
विवरण | |||
---|---|---|---|
पैरामीटर |
|
||
लौटाए जाने वाले प्रॉडक्ट |
सफलता पर WEAVE_NO_ERROR
|
_ShutdownClient
WEAVE_ERROR _ShutdownClient( void )
उस क्लाइंट को रोकना जो कॉलबैक में उपलब्ध नहीं है.
विवरण | |
---|---|
लौटाए जाने वाले प्रॉडक्ट |
सफलता पर WEAVE_NO_ERROR
|
_ShutdownCoordinator
WEAVE_ERROR _ShutdownCoordinator( void )
उस कोऑर्डिनेटर को रोकें जो कॉलबैक में उपलब्ध नहीं है.
विवरण | |
---|---|
लौटाए जाने वाले प्रॉडक्ट |
सफलता पर WEAVE_NO_ERROR
|
_ShutdownServer
WEAVE_ERROR _ShutdownServer( void )
उस सर्वर को रोकना जो कॉलबैक में उपलब्ध नहीं है.
विवरण | |
---|---|
लौटाए जाने वाले प्रॉडक्ट |
सफलता पर WEAVE_NO_ERROR
|
सुरक्षित किए गए स्टैटिक फ़ंक्शन
HandleAutoDiscoveryTimeout
void HandleAutoDiscoveryTimeout( System::Layer *aSystemLayer, void *aAppState, System::Error aError )
HandleAutoSyncTimeout
void HandleAutoSyncTimeout( System::Layer *aSystemLayer, void *aAppState, System::Error aError )
HandleMulticastResponseTimeout
void HandleMulticastResponseTimeout( System::Layer *aSystemLayer, void *aAppState, System::Error aError )
HandleMulticastSyncResponse
void HandleMulticastSyncResponse( ExchangeContext *ec, const IPPacketInfo *pktInfo, const WeaveMessageInfo *msgInfo, uint32_t profileId, uint8_t msgType, PacketBuffer *payload )
HandleSyncRequest
void HandleSyncRequest( ExchangeContext *ec, const IPPacketInfo *pktInfo, const WeaveMessageInfo *msgInfo, uint32_t profileId, uint8_t msgType, PacketBuffer *payload )
समय को सिंक करने का अनुरोध मिलने पर, Weave Exchange से कॉलबैक
HandleTimeChangeNotification
void HandleTimeChangeNotification( ExchangeContext *ec, const IPPacketInfo *pktInfo, const WeaveMessageInfo *msgInfo, uint32_t profileId, uint8_t msgType, PacketBuffer *payload )
HandleUnicastResponseTimeout
void HandleUnicastResponseTimeout( ExchangeContext *const ec )
HandleUnicastSyncResponse
void HandleUnicastSyncResponse( ExchangeContext *ec, const IPPacketInfo *pktInfo, const WeaveMessageInfo *msgInfo, uint32_t profileId, uint8_t msgType, PacketBuffer *payload )
HandleUnreliableAfterBootTimer
void HandleUnreliableAfterBootTimer( System::Layer *aSystemLayer, void *aAppState, System::Error aError )
वीव टाइमर से कॉलबैक जब हमने बूट बैरियर के बाद गैर-भरोसेमंद लक्ष्य को पार कर लिया था
IsOperationalState
bool IsOperationalState( ClientState aState )
यह तय करें कि दी गई स्थिति काम कर रही है या नहीं.
यह तय करने का एक सुविधा तरीका कि ClientState काम करने की स्थिति को दिखाता है या नहीं. इसका मतलब है कि क्लाइंट ने प्रोसेस शुरू कर दी है और वह शट डाउन नहीं कर रहा है.
विवरण | |||
---|---|---|---|
पैरामीटर |
|
||
लौटाए जाने वाले प्रॉडक्ट |
सही है, अगर प्रोसेस पूरी होने के बाद और शटडाउन की प्रोसेस शुरू होने से पहले की स्थिति बंद हो जाती है, तो गलत है.
|
_OnSyncSucceeded
bool _OnSyncSucceeded( void *const aApp, const nl::Weave::Profiles::Time::timesync_t aOffsetUsec, const bool aIsReliable, const bool aIsServer, const uint8_t aNumContributor )