nl:: বুনা:: প্রোফাইল:: সময়:: 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
যোগাযোগ প্রসঙ্গ
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) typedef
void(*
আমরা প্রতিক্রিয়া থেকে সময় সংশোধন গণনা করার ঠিক আগে কলব্যাক ঘটে।
OnSyncRequestReceivedHandler )(void *const aApp, const WeaveMessageInfo *aMsgInfo, const uint8_t aLikelyhood, const bool aIsTimeCoordinator) typedef
bool(*
কলব্যাক ইঙ্গিত করতে যে আমরা এইমাত্র একটি সময় সিঙ্ক অনুরোধ পেয়েছি।
ResponseStatus enum
একটি নির্দিষ্ট পরিচিতির সঞ্চিত প্রতিক্রিয়ার স্থিতি।
ServerState {
kServerState_UnreliableAfterBoot ,
kServerState_Idle
}
enum
এই টাইম সিঙ্ক সার্ভারের বর্তমান অবস্থা
SyncFailedHandler )(void *const aApp, const WEAVE_ERROR aErrorCode) typedef
void(*
স্বয়ংক্রিয় সিঙ্ক সহ যখন সিঙ্ক ব্যর্থ বলে বিবেচিত হয় তখন কলব্যাক ঘটে৷
SyncSucceededHandler )(void *const aApp, const timesync_t aOffsetUsec, const bool aIsReliable, const bool aIsServer, const uint8_t aNumContributor) typedef
bool(*
স্বয়ংক্রিয় সিঙ্ক সহ, কিন্তু ফলাফল প্রয়োগের আগে সিঙ্ক সফল বলে বিবেচিত হওয়ার পরে কলব্যাক ঘটে।
TimeChangeNotificationHandler )(void *const aApp, const uint64_t aNodeId, const IPAddress &aNodeAddr) typedef
void(*
কলব্যাক ইঙ্গিত করতে যে আমরা এইমাত্র একটি সময় পরিবর্তনের বিজ্ঞপ্তি পেয়েছি।

পাবলিক বৈশিষ্ট্য

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
উচ্চতর স্তর দ্বারা বলা হয়েছে যে আমরা সবেমাত্র যে কোনও সার্ভারের সাথে বা NTP-এর মতো কিছু নির্ভরযোগ্য উপায়ের মাধ্যমে এক রাউন্ড সময়ের সিঙ্ক শেষ করেছি।
RegisterLocalSyncOperation (const uint8_t aNumContributor)
void
উচ্চতর স্তর দ্বারা বলা হয়েছে যে আমরা এইমাত্র অন্যান্য স্থানীয় সমন্বয়কারীর সাথে এক রাউন্ড সময়ের সিঙ্ক শেষ করেছি।
Shutdown (void)
পরিষেবাটি বন্ধ করুন, এটি যে ভূমিকা পালন করছে তা কোন ব্যাপার না।
Sync (const bool aForceDiscoverAgain)
বিদ্যমান পরিচিতি ব্যবহার করে সিঙ্ক করুন।
SyncWithNodes (const int16_t aNumNode, const ServingNode aNodes[])
পরিচিতিগুলির প্রদত্ত তালিকা ব্যবহার করে সিঙ্ক করুন।
SyncWithService ( WeaveConnection *const aConnection)
প্রদত্ত TCP সংযোগ এবং সংশ্লিষ্ট এনক্রিপশন এবং কী আইডি ব্যবহার করে সিঙ্ক করুন।

সুরক্ষিত ফাংশন

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
ওয়েভ এক্সচেঞ্জ কনটেক্সট বন্ধ করুন
EndLocalSyncAndTryCalculateTimeFix (void)
void
EndServiceSyncAndTryCalculateTimeFix (void)
void
FindReplaceableContact (const uint64_t aNodeId, const IPAddress & aNodeAddr, bool aIsTimeChangeNotification)
যোগাযোগের তথ্য সংরক্ষণ করতে একটি স্লট ফেরত দিন
GetClientStateName (void) const
const char *const
GetNextIdleContact (void)
কথা বলার জন্য পরবর্তী বৈধ এবং নিষ্ক্রিয় পরিচিতি পান
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)
ইউনিকাস্ট যোগাযোগের জন্য নতুন ওয়েভ এক্সচেঞ্জ তৈরি করুন
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

