Google is committed to advancing racial equity for Black communities. See how.

এনএল :: তাঁত :: প্রোফাইল :: পরিষেবা নির্দেশিকা :: ওয়েভ সার্ভিস ম্যানেজার

#include <src/lib/profiles/service-directory/ServiceDirectory.h>

ওয়েভ পরিষেবা ডিরেক্টরিটির পরিচালক পরিচালক।

সারসংক্ষেপ

ডিরেক্টরি পরিষেবাতে অ্যাপ্লিকেশনগুলির জন্য ওয়েভ সার্ভিস ম্যানেজার হ'ল প্রধান ইন্টারফেস। এই হিসাবে, এটি কোনও পরিষেবা শেষ পয়েন্টের সাথে যুক্ত ডিরেক্টরি এন্ট্রি সন্ধান করার জন্য, সেখানে পাওয়া হোস্টের এক বা একাধিক ডিএনএস লুকআপ করে, সংযোগের চেষ্টা করে, সংযোগটি সুরক্ষিত করা এবং এ জাতীয় জটিলতাগুলি লুকিয়ে রাখে। এটি পরিষেবা ডিরেক্টরি তথ্যের ক্যাশে পরিচালনাও করতে পারে।

নির্মাণকারী এবং ধ্বংসকারী

WeaveServiceManager (void)
এই পদ্ধতি সূচনা WeaveServiceManager উদাহরণস্বরূপ।
~WeaveServiceManager (void)
এই পদ্ধতি destructs WeaveServiceManager উদাহরণস্বরূপ।

পাবলিক প্রকার

