nl:: বুনা:: প্রোফাইল:: ডিভাইস কন্ট্রোল:: ডিভাইস কন্ট্রোল ডেলিগেট

এটি একটি বিমূর্ত ক্লাস।

#include <src/lib/profiles/device-control/DeviceControl.h>

সার্ভার ডিভাইসে ইনকামিং ডিভাইস কন্ট্রোল অপারেশন বাস্তবায়নের জন্য ক্লাস ডেলিগেট করুন।

সারসংক্ষেপ

উত্তরাধিকার

থেকে উত্তরাধিকারসূত্রে পাওয়া যায়: nl::Weave::WeaveServerDelegateBase
সরাসরি পরিচিত সাবক্লাস: nl::Weave::DeviceLayer::Internal::DeviceControlServer

পাবলিক ফাংশন

EnforceAccessControl ( ExchangeContext *ec, uint32_t msgProfileId, uint8_t msgType, const WeaveMessageInfo *msgInfo, AccessControlResult & result)
virtual void
একটি ইনকামিং DeviceControl অনুরোধ বার্তার জন্য বার্তা-স্তরের অ্যাক্সেস নিয়ন্ত্রণ প্রয়োগ করুন।
IsPairedToAccount () const
virtual bool
ডিভাইসটি বর্তমানে একটি অ্যাকাউন্টের সাথে যুক্ত আছে কিনা তা নির্ধারণ করতে কল করা হয়েছে।
IsResetAllowed (uint16_t resetFlags)=0
virtual bool
নির্দিষ্ট কনফিগারেশন রিসেট করা অনুমোদিত কিনা তা পরীক্ষা করুন।
OnConnectionMonitorTimeout (uint64_t peerNodeId, IPAddress peerAddr)=0
virtual void
ইঙ্গিত করুন যে একটি সংযোগ মনিটর টাইমআউট হয়েছে।
OnFailSafeArmed (void)=0
virtual WEAVE_ERROR
নির্দেশ করুন যে ডিভাইস কনফিগারেশন ব্যর্থ নিরাপদ সশস্ত্র করা হয়েছে.
OnFailSafeDisarmed (void)=0
virtual WEAVE_ERROR
নির্দেশ করুন যে ডিভাইস কনফিগারেশন ব্যর্থ নিরাপদ নিরস্ত্র করা হয়েছে।
OnRemotePassiveRendezvousDone (void)=0
virtual void
নির্দেশ করে যে রিমোট প্যাসিভ রেন্ডেজভাস প্রক্রিয়া শেষ হয়েছে।
OnRemotePassiveRendezvousStarted (void)=0
virtual void
নির্দেশ করে যে রিমোট প্যাসিভ রেন্ডেজভাস প্রক্রিয়া শুরু হয়েছে।
OnResetConfig (uint16_t resetFlags)=0
virtual WEAVE_ERROR
ডিভাইস কনফিগারেশনের সমস্ত বা অংশ রিসেট করুন।
OnSystemTestStarted (uint32_t profileId, uint32_t testId)=0
virtual WEAVE_ERROR
নির্দিষ্ট সিস্টেম পরীক্ষা শুরু করুন।
OnSystemTestStopped (void)=0
virtual WEAVE_ERROR
চলমান সিস্টেম পরীক্ষা বন্ধ করুন.
ShouldCloseConBeforeResetConfig (uint16_t resetFlags)=0
virtual bool
একটি সার্ভার সংযোগ, যদি উপস্থিত থাকে, একটি কনফিগারেশন রিসেট করার আগে বন্ধ করা উচিত কিনা তা নির্ধারণ করুন।
WillCloseRemotePassiveRendezvous (void)=0
virtual void
রিমোট প্যাসিভ রেন্ডেজভাস বন্ধ করার জন্য প্রস্তুত হন।
WillStartRemotePassiveRendezvous (void)=0
virtual WEAVE_ERROR
একটি দূরবর্তী প্যাসিভ মিলনমেলা জন্য প্রস্তুত.

পাবলিক ফাংশন

এনফোর্স অ্যাক্সেস কন্ট্রোল

virtual void EnforceAccessControl(
  ExchangeContext *ec,
  uint32_t msgProfileId,
  uint8_t msgType,
  const WeaveMessageInfo *msgInfo,
  AccessControlResult & result
)

একটি ইনকামিং DeviceControl অনুরোধ বার্তার জন্য বার্তা-স্তরের অ্যাক্সেস নিয়ন্ত্রণ প্রয়োগ করুন।