mActive যোগাযোগ

Contact * mActiveContact

যোগাযোগ প্রসঙ্গ

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

এই টাইম সিঙ্ক ক্লায়েন্টের বর্তমান অবস্থা

কমস্টেট

 CommState

একটি নির্দিষ্ট পরিচিতির সাথে যোগাযোগের অবস্থা।

এটি জনসাধারণের মধ্যে কারণ যোগাযোগ সর্বজনীন

অবদানকারী ফিল্টার

void(* ContributorFilter)(void *const aApp, Contact aContact[], const int aSize)

আমরা প্রতিক্রিয়া থেকে সময় সংশোধন গণনা করার ঠিক আগে কলব্যাক ঘটে।

অ্যাপ্লিকেশন স্তর aContact[i].mResponseStatus কে kResponseStatus_Invalid-এ ওভাররাইট করতে পারে যাতে প্রতিক্রিয়াটি গণনাতে উপেক্ষা করা হয়

বিস্তারিত
পরামিতি
[in] aApp
Init-এ সেট করা অ্যাপ লেয়ার ডেটার একটি পয়েন্টার।
[in] aContact
পরিচিতি এবং প্রতিক্রিয়া স্থিতির অ্যারে
[in] aSize
aContact অ্যারেতে রেকর্ডের সংখ্যা

OnSyncRequestReceivedHandler

bool(* OnSyncRequestReceivedHandler)(void *const aApp, const WeaveMessageInfo *aMsgInfo, const uint8_t aLikelyhood, const bool aIsTimeCoordinator)

কলব্যাক ইঙ্গিত করতে যে আমরা এইমাত্র একটি সময় সিঙ্ক অনুরোধ পেয়েছি।

বিস্তারিত
পরামিতি
[in] aApp
Init-এ সেট করা অ্যাপ লেয়ার ডেটার একটি পয়েন্টার।
[in] aMsgInfo
একটি WeaveMessageInfo প্রেরক সম্পর্কে তথ্য সহ প্রাপ্ত সময় সিঙ্ক অনুরোধ সম্পর্কে তথ্য রয়েছে৷
[in] aLikelyhood
প্রবর্তক দ্বারা অনুরোধ হিসাবে প্রতিক্রিয়া সম্ভাবনা
[in] aIsTimeCoordinator
সত্য যদি প্রারম্ভিক নোড একটি টাইম সিঙ্ক সমন্বয়কারী হয়
রিটার্নস
মিথ্যা এবং ইঞ্জিন এই অনুরোধ উপেক্ষা করবে

প্রতিক্রিয়া স্থিতি

 ResponseStatus

একটি নির্দিষ্ট পরিচিতির সঞ্চিত প্রতিক্রিয়ার স্থিতি।

এটি জনসাধারণের মধ্যে কারণ যোগাযোগ সর্বজনীন

সার্ভারস্টেট

 ServerState

এই টাইম সিঙ্ক সার্ভারের বর্তমান অবস্থা

বৈশিষ্ট্য
kServerState_Idle

সার্ভার স্বাভাবিক সেটিংস সহ অনুরোধের প্রতিক্রিয়া জানাতে প্রস্তুত

kServerState_UnreliableAfterBoot

সার্ভারের জন্য সংরক্ষিত সময় অন্য কোনো মাধ্যমে তার সিস্টেম টাইমকে সিঙ্ক করার জন্য শুধুমাত্র অর্থবহ যদি aIsAlwaysFresh সত্য হয় যখন Init বলা হয়

SyncFailedHandler

void(* SyncFailedHandler)(void *const aApp, const WEAVE_ERROR aErrorCode)