@303 {
kWeave_DefaultSendTimeout = 15000
}
এনাম
OnConnectBegin )(struct ServiceConnectBeginArgs &args) এনএল :: ওয়েভ :: প্রোফাইল :: সার্ভিস ডাইরেক্টরি :: ওয়েভ সার্ভিস ম্যানেজার :: অনকনেক্টবাইগেন
void(*
সংযোগ স্থাপনের আগেই একটি অ্যাপ্লিকেশন কলব্যাক করা হয়েছিল।
OnServiceEndpointQueryBegin )(void) এনএল :: ওয়েভ :: প্রোফাইল :: সার্ভিস ডাইরেক্টরি :: ওয়েভ সার্ভিস ম্যানেজার :: অন সার্ভিসঅ্যান্ডপয়েন্ট
void(*
বহির্গামী পরিষেবা ডিরেক্টরি ক্যোয়ারির সময় চিহ্নিত করার জন্য একটি অ্যাপ্লিকেশন কলব্যাক।
OnServiceEndpointQueryEndWithTimeInfo )(uint64_t timeQueryReceiptMsec, uint32_t timeProcessMsec) এনএল :: ওয়েভ :: প্রোফাইল :: সার্ভিস ডাইরেক্টরি :: ওয়েভ সার্ভিস ম্যানেজার :: অন সার্ভিসঅ্যান্ডপয়েন্ট কুইরিএন্ড উইথটাইমআইএনফো
void(*
পরিষেবা ডিরেক্টরি প্রতিক্রিয়া থেকে সময়ের মানগুলি সরবরাহ করার জন্য একটি অ্যাপ্লিকেশন কলব্যাক।
RootDirectoryAccessor )(uint8_t *aDirectory, uint16_t aLength) এনএল :: ওয়েভ :: প্রোফাইল :: সার্ভিস ডাইরেক্টরি :: ওয়েভ সার্ভিস ম্যানেজার :: রুট ডিরেক্টরীএ্যাকসেসর
রুট ডিরেক্টরি তথ্যের জন্য একটি অ্যাক্সেসর ফাংশন।
StatusHandler )(void *anAppState, WEAVE_ERROR anError, StatusReport *aStatusReport) এনএল :: ওয়েভ :: প্রোফাইল :: সার্ভিস ডিরেক্টরী :: ওয়েইস সার্ভিস ম্যানেজার :: স্ট্যাটাসহ্যান্ডলার
void(*
ত্রুটি এবং স্থিতির শর্তগুলির জন্য একটি হ্যান্ডলার।

পাবলিক ফাংশন

SetConnectBeginCallback ( OnConnectBegin aConnectBegin)
void
সংযোগ স্থাপনের আগে তত্ক্ষণাত্ কল করার জন্য একটি কলব্যাক ফাংশন সেট করুন।
cancel (uint64_t aServiceEp, void *aAppState)
void
এই পদ্ধতিটি একটি সংযোগের অনুরোধ বাতিল করে।
clearCache (void)
void
এই পদ্ধতিটি যদি রাষ্ট্র টার্মিনাল কেএসওয়ার্সএমগ্রিস্টেট_সেসলভ অবস্থায় থাকে তবে এর মানে হল যে পরিষেবা ডিরেক্টরি শেষ পয়েন্টটি থেকে প্রতিক্রিয়া প্রাপ্ত হয়েছিল তা এই পরিচালক এবং পরিচালকের ক্যাশে সাফ করে।
connect (uint64_t aServiceEp, WeaveAuthMode aAuthMode, void *aAppState, StatusHandler aStatusHandler, WeaveConnection::ConnectionCompleteFunct aConnectionCompleteHandler, const uint32_t aConnectTimeoutMsecs, const InterfaceId aConnectIntf)
এই পদ্ধতির অনুরোধগুলি একটি ওয়েভ পরিষেবার সাথে সংযোগ স্থাপন করে।
init ( WeaveExchangeManager *aExchangeMgr, uint8_t *aCache, uint16_t aCacheLen, RootDirectoryAccessor aAccessor, WeaveAuthMode aDirAuthMode, OnServiceEndpointQueryBegin aServiceEndpointQueryBegin, OnServiceEndpointQueryEndWithTimeInfo aServiceEndpointQueryEndWithTimeInfo, OnConnectBegin aConnectBegin)
এই পদ্ধতিটি পরিষেবা পরিচালকের অবজেক্টটিকে সূচনা করে।
lookup (uint64_t aServiceEp, HostPortList *outHostPortList)
এই পদ্ধতিটি কোনও পরিষেবা শেষ পয়েন্টের জন্য ডিরেক্টরি সম্পর্কিত তথ্য সন্ধান করে।
lookup (uint64_t aServiceEp, uint8_t *aControlByte, uint8_t **aDirectoryEntry)
এই পদ্ধতিটি কোনও পরিষেবা শেষ পয়েন্টের জন্য ডিরেক্টরি সম্পর্কিত তথ্য সন্ধান করে।
onConnectionClosed ( WEAVE_ERROR aError)
void
এই পদ্ধতিটি সংযুক্ত ওয়েভ এক্সচেঞ্জ প্রসঙ্গে রিপোর্ট করা সংযোগ বন্ধ ইভেন্টটি পরিচালনা করে।
onConnectionComplete ( WEAVE_ERROR aError)
void
এই পদ্ধতিটি পরিষেবাটির শেষ পয়েন্ট ক্যোয়ারী লেনদেনের জন্য সংযোগ সম্পন্ন ইভেন্ট পরিচালনা করে।
onResponseReceived (uint32_t aProfileId, uint8_t aMsgType, PacketBuffer *aMsg)
void
এই পদ্ধতিটি ডিরেক্টরি পরিষেবার সাথে কথোপকথনে যে কোনও প্রতিক্রিয়া বার্তা পরিচালনা করে।
onResponseTimeout (void)
void
এই পদ্ধতিটি টাইমআউট ইভেন্ট পরিচালনা করে, যাতে ডিরেক্টরি পরিষেবা থেকে কোনও সাড়া পাওয়া যায়নি।
relocate ( WEAVE_ERROR aError)
void
এই পদ্ধতিটি পরিষেবা ডিরেক্টরি ক্যাশে স্থানান্তরিত করে।
relocate (void)
void
এই পদ্ধতিটি পরিষেবা ডিরেক্টরি ক্যাশে স্থানান্তরিত করে।
replaceOrAddCacheEntry (uint16_t port, const char *hostName, uint8_t hostLen, uint64_t serviceEndpointId)
ডিরেক্টরি তালিকার শুরুতে হোস্টনাম এবং পোর্ট আইডির ওভাররাইডিং ডিরেক্টরি এন্ট্রি যুক্ত করুন।
reset ( WEAVE_ERROR aError)
void
এই পদ্ধতিটি পরিষেবা পরিচালককে তার প্রাথমিক অবস্থায় পুনরায় সেট করে।
reset (void)
void
এই পদ্ধতিটি পরিষেবা পরিচালককে তার প্রাথমিক অবস্থায় পুনরায় সেট করে।
unresolve ( WEAVE_ERROR aError)
void
এই পদ্ধতিটি পরিষেবা ডিরেক্টরি ক্যাশে অবৈধ করে।
unresolve (void)
void
এই পদ্ধতিটি পরিষেবা ডিরেক্টরি ক্যাশে অবৈধ করে।

ক্লাস

nl এর :: বুনা :: প্রোফাইল :: ServiceDirectory :: WeaveServiceManager :: ConnectRequest

এই শ্রেণিটি পরিষেবা পরিচালকের দ্বারা পরিচালিত একটি একক লেনদেনের প্রতিনিধিত্ব করে।

পাবলিক প্রকার

@ 303

 @303
সম্পত্তি
kWeave_DefaultSendTimeout

এক্সচেঞ্জের প্রসঙ্গের সময় শেষ হওয়ার আগে ডিরেক্টরি ক্যোয়ারির জন্য মিলি সেকেন্ডের একটি প্রতিক্রিয়া অবশ্যই পাওয়া উচিত।

অনকনেক্টবেগিন

void(* OnConnectBegin)(struct ServiceConnectBeginArgs &args)

সংযোগ স্থাপনের আগেই একটি অ্যাপ্লিকেশন কলব্যাক করা হয়েছিল।

এই কলব্যাকটি অ্যাপ্লিকেশনগুলির দ্বারা একটি পরিষেবা সংযোগ স্থাপনের সময় #WeaveConnication :: সংযুক্ত () এ পাস হওয়া আর্গুমেন্টগুলি পর্যবেক্ষণ এবং optionচ্ছিকভাবে প্রয়োগ করতে ব্যবহার করা যেতে পারে। এই কলব্যাকটি লক্ষ্য পরিষেবাটি শেষের পয়েন্টের সাথে সংযোগের জন্য, পাশাপাশি ডিরেক্টরি নির্দেশনা সম্পাদন করতে হবে এমন ইভেন্টে পরিষেবা ডিরেক্টরি শেষ পয়েন্টের সংযোগের জন্য উভয়কেই ডাকা হবে।

অন ​​সার্ভিসঅ্যান্ডপয়েন্ট কিওয়ারিবেগিন

void(* OnServiceEndpointQueryBegin)(void)

বহির্গামী পরিষেবা ডিরেক্টরি ক্যোয়ারির সময় চিহ্নিত করার জন্য একটি অ্যাপ্লিকেশন কলব্যাক।

যখন আমরা পরিষেবাটি শেষ পয়েন্টের ক্যোয়ারী অনুরোধটি প্রেরণ করতে চলেছি তখন এটি বলা হয়। এটি বার্তা ফ্লাইটের সময়টির জন্য ক্ষতিপূরণ দেওয়ার জন্য OnServiceEndPointQueryEnd এর সাথে মেলে ব্যবহৃত হয়।

অনসেসিওয়েডপয়েন্টকিউয়ারি ও উইন্ডটাইমআইএনফো o

void(* OnServiceEndpointQueryEndWithTimeInfo)(uint64_t timeQueryReceiptMsec, uint32_t timeProcessMsec)

পরিষেবা ডিরেক্টরি প্রতিক্রিয়া থেকে সময়ের মানগুলি সরবরাহ করার জন্য একটি অ্যাপ্লিকেশন কলব্যাক।

যখন আমরা পরিষেবা ডিরেক্টরি ক্যোয়ারী প্রতিক্রিয়া থেকে সময় তথ্য পেয়ে থাকি তখন এটিকে বলা হয় দ্রষ্টব্য এই কলব্যাকটি তখনই ঘটবে যদি কোনও সাড়া সফলভাবে পার্স করা হয় এবং সময় তথ্য অন্তর্ভুক্ত করা হয়

বিশদ
পরামিতি
[in] timeQueryReceiptMsec
POSIX পর্বের পর থেকে এমসির সংখ্যা, যখন সার্ভারের পাশে কোয়েরিটি পাওয়া গেছে।
[in] timeProcessMsec
এই ক্যোয়ারীটি প্রক্রিয়াকরণ করতে ব্যয় করেছে ম্যাসেকের সংখ্যা।

রুট ডিরেক্টরীএ্যাকসেসর

WEAVE_ERROR(* RootDirectoryAccessor)(uint8_t *aDirectory, uint16_t aLength)

রুট ডিরেক্টরি তথ্যের জন্য একটি অ্যাক্সেসর ফাংশন।

আপনি কোথাও শুরু করতে হবে এবং পরিষেবা ডিরেক্টরিটি দিয়ে আপনি স্টাব ডিরেক্টরি দিয়ে শুরু করতে হবে যাতে কোনও সার্ভারের ঠিকানা রয়েছে যা আপনি অন্য কিছুতে পেতে পারেন hit যেহেতু এই তথ্যের স্বরূপতা এবং প্রবর্তন সম্ভবত ডিভাইস থেকে অন্য ডিভাইসে পরিবর্তিত হতে পারে, তাই আমরা এখানে একটি অ্যাক্সেসর কলব্যাক সরবরাহ করি।

বিশদ
পরামিতি
[out] aDirectory
ডিরেক্টরি সম্পর্কিত তথ্য লেখার জন্য বাফারের পয়েন্টার।
[in] aLength
বাইটে প্রদত্ত বাফারের দৈর্ঘ্য।
ফিরে আসে
WEAVE_NO_ERROR সাফল্যের, অন্যথায় লোড প্রক্রিয়াটি বাতিল করা হবে।

স্ট্যাটাসহ্যান্ডলার

void(* StatusHandler)(void *anAppState, WEAVE_ERROR anError, StatusReport *aStatusReport)

ত্রুটি এবং স্থিতির শর্তগুলির জন্য একটি হ্যান্ডলার।

পরিষেবা পরিচালকের একজন ব্যবহারকারীকে দুটি উপায়ে একটির মাধ্যমে সংযোগের অনুরোধটি কার্যকর করতে চেষ্টা করতে সমস্যা সম্পর্কে অবহিত হতে পারে। এটি পরিষেবা থেকে কোনও স্থিতির প্রতিবেদন পেতে পারে বা এটি অভ্যন্তরীণভাবে উত্পন্ন WEAVE_ERROR গ্রহণ করতে পারে। উভয় ক্ষেত্রেই তথ্য এই কলব্যাকের মাধ্যমে আসে।

বিশদ
পরামিতি
[in] anAppState
সংশ্লিষ্ট অ্যাপ্লিকেশন বস্তুর পয়েন্টার যা সংশ্লিষ্ট কনপেক্ট () কলটিতে পাস হয়েছিল।
[in] anError
সংযুক্তির অনুরোধটি কার্যকর করার চেষ্টা করার সময় ত্রুটির নির্দেশক একটি ওয়েভ ত্রুটি কোড ঘটেছিল। এই হইবে WEAVE_NO_ERROR ক্ষেত্রে যেখানে ত্রুটি উঠে এবং স্থিতি প্রতিবেদন পাওয়া যায় না।
[in] aStatusReport
দূরবর্তী ডিরেক্টরি পরিষেবা দ্বারা উত্পন্ন স্থিতি প্রতিবেদনের পয়েন্টার। এই যুক্তিটি এমন ক্ষেত্রে ন্যূনাল হবে যেখানে কোনও স্থিতি প্রতিবেদন ছিল না এবং পূর্ববর্তী যুক্তিতে একটি অভ্যন্তরীণ ত্রুটি পাস হয়েছিল।

পাবলিক ফাংশন

সেট কানেক্টবাইগেনক্যালব্যাক

void SetConnectBeginCallback(
  OnConnectBegin aConnectBegin
)

সংযোগ স্থাপনের আগে তত্ক্ষণাত্ কল করার জন্য একটি কলব্যাক ফাংশন সেট করুন।

বিশদ
পরামিতি
[in] aConnectBegin
কলব্যাক ফাংশনের একটি পয়েন্টার। NULL এর একটি মান কলব্যাকটি অক্ষম করে।

ওয়েভ সার্ভিস ম্যানেজার

 WeaveServiceManager(
  void
)

এই পদ্ধতি সূচনা WeaveServiceManager উদাহরণস্বরূপ।

লক্ষ্য করুন Init () আরও আরম্ভ করতে এই ক্ষেত্রটিকেই নামক ইন করতে হবে।

বাতিল

void cancel(
  uint64_t aServiceEp,
  void *aAppState
)

এই পদ্ধতিটি একটি সংযোগের অনুরোধ বাতিল করে।

পরিষেবাটি শেষ পয়েন্ট আইডি এবং শনাক্তকারী হিসাবে অনুরোধের সময় অ্যাপ্লিকেশন স্টেট অবজেক্টটি প্রদত্ত একটি সংযোগ অনুরোধ এই পদ্ধতিটি বাতিল করে। এটি যদি সর্বশেষ সংযোগের অনুরোধ হয় তবে এই পদ্ধতিটি কোনও মুলতুবি পরিষেবা ডিরেক্টরি সংযোগের অবস্থাও সাফ করে দেয়।

বিশদ
পরামিতি
[in] aServiceEp
অনুরোধটির পরিষেবা শেষ পয়েন্ট আইডি বাতিল করা হচ্ছে।
[in] anAppState
অ্যাপ্লিকেশান স্থিতি দেওয়া বস্তুর একটি পয়েন্টার কানেক্ট () কল।

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

void clearCache(
  void
)

এই পদ্ধতিটি যদি রাষ্ট্র টার্মিনাল কেএসওয়ার্সএমগ্রিস্টেট_সেসলড অবস্থায় থাকে তবে এর মানে হল যে পরিষেবা ডিরেক্টরি শেষ পয়েন্টটি থেকে প্রতিক্রিয়া প্রাপ্ত হয়েছিল manager

সংযোগ

WEAVE_ERROR connect(
  uint64_t aServiceEp,
  WeaveAuthMode aAuthMode,
  void *aAppState,
  StatusHandler aStatusHandler,
  WeaveConnection::ConnectionCompleteFunct aConnectionCompleteHandler,
  const uint32_t aConnectTimeoutMsecs,
  const InterfaceId aConnectIntf
)

এই পদ্ধতির অনুরোধগুলি একটি ওয়েভ পরিষেবার সাথে সংযোগ স্থাপন করে।

এটি শীর্ষ স্তরের সংযোগ কল। এটি মূলত ওয়েভ পরিষেবাদির সাথে একটি পরিষেবা শেষ পয়েন্ট এবং একটি প্রমাণীকরণ মোড দেয় বা একটি প্রয়াসের ফলে মারা যায় একটি সুরক্ষিত সংযোগ উত্পাদন করে।

এই পদ্ধতি কেবল সফল কল পর বলা যেতে পারে init () , এবং একটি সংযোগের অনুরোধের সম্ভাব্য বাতিল করা যেতে পারে () বাতিল

স্থানীয় ক্যাশেটি ডিফল্ট বিধানযুক্ত ডেটা বা ডিরেক্টরি ডিরেক্টরি পরিষেবাতে ট্রিপ থেকে ডেটা ভরা হওয়ার আগে এই পদ্ধতিটি বলা যেতে পারে। ক্যাশে সামগ্রী নির্ধারণের আগে সার্ভিস ম্যানেজার কেবল অনুরোধটির সারিটি সারি করতেন।

বিশদ
পরামিতি
[in] aServiceEp
সেবা শেষবিন্দু আইডেন্টিফায়ার, যেমন সংজ্ঞায়িত ServiceDirectory.h সুদের সেবার জন্য।
[in] aAuthMode
আগ্রহের পরিষেবার সাথে সংযোগ করার সময় ব্যবহার করার জন্য প্রমাণীকরণ মোড।
[in] aAppState
একটি অ্যাপ্লিকেশন স্টেট অবজেক্টের একটি পয়েন্টার, আর্গুমেন্ট হিসাবে কলব্যাকগুলিতে প্রেরণ।
[in] aStatusHandler
সংযোগটি শেষ হওয়ার আগে ঘটে এমন একটি ত্রুটির ক্ষেত্রে ডাকে একটি কলব্যাক।
[in] aConnectionCompleteHandler
অনুরোধ করা সংযোগটি সম্পন্ন হয়েছে এমন ক্ষেত্রে কল করার জন্য একটি কলব্যাক। নোট করুন যে ওয়েভ ত্রুটি কোডের সাথে সংযোগটি ব্যর্থ হতে পারে।
[in] aConnectTimeoutMsecs
Tচ্ছিক টিসিপি সংযুক্ত সময়সীমা মিলিসেকেন্ডে।
[in] aConnectIntf
Connectionচ্ছিক ইন্টারফেস যার উপর সংযোগ স্থাপন করা হবে।
ফিরে আসে
WEAVE_NO_ERROR সাফল্যের; অন্যথায়, একটি সম্পর্কিত ত্রুটি কোড।

এটা

WEAVE_ERROR init(
  WeaveExchangeManager *aExchangeMgr,
  uint8_t *aCache,
  uint16_t aCacheLen,
  RootDirectoryAccessor aAccessor,
  WeaveAuthMode aDirAuthMode,
  OnServiceEndpointQueryBegin aServiceEndpointQueryBegin,
  OnServiceEndpointQueryEndWithTimeInfo aServiceEndpointQueryEndWithTimeInfo,
  OnConnectBegin aConnectBegin
)

এই পদ্ধতিটি পরিষেবা পরিচালকের অবজেক্টটিকে সূচনা করে।

ব্যবহার করার জন্য, কোনও পরিষেবা পরিচালকের অবজেক্টটি শুরু করতে হবে। এই পদ্ধতি একটি সফল কল করার পর, ক্লায়েন্ট কলিং শুরু করতে পারেন কানেক্ট () , লুকআপ () , এবং অন্যান্য পদ্ধতি।

বিশদ
পরামিতি
[in] aExchangeMgr
সমস্ত পরিষেবা ডিরেক্টরি প্রোফাইল এক্সচেঞ্জের জন্য এক্সচেঞ্জ ম্যানেজারের একটি পয়েন্টার।
[in] aCache
একটি বাফারের পয়েন্টার যা ডিরেক্টরি তথ্য ক্যাশে করতে ব্যবহৃত হতে পারে।
[in] aCacheLen
ক্যাশের বাইটে দৈর্ঘ্য।
[in] aAccessor
কলব্যাক, যেমন সংজ্ঞায়িত ServiceDirectory.h অর্ডার ডিরেক্টরির লুকআপ একটি আদ্যস্থল হিসাবে রুট ডিরেক্টরিটি লোড করার জন্য ডাকা।
[in] aDirAuthMode
ডিরেক্টরি পরিষেবায় কথা বলার সময় ব্যবহার করার জন্য প্রমাণীকরণ মোড।
[in] aServiceEndpointQueryBegin
সার্ভিস ডিরেক্টরি অনুরোধের শুরুতে বলা হয় এবং সার্ভিস ডিরেক্টরি প্রোটোকল দ্বারা প্রদত্ত সময় সিঙ্ক্রোনাইজেশনটি ব্যবহার করতে ইচ্ছুক হলে অ্যাপ্লিকেশন কোডটিকে সময় চিহ্নিত করার অনুমতি দেয় এমন একটি ফাংশন পয়েন্টার, যা সার্ভিস ডিরেক্টরি অনুরোধের শুরুতে বলা হয়।
[in] aServiceEndpointQueryEndWithTimeInfo
OnServiceEndPointQueryEndWithTimeInfo টাইপের একটি ফাংশন পয়েন্টার, এটি একটি পরিষেবা ডিরেক্টরি প্রাপ্তির জন্য বলা হয় যা অ্যাপ্লিকেশনগুলিকে প্রতিক্রিয়াতে দেওয়া সময় ক্ষেত্রগুলি ব্যবহার করে ওয়েভ পরিষেবার সাথে সিঙ্ক্রোনাইজ করতে দেয়। এই কলব্যাকটি পরিষেবা ব্যবস্থাপক সময়ের তথ্যের সাথে প্রতিক্রিয়া পাওয়ার পরে তৈরি করা হবে। কলব্যাক করার আগে ক্যাশেটি ইতিমধ্যে সফলভাবে পূরণ করা উচিত।
[in] aConnectBegin
টাইপ অনকনেক্টবেগিনের একটি ফাংশন পয়েন্টার, এটিকে সংযোগ স্থাপনের আগেই বলা হয়ে থাকে এবং অ্যাপ্লিকেশনগুলিকে #WeaveConnication :: সংযুক্ত () এ পাস হওয়া আর্গুমেন্টগুলি পর্যবেক্ষণ করতে এবং optionচ্ছিকভাবে পরিবর্তন করতে দেয়। NULL এর একটি মান (ডিফল্ট) কলব্যাকটি অক্ষম করে।
ফিরে আসে
WEAVE_ERROR_INVALID_ARGUMENT যদি একটি ফাংশন যুক্তি অবৈধ; অন্যথায়, WEAVE_NO_ERROR

খুঁজে দেখো

WEAVE_ERROR lookup(
  uint64_t aServiceEp,
  HostPortList *outHostPortList
)

এই পদ্ধতিটি কোনও পরিষেবা শেষ পয়েন্টের জন্য ডিরেক্টরি সম্পর্কিত তথ্য সন্ধান করে।

যদি সেবা ডিরেক্টরির সমাধান করা হয়েছে, অর্থাত্ যদি একটি সফল হয়েছে কানেক্ট () অপারেশন, তাহলে এই পদ্ধতি সরবরাহকৃত পূরণ হবে HostPortList অবজেক্ট।

নোট: HostPortList আবদ্ধ হয় WeaveServiceManager বস্তুর; পরিষেবা ডিরেক্টরি ক্যাশে সাফ না হওয়া অবধি বা অন্য কোনও পরিষেবা ডিরেক্টরি অনুসন্ধান না হওয়া পর্যন্ত এটি বৈধ থাকবে।

বিশদ
পরামিতি
[in] aServiceEp
সন্ধানের জন্য পরিষেবাটির শেষ পয়েন্টটির শনাক্তকারী।
[out] outHostPortList
পয়েন্টার HostPortList ডিরেক্টরিটি এন্ট্রির সফল লুকআপ উপর জনবহুল করা হবে না। নাল হবে না.
রিটার্ন মান
WEAVE_NO_ERROR
সাফল্যের উপর; অন্যথায়, একটি সম্পর্কিত ত্রুটি কোড।
WEAVE_ERROR_INVALID_SERVICE_EP
যদি প্রদত্ত পরিষেবাটির শেষ পয়েন্টটি খুঁজে পাওয়া যায় না।
WEAVE_ERROR_INVALID_DIRECTORY_ENTRY_TYPE
ডিরেক্টরিতে যদি একটি অজানা ডিরেক্টরি প্রবেশের ধরণ থাকে।

খুঁজে দেখো

WEAVE_ERROR lookup(
  uint64_t aServiceEp,
  uint8_t *aControlByte,
  uint8_t **aDirectoryEntry
)

এই পদ্ধতিটি কোনও পরিষেবা শেষ পয়েন্টের জন্য ডিরেক্টরি সম্পর্কিত তথ্য সন্ধান করে।

যদি সেবা ডিরেক্টরির সমাধান করা হয়েছে, অর্থাত্ যদি একটি সফল হয়েছে কানেক্ট () অপারেশন, তাহলে এই পদ্ধতি একটি সেবা শেষবিন্দু শনাক্তকারী দেওয়া ডিরেক্টরির এন্ট্রি ফিরে আসবে।

এই পদ্ধতি সেবা ডিরেক্টরি অভ্যন্তরীণ বাস্তবায়ন বিবরণ প্রকাশ, বাস্তবায়নের দৃঢ়ভাবে এই পদ্ধতি যা উত্পন্ন এর বৈকল্পিক ব্যবহার পক্ষপাতী উচিত HostPortList

বিশদ
পরামিতি
[in] aServiceEp
সন্ধানের জন্য পরিষেবাটির শেষ পয়েন্টটির শনাক্তকারী।
[out] aControlByte
ডিরেক্টরি এন্ট্রি নিয়ন্ত্রণ বাইট লেখার জন্য স্থানটির একটি পয়েন্টার।
[out] aDirectoryEntry
ডিরেক্টরি প্রবেশের দিকে নির্দেশ করার জন্য একটি পয়েন্টার-পয়েন্টার।
রিটার্ন মান
WEAVE_NO_ERROR
সাফল্যের উপর; অন্যথায়, একটি সম্পর্কিত ত্রুটি কোড।
WEAVE_ERROR_INVALID_SERVICE_EP
যদি প্রদত্ত পরিষেবাটির শেষ পয়েন্টটি খুঁজে পাওয়া যায় না।
WEAVE_ERROR_INVALID_DIRECTORY_ENTRY_TYPE
ডিরেক্টরিতে যদি একটি অজানা ডিরেক্টরি প্রবেশের ধরণ থাকে।

onConnicationClosed

void onConnectionClosed(
  WEAVE_ERROR aError
)

এই পদ্ধতিটি সংযুক্ত ওয়েভ এক্সচেঞ্জ প্রসঙ্গে রিপোর্ট করা সংযোগ বন্ধ ইভেন্টটি পরিচালনা করে।

বিশদ
পরামিতি
[in] aError
এই সংযোগটি বন্ধ হওয়ার কারণটি বোঝায় একটি ওয়েভ ত্রুটি।

onConnicationComplete

void onConnectionComplete(
  WEAVE_ERROR aError
)

এই পদ্ধতিটি পরিষেবাটির শেষ পয়েন্ট ক্যোয়ারী লেনদেনের জন্য সংযোগ সম্পন্ন ইভেন্টটি পরিচালনা করে।

সম্ভাবনা একটি দম্পতি আছে। প্রথমত, সংযোগটি ব্যর্থ হতে পারে যে ক্ষেত্রে আমরা সম্পন্ন করেছি। অন্যথায়, সংযোগটি আসলে সম্পূর্ণ এবং আমরা যা করতে চাই তা হল একটি এক্সচেঞ্জ প্রসঙ্গটি খুলুন এবং একটি ডিরেক্টরি কোয়েরি প্রেরণ করুন।

বিশদ
পরামিতি
[in] aError
সংযোগ স্থাপনের সময় কোনও ত্রুটি থাকলে ওয়েভ ত্রুটি।

onResponse রিসিভ

void onResponseReceived(
  uint32_t aProfileId,
  uint8_t aMsgType,
  PacketBuffer *aMsg
)

এই পদ্ধতিটি ডিরেক্টরি পরিষেবার সাথে কথোপকথনে যে কোনও প্রতিক্রিয়া বার্তা পরিচালনা করে।

বিশদ
পরামিতি
[in] aProfileId
এই আগত বার্তার জন্য প্রোফাইল আইডি।
[in] aMsgType
এই বার্তাটির জন্য প্রোফাইল-নির্দিষ্ট ধরণ।
[in] aMsg
এই বার্তার বিষয়বস্তু।

onResponseTimeout

void onResponseTimeout(
  void
)

এই পদ্ধতিটি টাইমআউট ইভেন্ট পরিচালনা করে, যাতে ডিরেক্টরি পরিষেবা থেকে কোনও সাড়া পাওয়া যায়নি।

স্থানান্তরিত করা

void relocate(
  WEAVE_ERROR aError
)

এই পদ্ধতিটি পরিষেবা ডিরেক্টরি ক্যাশে স্থানান্তরিত করে।

একটি সেবা শেষবিন্দু স্থিতি কোড kStatus_Relocated সঙ্গে একটি স্থিতি প্রতিবেদন ফিরিয়ে তখন আবেদন পেরেছিলাম unresolve () ক্যাশে পরিষ্কার ও বাতিল সংযোগ অনুরোধ। এই পদ্ধতি সরলীকৃত ত্রুটি পরিচালনা কল করে unresolve () প্রথমবার, এবং রিসেট () সমস্যা এখনো সমাধান না হলে।

পিছন সামঞ্জস্যের জন্য এখানে - - পদ্ধতি এই সংস্করণটি নেয় এবং লগ করার সময় একটি ত্রুটি তারপর কল নূতন স্থান নির্দেশ (অকার্যকর)

বিশদ
পরামিতি
[in] aError
লগ করতে একটি ত্রুটি।
আরো দেখুন:
স্থানান্তর (শূন্য)

স্থানান্তরিত করা

void relocate(
  void
)

এই পদ্ধতিটি পরিষেবা ডিরেক্টরি ক্যাশে স্থানান্তরিত করে।

একটি সেবা শেষবিন্দু স্থিতি কোড kStatus_Relocated সঙ্গে একটি স্থিতি প্রতিবেদন ফিরিয়ে তখন আবেদন পেরেছিলাম unresolve () ক্যাশে পরিষ্কার ও বাতিল সংযোগ অনুরোধ। এই পদ্ধতি সরলীকৃত ত্রুটি পরিচালনা কল করে unresolve () প্রথমবার, এবং রিসেট () সমস্যা এখনো সমাধান না হলে।

আরো দেখুন:
স্থানান্তর (WEAVE_ERROR)

ওআরএডড্যাচিএন্ট্রি প্রতিস্থাপন করুন

WEAVE_ERROR replaceOrAddCacheEntry(
  uint16_t port,
  const char *hostName,
  uint8_t hostLen,
  uint64_t serviceEndpointId
)

ডিরেক্টরি তালিকার শুরুতে হোস্টনাম এবং পোর্ট আইডির ওভাররাইডিং ডিরেক্টরি এন্ট্রি যুক্ত করুন।

রিসেট

void reset(
  WEAVE_ERROR aError
)

এই পদ্ধতিটি পরিষেবা পরিচালককে তার প্রাথমিক অবস্থায় পুনরায় সেট করে।

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

পিছন সামঞ্জস্যের জন্য এখানে - - পদ্ধতি এই সংস্করণটি নেয় এবং লগ করার সময় একটি ত্রুটি তারপর কল রিসেট (অকার্যকর)

বিশদ
পরামিতি
[in] aError
ত্রুটিটি যা এই অপারেশনটিকে ট্রিগার করেছিল।
আরো দেখুন:
পুনরায় সেট (অকার্যকর)

রিসেট

void reset(
  void
)

এই পদ্ধতিটি পরিষেবা পরিচালককে তার প্রাথমিক অবস্থায় পুনরায় সেট করে।

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

আরো দেখুন:
পুনরায় সেট করুন (WEAVE_ERROR)

সমাধান না করা

void unresolve(
  WEAVE_ERROR aError
)

এই পদ্ধতিটি পরিষেবা ডিরেক্টরি ক্যাশে অবৈধ করে।

এই পদ্ধতিটি পরিষেবা ডিরেক্টরি ক্যাশে স্থিতি সেট করে যাতে পরবর্তী অনুরোধে পরিষেবা পরিচালক একটি পরিষেবা ডিরেক্টরি ক্যোয়ারী জারি করবেন will

অনুন্নত সহাবস্থানযোগ্যতা এর জন্য এখানে - - পদ্ধতি এই সংস্করণটি নেয় এবং একটি ত্রুটি লগ তারপর কল unresolve (অকার্যকর)

বিশদ
পরামিতি
[in] aError
ত্রুটিটি যা এই অপারেশনটিকে ট্রিগার করেছিল।
আরো দেখুন:
সমাধান না করা (শূন্য)

সমাধান না করা

void unresolve(
  void
)

এই পদ্ধতিটি পরিষেবা ডিরেক্টরি ক্যাশে অবৈধ করে।

এই পদ্ধতিটি পরিষেবা ডিরেক্টরি ক্যাশে স্থিতি সেট করে যাতে পরবর্তী অনুরোধে পরিষেবা পরিচালক একটি পরিষেবা ডিরেক্টরি ক্যোয়ারী জারি করবেন will

আরো দেখুন:
সমাধান না করা (WEAVE_ERROR)

। ওয়েভ সার্ভিস ম্যানেজার

 ~WeaveServiceManager(
  void
)

এই পদ্ধতি destructs WeaveServiceManager উদাহরণস্বরূপ।