বিস্তারিত
পরামিতি
[in] ec
এক্সচেঞ্জ কনটেক্সট যার উপর বার্তাটি গৃহীত হয়েছিল৷
[in] msgProfileId
প্রাপ্ত বার্তার প্রোফাইল আইডি।
[in] msgType
প্রাপ্ত বার্তার বার্তা প্রকার।
[in] msgInfo
প্রাপ্ত বার্তা সম্পর্কে তথ্য ধারণকারী একটি WeaveMessageInfo কাঠামো।
[in,out] result
প্রাপ্ত বার্তার অ্যাক্সেস নিয়ন্ত্রণ নীতি মূল্যায়নের ফলাফল বর্ণনা করে একটি গণিত মান। পদ্ধতিতে প্রবেশ করার পরে, মানটি মূল্যায়ন প্রক্রিয়ার বর্তমান বিন্দুতে অস্থায়ী ফলাফলের প্রতিনিধিত্ব করে। ফিরে আসার পরে, ফলাফলটি বার্তার অ্যাক্সেস নিয়ন্ত্রণ নীতির চূড়ান্ত মূল্যায়নের প্রতিনিধিত্ব করবে বলে আশা করা হচ্ছে।

IsPairedToAccount

virtual bool IsPairedToAccount() const 

ডিভাইসটি বর্তমানে একটি অ্যাকাউন্টের সাথে যুক্ত আছে কিনা তা নির্ধারণ করতে কল করা হয়েছে।

রিসেট অনুমোদিত

virtual bool IsResetAllowed(
  uint16_t resetFlags
)=0

নির্দিষ্ট কনফিগারেশন রিসেট করা অনুমোদিত কিনা তা পরীক্ষা করুন।

বিস্তারিত
পরামিতি
[in] resetFlags
কোন কনফিগারেশন রিসেট করতে হবে তা নির্দিষ্ট করে ফ্ল্যাগ।
রিটার্ন মান
TRUE
যদি কনফিগারেশন পুনরায় সেট করার অনুমতি দেওয়া হয়।
FALSE
যদি কনফিগারেশন রিসেট করার অনুমতি না থাকে।

#ConnectionMonitorTimeout

virtual void OnConnectionMonitorTimeout(
  uint64_t peerNodeId,
  IPAddress peerAddr
)=0

ইঙ্গিত করুন যে একটি সংযোগ মনিটর টাইমআউট হয়েছে।

এই ফাংশনটিকে বলা হয় যখন একটি সংযোগ মনিটর টাইমআউট ঘটেছে, অর্থাৎ, যখন একটি নির্দিষ্ট সময়ের জন্য দূরবর্তী হোস্ট থেকে লাইভনেস চেক সনাক্ত করা হয়নি।

বিস্তারিত
পরামিতি
[in] peerNodeId
রিমোট পিয়ারের নোড আইডি যেখানে সংযোগের লাইভনেস সময় শেষ হয়ে গেছে।
[in] peerAddr
দূরের পীরের ঠিকানা।

অনফেলসেফ আর্মড

virtual WEAVE_ERROR OnFailSafeArmed(
  void
)=0

নির্দেশ করুন যে ডিভাইস কনফিগারেশন ব্যর্থ নিরাপদ সশস্ত্র করা হয়েছে.

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

বিস্তারিত
রিটার্ন মান
WEAVE_NO_ERROR
সাফল্যের উপর।
other
অন্যান্য ওয়েভ বা প্ল্যাটফর্ম-নির্দিষ্ট ত্রুটি কোডগুলি নির্দেশ করে যে একটি ত্রুটি ঘটেছে যাতে অস্ত্র তৈরি করা থেকে নিরাপদ হতে না পারে।

অনফেলসেফ নিরস্ত্র

virtual WEAVE_ERROR OnFailSafeDisarmed(
  void
)=0

নির্দেশ করুন যে ডিভাইস কনফিগারেশন ব্যর্থ নিরাপদ নিরস্ত্র করা হয়েছে।

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

বিস্তারিত
রিটার্ন মান
WEAVE_NO_ERROR
সাফল্যের উপর।
other
অন্যান্য ওয়েভ বা প্ল্যাটফর্ম-নির্দিষ্ট ত্রুটি কোডগুলি নির্দেশ করে যে একটি ত্রুটি ঘটেছে যাতে নিরস্ত্রীকরণ থেকে ব্যর্থ হওয়া নিরাপদ।

অনরিমোটপ্যাসিভরেন্ডেজভাসডন

virtual void OnRemotePassiveRendezvousDone(
  void
)=0

নির্দেশ করে যে রিমোট প্যাসিভ রেন্ডেজভাস প্রক্রিয়া শেষ হয়েছে।

অনরিমোটপ্যাসিভরেন্ডেজভাসস্টার্টেড

virtual void OnRemotePassiveRendezvousStarted(
  void
)=0

নির্দেশ করে যে রিমোট প্যাসিভ রেন্ডেজভাস প্রক্রিয়া শুরু হয়েছে।