স্বয়ংক্রিয় সিঙ্ক সহ যখন সিঙ্ক ব্যর্থ বলে বিবেচিত হয় তখন কলব্যাক ঘটে৷

মনে রাখবেন যে সিঙ্ক করা বন্ধ করার জন্য Abort বলা হলে কলব্যাক ঘটবে না

বিস্তারিত
পরামিতি
[in] aApp
Init-এ সেট করা অ্যাপ লেয়ার ডেটার একটি পয়েন্টার।
[in] 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_Invalid-এ ওভাররাইট করতে পারে যাতে গণনাতে প্রতিক্রিয়া উপেক্ষা করা হবে

বিস্তারিত
পরামিতি
[in] aApp
Init-এ সেট করা অ্যাপ লেয়ার ডেটার একটি পয়েন্টার।
[in] aOffsetUsec
ব্যবহারে সংশোধনের পরিমাণ
[in] aIsReliable
বিল্ট-ইন লজিক দ্বারা নির্ভরযোগ্য বিবেচিত সংশোধন
[in] aIsServer
সংশোধন কি সার্ভার (গুলি) থেকে আসে
[in] aNumContributor
নোডের সংখ্যা যা এই সংশোধনে অবদান রেখেছে। 0 মানে সিঙ্ক অপারেশন থেকে কোন ফলাফল নেই।
রিটার্নস
true যদি এই অফসেট সিস্টেমের সময় সামঞ্জস্য করতে ব্যবহার করা হয়। aNumContributor 0 হলে, রিটার্ন মান উপেক্ষা করা হবে।

টাইম চেঞ্জ নোটিফিকেশন হ্যান্ডলার

void(* TimeChangeNotificationHandler)(void *const aApp, const uint64_t aNodeId, const IPAddress &aNodeAddr)

কলব্যাক ইঙ্গিত করতে যে আমরা এইমাত্র একটি সময় পরিবর্তনের বিজ্ঞপ্তি পেয়েছি।

যদি স্বয়ংক্রিয় সিঙ্ক মোড সক্ষম করা থাকে, এই কলব্যাকের পরে স্বয়ংক্রিয়ভাবে একটি সময় সিঙ্ক নির্ধারিত হবে৷ অন্যথায় অ্যাপ্লিকেশান লেয়ারটি সরাসরি সিঙ্ক অপারেশন শুরু করতে ফাংশনগুলির সিঙ্ক পরিবারকে কল করতে বেছে নিতে পারে যা সাধারণ অনুপলব্ধ-ইন-কল-ব্যাক নিয়ম দ্বারা সীমাবদ্ধ নয়। যাইহোক, এটা অবশ্যই লক্ষ করা উচিত যে এই বিশেষ কলব্যাকটি এখনও উইভ এক্সচেঞ্জ লেয়ারের কলব্যাক স্ট্যাকের উপরে রয়েছে।

বিস্তারিত
পরামিতি
[in] aApp
Init-এ সেট করা অ্যাপ লেয়ার ডেটার একটি পয়েন্টার।
[in] aNodeId
অনুরোধ নোড আইডি
[in] aNodeAddr
অনুরোধ নোড ঠিকানা

পাবলিক বৈশিষ্ট্য

FilterTime CorrectionContributor

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]

যোগাযোগ তথ্য আবিষ্কার জুড়ে শেখা.

আমি সবসময় তাজা

bool mIsAlwaysFresh

mIsInCallback

bool mIsInCallback

সত্য যদি আমরা উচ্চ স্তরে কলব্যাকের মধ্যে থাকি

mLastLikelihoodSent

int8_t mLastLikelihoodSent

mNumContributorInLastLocalSync

uint8_t mNumContributorInLastLocalSync

mRole

TimeSyncRole mRole

এই নোডের প্রকৃত ভূমিকা।

mServerState

ServerState mServerState

mService যোগাযোগ

Contact mServiceContact

mTimestampLastCorrectionFromServerOrNtp_usec

timesync_t mTimestampLastCorrectionFromServerOrNtp_usec

মনে রাখবেন এটি বুট টাইম হতে হবে কারণ আমাদের ঘুমের সময়ের জন্য ক্ষতিপূরণ প্রয়োজন

mTimestampLastLocalSync_usec

timesync_t mTimestampLastLocalSync_usec

মনে রাখবেন এটি বুট টাইম হতে হবে কারণ আমাদের ঘুমের সময়ের জন্য ক্ষতিপূরণ প্রয়োজন

পাবলিক ফাংশন

গর্ভপাত

WEAVE_ERROR Abort(
  void
)

ইঞ্জিনটিকে নিষ্ক্রিয় অবস্থায় ফিরে যেতে বাধ্য করুন, এটি যা করছে তা বাতিল করে।

নোট করুন কোন সিঙ্ক সাফল্য বা ব্যর্থতা বলা হবে. সব ওয়েভ এক্সচেঞ্জ বন্ধ হয়ে যাবে। TCP সংযোগগুলিকে আর স্পর্শ করা হবে না। আমরা ইতিমধ্যে নিষ্ক্রিয় অবস্থায় থাকলে কোন অপারেশন নেই। কলব্যাকে উপলব্ধ নয়।

বিস্তারিত
রিটার্নস
সাফল্যে WEAVE_NO_ERROR

অটো সিঙ্ক অক্ষম করুন

void DisableAutoSync(
  void
)

স্বয়ংক্রিয় সিঙ্ক নিষ্ক্রিয় করুন।

শুধুমাত্র নিষ্ক্রিয় অবস্থায় উপলব্ধ। কলব্যাকে উপলব্ধ নয়।

অটো সিঙ্ক সক্ষম করুন৷

WEAVE_ERROR EnableAutoSync(
  const int32_t aSyncPeriod_msec,
  const int32_t aNominalDiscoveryPeriod_msec,
  const int32_t aShortestDiscoveryPeriod_msec
)

স্বয়ংক্রিয় সিঙ্ক সক্ষম করুন।

শুধুমাত্র নিষ্ক্রিয় অবস্থায় উপলব্ধ। আবিষ্কার অবিলম্বে ঘটে। কলব্যাকে উপলব্ধ নয়।

বিস্তারিত
পরামিতি
[in] aSyncPeriod_msec
সিঙ্ক করার মধ্যে মিসেক সংখ্যা
[in] aNominalDiscoveryPeriod_msec
আবিষ্কারের মধ্যে মিসেক সংখ্যা, যদি কোনো যোগাযোগ ত্রুটি পরিলক্ষিত না হয়
[in] aShortestDiscoveryPeriod_msec
আবিষ্কারের মধ্যে সবচেয়ে কম সময়, মিসেকে, যদি যোগাযোগের ত্রুটি পরিলক্ষিত হয়
রিটার্নস
সাফল্যে WEAVE_NO_ERROR

GetCapacityOfContactList

int GetCapacityOfContactList(
  void
) const 

এই ইঞ্জিনটি সঞ্চয় করার জন্য কনফিগার করা হয়েছে সর্বাধিক সংখ্যক পরিচিতির জন্য সাধারণ গেটার

GetClientState

ClientState GetClientState(
  void
) const 

ক্লায়েন্ট রাষ্ট্রের জন্য সহজ গেটার

নেক্সটলাইকলিহুড পান

int8_t GetNextLikelihood(
  void
) const 

স্থায়ী জন্য সম্ভাবনা নিষ্কাশন.

OnSyncSucceeded এবং OnSyncFailed-এর কলব্যাকের মধ্যে, সিঙ্ক অপারেশন সম্পূর্ণ হওয়ার পরেই ফলাফলটি বৈধ হবে। অন্যথায় এটি ক্ষণস্থায়ী এবং পরবর্তীটি ব্যবহার করার পরিবর্তে বর্তমান সম্ভাবনা হতে পারে।