OnResetConfig

virtual WEAVE_ERROR OnResetConfig(
  uint16_t resetFlags
)=0

ডিভাইস কনফিগারেশনের সমস্ত বা অংশ রিসেট করুন।

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

বিস্তারিত
পরামিতি
[in] resetFlags
কোন কনফিগারেশন রিসেট করতে হবে তা নির্দিষ্ট করে ফ্ল্যাগ।
রিটার্ন মান
WEAVE_NO_ERROR
সাফল্যের উপর।
other
অন্যান্য ওয়েভ বা প্ল্যাটফর্ম-নির্দিষ্ট ত্রুটি কোড যা নির্দেশ করে যে ডিভাইসটিকে কনফিগারেশন রিসেট করা থেকে একটি ত্রুটি ঘটেছে।

OnSystemTestStart

virtual WEAVE_ERROR OnSystemTestStarted(
  uint32_t profileId,
  uint32_t testId
)=0

নির্দিষ্ট সিস্টেম পরীক্ষা শুরু করুন।

বিস্তারিত
পরামিতি
[in] profileId
অনুরোধকৃত পরীক্ষার প্রোফাইলের আইডি।
[in] testId
অনুরোধ করা পরীক্ষার আইডি।
রিটার্ন মান
WEAVE_NO_ERROR
সাফল্যের উপর।
other
অন্যান্য ওয়েভ বা প্ল্যাটফর্ম-নির্দিষ্ট ত্রুটি কোডগুলি নির্দেশ করে যে সিস্টেম পরীক্ষা শুরু করা প্রতিরোধে একটি ত্রুটি ঘটেছে।

OnSystemTestStopped

virtual WEAVE_ERROR OnSystemTestStopped(
  void
)=0

চলমান সিস্টেম পরীক্ষা বন্ধ করুন.

বিস্তারিত
রিটার্ন মান
WEAVE_NO_ERROR
সাফল্যের উপর।
other
অন্যান্য ওয়েভ বা প্ল্যাটফর্ম-নির্দিষ্ট ত্রুটি কোড যা নির্দেশ করে যে সিস্টেম পরীক্ষা বন্ধ করা থেকে একটি ত্রুটি ঘটেছে।

ক্লোজকন আগে রিসেট কনফিগার করা উচিত

virtual bool ShouldCloseConBeforeResetConfig(
  uint16_t resetFlags
)=0

একটি সার্ভার সংযোগ, যদি উপস্থিত থাকে, একটি কনফিগারেশন রিসেট করার আগে বন্ধ করা উচিত কিনা তা নির্ধারণ করুন।

এই ফাংশনটি একটি কনফিগারেশন রিসেট অনুরোধ প্রক্রিয়া করার সময় পছন্দসই আচরণের জন্য প্রতিনিধিকে জিজ্ঞাসা করতে ব্যবহৃত হয়। যদি একটি সার্ভার সংযোগ বর্তমানে সক্রিয় থাকে, তাহলে এই পদ্ধতির একটি সত্য প্রতিক্রিয়া OnResetConfig পদ্ধতির মাধ্যমে কনফিগারেশন রিসেট ট্রিগার হওয়ার আগে সংযোগটি বন্ধ করে দেবে।

বিস্তারিত
পরামিতি
[in] resetFlags
কোন কনফিগারেশন রিসেট করতে হবে তা নির্দিষ্ট করে ফ্ল্যাগ।
রিটার্ন মান
true
যদি সংযোগ বন্ধ করতে হয়।
false
যদি সংযোগটি বন্ধ করার প্রয়োজন না হয়।

উইলক্লোজ রিমোট প্যাসিভ রেন্ডেজভাস

virtual void WillCloseRemotePassiveRendezvous(
  void
)=0

রিমোট প্যাসিভ রেন্ডেজভাস বন্ধ করার জন্য প্রস্তুত হন।

আরো দেখুন:
WillStartRemotePassiveRendezvous(অকার্যকর)

WillStartRemotePassiveRendezvous

virtual WEAVE_ERROR WillStartRemotePassiveRendezvous(
  void
)=0

একটি দূরবর্তী প্যাসিভ মিলনমেলা জন্য প্রস্তুত.

উদাহরণস্বরূপ, 15.4/থ্রেড নেটওয়ার্ক যোগযোগ্য করুন।

বিস্তারিত
রিটার্ন মান
WEAVE_NO_ERROR
সাফল্যের উপর।
other
অন্যান্য ওয়েভ বা প্ল্যাটফর্ম-নির্দিষ্ট ত্রুটি কোডগুলি নির্দেশ করে যে রিমোট প্যাসিভ রেন্ডেজভাস শুরু করার প্রস্তুতির সময় একটি ত্রুটি ঘটেছে৷