বিস্তারিত
রিটার্নস
পরবর্তী অনুরোধে ব্যবহার করার প্রতিক্রিয়ার সম্ভাবনা

GetServerState

ServerState GetServerState(
  void
) const 

সার্ভারের অবস্থার জন্য সাধারণ গেটার

InitClient

WEAVE_ERROR InitClient(
  void *const aApp,
  WeaveExchangeManager *aExchangeMgr,
  const uint8_t aEncryptionType,
  const uint16_t aKeyId,
  const int8_t aInitialLikelyhood
)

এই ক্লায়েন্ট আরম্ভ করুন.

কলব্যাকে উপলব্ধ নয়

বিস্তারিত
পরামিতি
[in] aApp
উচ্চ স্তরের ডেটার জন্য একটি পয়েন্টার, উচ্চ স্তরে কলব্যাকগুলিতে ব্যবহৃত হয়।
[in] aExchangeMgr
সিস্টেম ওয়াইড উইভ এক্সচেঞ্জ ম্যানেজার অবজেক্টের একটি পয়েন্টার
[in] aRole
হয় kTimeSyncRole_Client বা kTimeSyncRole_Coordinator হতে পারে
[in] aEncryptionType
অনুরোধ এবং প্রতিক্রিয়ার জন্য এনক্রিপশন টাইপ ব্যবহার করা হবে
[in] aKeyId
কী আইডি অনুরোধ এবং প্রতিক্রিয়ার জন্য ব্যবহার করা হবে
[in] 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
)

এই সমন্বয়কারী শুরু করুন।

বিস্তারিত
পরামিতি
[in] aExchangeMgr
সিস্টেম ওয়াইড উইভ এক্সচেঞ্জ ম্যানেজার অবজেক্টের একটি পয়েন্টার
[in] aEncryptionType
অনুরোধ এবং প্রতিক্রিয়ার জন্য এনক্রিপশন টাইপ ব্যবহার করা হবে
[in] aKeyId
কী আইডি অনুরোধ এবং প্রতিক্রিয়ার জন্য ব্যবহার করা হবে
[in] aSyncPeriod_msec
সিঙ্ক করার মধ্যে মিসেক সংখ্যা
[in] aNominalDiscoveryPeriod_msec
আবিষ্কারের মধ্যে সংক্ষিপ্ততম সময়, মিসেকে, যদি কোনো যোগাযোগ ত্রুটি পরিলক্ষিত না হয়
[in] aShortestDiscoveryPeriod_msec
আবিষ্কারের মধ্যে ক্ষুদ্রতম সংখ্যক মিসেক, যদি যোগাযোগের ত্রুটি পরিলক্ষিত হয়
রিটার্নস
সাফল্যে WEAVE_NO_ERROR

ইনিটসার্ভার

WEAVE_ERROR InitServer(
  void *const aApp,
  WeaveExchangeManager *const aExchangeMgr,
  const bool aIsAlwaysFresh
)

টাইম সিঙ্ক সার্ভারের উদ্দেশ্য হলে অবজেক্ট নির্মাণের পর প্রথম ফাংশন হিসেবে সার্ভারের ভূমিকাকে ইনিশিয়ালাইজ করতে হবে।

কলব্যাকে উপলব্ধ নয়

বিস্তারিত
পরামিতি
[in] aApp
উচ্চ স্তরের ডেটার জন্য একটি পয়েন্টার, উচ্চ স্তরে কলব্যাকগুলিতে ব্যবহৃত হয়।
[in] aExchangeMgr
সিস্টেম ওয়াইড উইভ এক্সচেঞ্জ ম্যানেজার অবজেক্টের একটি পয়েন্টার
[in] aIsAlwaysFresh
প্রাথমিক অবিশ্বস্ত সময় ব্যতীত সার্ভারটি সর্বদা সিঙ্ক হয় তা নির্দেশ করার জন্য সত্যে সেট করা যেতে পারে। সমন্বয়কারীর জন্য মিথ্যা সেট করা হবে।
রিটার্নস
সাফল্যে WEAVE_NO_ERROR

মাল্টিকাস্টটাইম চেঞ্জ নোটিফিকেশন

void MulticastTimeChangeNotification(
  const uint8_t aEncryptionType,
  const uint16_t aKeyId
) const 

মাল্টিকাস্ট সময় পরিবর্তন বিজ্ঞপ্তি থেকে উচ্চ স্তর দ্বারা বলা হয়.

কলব্যাকে উপলব্ধ নয়।

বিস্তারিত
পরামিতি
[in] aEncryptionType
এই বিজ্ঞপ্তির জন্য ব্যবহার করা এনক্রিপশনের ধরন
[in] aKeyId
এই বিজ্ঞপ্তির জন্য কী আইডি ব্যবহার করতে হবে

Register CorrectionFromServerOrNtp

void RegisterCorrectionFromServerOrNtp(
  void
)

উচ্চতর স্তর দ্বারা বলা হয়েছে যে আমরা সবেমাত্র যে কোনও সার্ভারের সাথে বা NTP-এর মতো কিছু নির্ভরযোগ্য উপায়ের মাধ্যমে এক রাউন্ড সময়ের সিঙ্ক শেষ করেছি।

RegisterLocalSyncOperation

void RegisterLocalSyncOperation(
  const uint8_t aNumContributor
)

উচ্চতর স্তর দ্বারা বলা হয়েছে যে আমরা এইমাত্র অন্যান্য স্থানীয় সমন্বয়কারীর সাথে এক রাউন্ড সময়ের সিঙ্ক শেষ করেছি।

বিস্তারিত
পরামিতি
[in] aNumContributor
সমন্বয়কারীর সংখ্যা এই সময় সিঙ্ক অবদান

শাটডাউন

WEAVE_ERROR Shutdown(
  void
)

পরিষেবাটি বন্ধ করুন, এটি যে ভূমিকা পালন করছে তা কোন ব্যাপার না।

যেকোনো init ফাংশনে আরেকটি কল করার আগে বরাদ্দকৃত সম্পদ সঠিকভাবে পুনরুদ্ধার করার জন্য এই ফাংশনটি কল করা আবশ্যক। কলব্যাকে উপলব্ধ নয়।

বিস্তারিত
রিটার্নস
সাফল্যে WEAVE_NO_ERROR

সুসংগত

WEAVE_ERROR Sync(
  const bool aForceDiscoverAgain
)

বিদ্যমান পরিচিতি ব্যবহার করে সিঙ্ক করুন।

কোনো বৈধ পরিচিতি উপলব্ধ না থাকলে সিঙ্ক অপারেশন ব্যর্থ হতে পারে। অবিলম্বে আবিষ্কার করতে বাধ্য করতে aForceDiscoverAgain সত্যে সেট করুন। শুধুমাত্র নিষ্ক্রিয় অবস্থায় উপলব্ধ। কলব্যাকে উপলব্ধ নয়।

বিস্তারিত
পরামিতি
[in] aForceDiscoverAgain
সত্য যদি সমস্ত বিদ্যমান পরিচিতিগুলি ফ্লাশ করা হয় এবং আবিষ্কার অপারেশন করা হয়
রিটার্নস
সাফল্যে WEAVE_NO_ERROR

SyncWithNodes

WEAVE_ERROR SyncWithNodes(
  const int16_t aNumNode,
  const ServingNode aNodes[]
)

পরিচিতিগুলির প্রদত্ত তালিকা ব্যবহার করে সিঙ্ক করুন।

বিদ্যমান যোগাযোগ তালিকা ফ্লাশ করা হবে। শুধুমাত্র নিষ্ক্রিয় অবস্থায় উপলব্ধ। কলব্যাকে উপলব্ধ নয়।

বিস্তারিত
পরামিতি
[in] aNumNode
অ্যারে অ্যানোডে যোগাযোগের সংখ্যা
[in] aNodes
যোগাযোগ রেকর্ডের অ্যারে
রিটার্নস
সাফল্যে WEAVE_NO_ERROR

SyncWithService

WEAVE_ERROR SyncWithService(
  WeaveConnection *const aConnection
)

প্রদত্ত TCP সংযোগ এবং সংশ্লিষ্ট এনক্রিপশন এবং কী আইডি ব্যবহার করে সিঙ্ক করুন।

সিঙ্ক শেষ হওয়ার পরে কলারকে অবশ্যই TCP সংযোগের মালিকানা নিতে হবে। টিসিপি সংযোগের জন্য কোনো কলব্যাক ওভাররাইট করা হবে না, কারণ একটি নতুন ওয়েভ এক্সচেঞ্জ তৈরি করা হবে এবং সেই প্রসঙ্গটির উপরে কলব্যাকগুলি শুধুমাত্র নিষ্ক্রিয় অবস্থায় উপলব্ধ। কলব্যাকে উপলব্ধ নয়।

বিস্তারিত
পরামিতি
[in] aConnection
ওয়েভ সংযোগের জন্য একটি পয়েন্টার
রিটার্নস
সাফল্যে 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
)

অ্যাপ্লিকেশন স্তরে কলব্যাক প্ররোচিত করুন।

ত্রুটি কলব্যাক প্ররোচিত করতে মিথ্যা থেকে aIsSuccessful সেট করুন

ক্লিয়ারস্টেট

void ClearState(
  void
)

DestroyCommContext

bool DestroyCommContext(
  void
)

ওয়েভ এক্সচেঞ্জ কনটেক্সট বন্ধ করুন

EndLocalSyncAndTryCalculateTimeFix

void EndLocalSyncAndTryCalculateTimeFix(
  void
)

EndServiceSyncAndTryCalculateTimeFix

void EndServiceSyncAndTryCalculateTimeFix(
  void
)

প্রতিস্থাপনযোগ্য যোগাযোগ খুঁজুন

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
)

সকল পরিচিতি বাতিল করুন

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 উভয়ই পরীক্ষা করবে।

সেটAllCompletedContactsToIdle

int16_t SetAllCompletedContactsToIdle(
  void
)

সমস্ত সম্পূর্ণ পরিচিতি নিষ্ক্রিয় অবস্থায় পুনরায় সেট করুন, কিন্তু প্রতিক্রিয়া স্পর্শ করবেন না।

এটিকে বলা হয় একই নোডে যোগাযোগের দুই রাউন্ডের মধ্যে

SetAllValidContactsToIdleAndInvalidateResponse

int16_t SetAllValidContactsToIdleAndInvalidateResponse(
  void
)

সমস্ত বৈধ স্থানীয় পরিচিতি নিষ্ক্রিয় অবস্থায় সেট করুন এবং প্রতিক্রিয়া সাফ করুন।

আমরা একে একে তাদের সাথে যোগাযোগ শুরু করার আগে এটি বলা হয়

সেটক্লায়েন্টস্টেট

void SetClientState(
  const ClientState state
)

ইউনিকাস্টকম কনটেক্সট সেটআপ করুন

WEAVE_ERROR SetupUnicastCommContext(
  Contact *const aContact
)

ইউনিকাস্ট যোগাযোগের জন্য নতুন ওয়েভ এক্সচেঞ্জ তৈরি করুন

দোকান বিজ্ঞপ্তি যোগাযোগ

void StoreNotifyingContact(
  const uint64_t aNodeId,
  const IPAddress & aNodeAddr
)

একটি নোডের যোগাযোগের তথ্য সঞ্চয় করুন যিনি আমাদের একটি সময় পরিবর্তনের বিজ্ঞপ্তি পাঠিয়েছেন

মাল্টিকাস্ট সিঙ্ক রেসপন্স আপডেট করুন

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 সেট করতে হবে। কলব্যাকে উপলব্ধ নয়

বিস্তারিত
পরামিতি
[in] aEncryptionType
অনুরোধ এবং প্রতিক্রিয়ার জন্য এনক্রিপশন টাইপ ব্যবহার করা হবে
[in] aKeyId
কী আইডি অনুরোধ এবং প্রতিক্রিয়ার জন্য ব্যবহার করা হবে
[in] aInitialLikelyhood
আবিষ্কার পর্যায়ের জন্য ব্যবহার করার প্রাথমিক সম্ভাবনা
রিটার্নস
সাফল্যে WEAVE_NO_ERROR

_InitServer

WEAVE_ERROR _InitServer(
  const bool aIsAlwaysFresh
)

সার্ভার ভূমিকার জন্য আরম্ভ করুন।

পাবলিক ফাংশনগুলির Init পরিবারের অভ্যন্তরীণভাবে ব্যবহার করার উদ্দেশ্যে। ফিরে আসার আগে অবশ্যই mClientState সেট করতে হবে। কলব্যাকে উপলব্ধ নয়

বিস্তারিত
পরামিতি
[in] aIsAlwaysFresh
প্রাথমিক অবিশ্বস্ত সময় ব্যতীত সার্ভারটি সর্বদা সিঙ্ক হয় তা নির্দেশ করার জন্য সত্যে সেট করা যেতে পারে। সমন্বয়কারীর জন্য মিথ্যা সেট করা হবে।
রিটার্নস
সাফল্যে WEAVE_NO_ERROR

_শাটডাউন ক্লায়েন্ট

WEAVE_ERROR _ShutdownClient(
  void
)

কলব্যাক এ উপলব্ধ ক্লায়েন্ট বন্ধ করুন।

বিস্তারিত
রিটার্নস
সাফল্যে WEAVE_NO_ERROR

_শাটডাউন কোঅর্ডিনেটর

WEAVE_ERROR _ShutdownCoordinator(
  void
)

কলব্যাকে উপলভ্য সমন্বয়কারী বন্ধ করুন।

বিস্তারিত
রিটার্নস
সাফল্যে WEAVE_NO_ERROR

_শাটডাউন সার্ভার

WEAVE_ERROR _ShutdownServer(
  void
)

কলব্যাকগুলিতে উপলব্ধ সার্ভার বন্ধ করুন।

বিস্তারিত
রিটার্নস
সাফল্যে WEAVE_NO_ERROR

সুরক্ষিত স্ট্যাটিক ফাংশন

হ্যান্ডেল অটো ডিসকভারি টাইমআউট

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
)

একটি সময় সিঙ্ক অনুরোধ আসে যখন Weave Exchange থেকে কলব্যাক

HandleTimeChangeNotification

void 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
)

ওয়েভ টাইমার থেকে কলব্যাক যখন আমরা বুট বাধার পরে অবিশ্বাস্য পাস করি

আইএসঅপারেশনাল স্টেট

bool IsOperationalState(
  ClientState aState
)

প্রদত্ত রাষ্ট্র কার্যকর কিনা তা নির্ধারণ করুন।

ক্লায়েন্টস্টেট অপারেশনাল অবস্থাকে বোঝায় কিনা তা নির্ধারণ করার সুবিধার পদ্ধতি, অর্থাৎ ক্লায়েন্ট আরম্ভ সম্পন্ন করেছে এবং বন্ধ করার প্রক্রিয়ায় নেই।

বিস্তারিত
পরামিতি
[in] aState
রাষ্ট্র মূল্যায়ন করা
রিটার্নস
সূচনা শেষ হওয়ার পরে এবং শাটডাউন শুরু হওয়ার আগে যদি রাজ্যটি পড়ে তবে সত্য, অন্যথায় মিথ্যা।

_OnSyncSucceeded

bool _OnSyncSucceeded(
  void *const aApp,
  const nl::Weave::Profiles::Time::timesync_t aOffsetUsec,
  const bool aIsReliable,
  const bool aIsServer,
  const uint8_t aNumContributor
)