ডিভাইস ডেটা মডেল

Matter ডিভাইসগুলির একটি সু-সংজ্ঞায়িত ডেটা মডেল রয়েছে ( DM ), যা একটি ডিভাইসের বৈশিষ্ট্যগুলির একটি শ্রেণিবদ্ধ মডেলিং। এই অনুক্রমের শীর্ষ স্তরে একটি ডিভাইস রয়েছে।

ডিভাইস এবং শেষ পয়েন্ট

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

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

ডিভাইস, নোড এবং শেষ পয়েন্টের অনুক্রম
চিত্র 1: ডিভাইস, নোড এবং শেষ পয়েন্ট

নোড ভূমিকা

একটি নোড ভূমিকা সম্পর্কিত আচরণের একটি সেট। প্রতিটি নোডের এক বা একাধিক ভূমিকা থাকতে পারে। নোড ভূমিকা অন্তর্ভুক্ত:

  • কমিশনার : একটি নোড যা কমিশনিং সঞ্চালন করে।
  • কন্ট্রোলার : একটি নোড যা এক বা একাধিক নোড নিয়ন্ত্রণ করতে পারে। উদাহরণগুলির মধ্যে রয়েছে Google Home app (GHA) , Google Assistant এবং Google Nest Hub (2nd gen) । কিছু ডিভাইসের ধরন, যেমন অন/অফ লাইট সুইচ , এর কন্ট্রোলারের ভূমিকা রয়েছে।
  • কন্ট্রোলি : একটি নোড যা এক বা একাধিক নোড দ্বারা নিয়ন্ত্রিত হতে পারে। বেশিরভাগ ডিভাইসের ধরন একটি কন্ট্রোলি হতে পারে, কিছু ডিভাইসের ধরন ব্যতীত যেখানে কন্ট্রোলারের ভূমিকা রয়েছে, যেমন অন/অফ লাইট সুইচ । অন/অফ লাইট সুইচ শুধুমাত্র একটি কন্ট্রোলার হতে পারে। এটি একটি নিয়ন্ত্রক হতে পারে না.
  • OTA প্রদানকারী : একটি নোড যা OTA সফ্টওয়্যার আপডেট প্রদান করতে পারে।
  • OTA অনুরোধকারী : একটি নোড যা OTA সফ্টওয়্যার আপডেটের জন্য অনুরোধ করতে পারে।

ক্লাস্টার

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

একটি নোডের একাধিক এন্ডপয়েন্টও থাকতে পারে, প্রতিটি একই কার্যকারিতার একটি উদাহরণ তৈরি করে। উদাহরণস্বরূপ, একটি লাইট ফিক্সচার পৃথক আলোর স্বাধীন নিয়ন্ত্রণ প্রকাশ করতে পারে বা একটি পাওয়ার স্ট্রিপ পৃথক সকেটের নিয়ন্ত্রণ প্রকাশ করতে পারে।

গুণাবলী

শেষ স্তরে আমরা অ্যাট্রিবিউটগুলি খুঁজে পাব, যা নোড দ্বারা ধারণ করা অবস্থা, যেমন একটি স্তর নিয়ন্ত্রণ ক্লাস্টারের বর্তমান স্তরের বৈশিষ্ট্য। বৈশিষ্ট্যগুলিকে বিভিন্ন ডেটা প্রকার যেমন uint8, স্ট্রিং বা অ্যারে হিসাবে সংজ্ঞায়িত করা যেতে পারে।

নোড, এন্ডপয়েন্ট, অ্যাট্রিবিউট এবং কমান্ডের অনুক্রম
চিত্র 2: নোড, এন্ডপয়েন্ট, অ্যাট্রিবিউট এবং কমান্ড

কমান্ড

গুণাবলী ছাড়াও, ক্লাস্টারগুলিতে কমান্ড রয়েছে, যা সঞ্চালিত হতে পারে এমন ক্রিয়া । তারা দূরবর্তী পদ্ধতি কলের Matter ডিএম-এর সমতুল্য। কমান্ডগুলি ক্রিয়াপদের মতো, যেমন একটি ডোর লক ক্লাস্টারে লক দরজা । কমান্ড প্রতিক্রিয়া এবং ফলাফল তৈরি করতে পারে; Matter , এই ধরনের প্রতিক্রিয়াগুলিকে কমান্ড হিসাবেও সংজ্ঞায়িত করা হয়েছে, বিপরীত দিকে যাচ্ছে।

ঘটনা

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

সম্পূর্ণ নমুনা ডিভাইস
চিত্র 3: Matter ডিভাইসের মিথস্ক্রিয়া মডেলের অনুক্রমের একটি নমুনা

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

ডিভাইসের ধরন

একত্রে, একটি ডিভাইস প্রস্তুতকারক একটি নতুন ডিভাইসের পরিকল্পনা করার সময় কোন ক্লাস্টার সংমিশ্রণগুলি অন্তর্ভুক্ত করা উচিত?

Matter স্পেসিফিকেশনের প্রয়োজন যে ডিভাইসটি এক বা একাধিক ডিভাইসের ধরন প্রয়োগ বা প্রসারিত করে। একটি ডিভাইসের ধরন হল বাধ্যতামূলক এবং ঐচ্ছিক ক্লাস্টারগুলির একটি সংগ্রহ যা একটি শারীরিক ডিভাইসের শীর্ষ-স্তরের বৈশিষ্ট্যগুলিকে সংজ্ঞায়িত করে, যেমন ডিমেবল লাইট , ডোর লক বা ভিডিও প্লেয়ার

ডিভাইসের প্রকারগুলি Matter স্পেসিফিকেশন প্রধান নথি দ্বারা নির্দিষ্ট করা হয় না, তবে একটি সহগামী নথি দ্বারা নির্দিষ্ট করা হয়: ডিভাইস লাইব্রেরি । একইভাবে, সমস্ত অ্যাপ্লিকেশন ক্লাস্টার অ্যাপ্লিকেশন ক্লাস্টার লাইব্রেরিতে সংজ্ঞায়িত করা হয়েছে। এই তিনটি নথি Connectivity Standards Alliance (Alliance) সদস্যদের ওয়েবসাইটে পাওয়া যাবে।

প্রতিটি এন্ডপয়েন্ট একটি ডিভাইস টাইপ বাস্তবায়নকারী বাধ্যতামূলক ক্লাস্টারগুলিকে প্রয়োগ করতে হবে যা সেই ডিভাইসের প্রকারকে সংজ্ঞায়িত করে। বাধ্যতামূলক ক্লাস্টারগুলি ছাড়াও, এন্ডপয়েন্ট অতিরিক্ত ক্লাস্টারগুলি প্রয়োগ করতে পারে, যার মধ্যে এক বা একাধিক ডিভাইস টাইপের ঐচ্ছিক ক্লাস্টারগুলি, এমনকি এমন ক্লাস্টারগুলিও যেগুলি ডিভাইসের প্রকারের অংশ নয়৷

ক্লায়েন্ট এবং সার্ভার

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

  • এর রিমোট অ্যাট্রিবিউট থেকে পড়ে এবং লেখে
  • এর দূরবর্তী ঘটনা পড়ে
  • এর দূরবর্তী কমান্ডের আহ্বান

যদিও DM একটি নোডের মধ্যে অনুক্রমিক, নোডের মধ্যে সম্পর্ক নয়। নোড ইন Matter উল্লম্ব কন্ট্রোলার/পেরিফেরাল বা নেতা/অনুসারী সম্পর্ক নেই। বিপরীতে, সম্পর্কটি অনুভূমিক: যেকোনো ক্লাস্টার সার্ভার বা ক্লায়েন্ট হতে পারে। এইভাবে একটি নোড বিভিন্ন ক্লাস্টার এবং কার্যকারিতা সংক্রান্ত সার্ভার এবং ক্লায়েন্ট উভয়ই হতে পারে।

উদাহরণস্বরূপ, আমাদের দুটি টেবিল ল্যাম্প থাকতে পারে: নোড এ এবং নোড বি । উভয় নোড একটি অন/অফ লাইট ডিভাইস টাইপ প্রয়োগ করে। এই ডিভাইসের প্রকারে একটি অন/অফ সার্ভার ক্লাস্টার রয়েছে যা তাদের নিজ নিজ শারীরিক আলো আউটপুট নিয়ন্ত্রণ করে।

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

আলো অন/অফ এবং লাইট সুইচ উভয়ই প্রয়োগ করে ল্যাম্প
চিত্র 4: ক্লায়েন্ট এবং সার্ভার ক্লাস্টার

এই নমুনায়, নোড A-তে অন/অফ ক্লায়েন্ট ক্লাস্টার নোড A এবং নোড B-এর অন/অফ সার্ভার ক্লাস্টারের বৈশিষ্ট্যগুলি পরিবর্তন করছে, যখন নোড B-এর ক্লায়েন্ট ক্লাস্টার শুধুমাত্র নোড B-তে সার্ভার ক্লাস্টার পরিবর্তন করছে।

পরবর্তী বিভাগে আমরা ক্লায়েন্ট এবং সার্ভার ক্লাস্টারগুলি কীভাবে ইন্টারঅ্যাক্ট করে তা বিশদভাবে বর্ণনা করব: ইন্টারঅ্যাকশন মডেল

বর্ণনাকারী ক্লাস্টার

নাম থেকে বোঝা যায়, বর্ণনাকারী ক্লাস্টার সার্ভার আত্মদর্শন তথ্য প্রদান করে। এটি সমাপ্তি বিন্দুকে বর্ণনা করে তার গণনা করে:

  • সার্ভার ক্লাস্টার।
  • ক্লায়েন্ট ক্লাস্টার।
  • ডিভাইসের ধরন।
  • অতিরিক্ত এন্ডপয়েন্ট, পার্টস নামে পরিচিত।

প্রতিটি ডিভাইসের প্রকারের জন্য বর্ণনাকারী ক্লাস্টার বাস্তবায়ন প্রয়োজন। রুট ডিভাইসের ধরনটি এন্ডপয়েন্ট 0-এ সংজ্ঞায়িত করা হয়েছে। এর বর্ণনাকারী ক্লাস্টার পড়া ক্লায়েন্টকে উপলব্ধ এন্ডপয়েন্টের সম্পূর্ণ ট্রি অতিক্রম করতে এবং প্রযোজ্য ক্রিয়াকলাপ সম্পাদন করতে দৃশ্যমানতা প্রদান করবে।

কমিশনার বা কন্ট্রোলিং ডিভাইস যেমন একটি ফোন বা হাব ডিস্ক্রিপ্টর ক্লাস্টারে পাওয়া তথ্য ব্যবহার করে ডিভাইসের মডেল করতে পারে (আলো, সুইচ, পাম্প, থার্মোস্ট্যাট) এবং ডিভাইসের সেই নির্দিষ্ট উদাহরণ দ্বারা বাস্তবায়িত নির্দিষ্ট বৈশিষ্ট্য, সঠিক UI দেখায়। ব্যবহারকারীর কাছে।

সার্ভার ক্লাস্টার

ServerList অ্যাট্রিবিউট এন্ডপয়েন্টে ক্লাস্টার সার্ভারগুলিকে তালিকাভুক্ত করে।

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

ClientList অ্যাট্রিবিউট এন্ডপয়েন্টে ক্লাস্টার ক্লায়েন্টদের তালিকা করে।

ডিভাইসের প্রকার তালিকা

DeviceTypeList অ্যাট্রিবিউট হল ডিভাইস প্রকারের একটি তালিকা যা এন্ডপয়েন্ট দ্বারা সমর্থিত, এর সংশ্লিষ্ট সংশোধন সহ। এটিতে কমপক্ষে একটি ডিভাইসের ধরন থাকতে হবে।

অংশ তালিকা

PartsList এই ডিভাইসের ধরন বাস্তবায়নের জন্য ব্যবহৃত শেষ পয়েন্টগুলির তালিকা রয়েছে।

এন্ডপয়েন্ট 0 (রুট নোড) এর PartsList ডিভাইসের সমস্ত এন্ডপয়েন্ট নিজের থেকে আলাদা থাকে (এন্ডপয়েন্ট 0)।

অন্যান্য এন্ডপয়েন্টের PartsList সাধারণত খালি থাকবে। উদাহরণস্বরূপ, একটি তাপমাত্রা সেন্সর একটি তাপমাত্রা পরিমাপ সার্ভার ক্লাস্টার বাধ্যতামূলক করে এবং অন্য কিছু নয়।

অন্যান্য ডিভাইসের ধরনগুলি একাধিক ডিভাইস টাইপ উদাহরণের একটি গাছের কাঠামোতে তৈরি হতে পারে। উদাহরণস্বরূপ, একটি ভিডিও প্লেয়ার ডিভাইসের ধরনটি টিভি, ভিডিও প্লেয়ার, স্পিকার এবং বিভিন্ন সামগ্রী অ্যাপ ডিভাইস প্রকারের সমন্বয়ে গঠিত হতে পারে, প্রতিটি আলাদা এন্ডপয়েন্টে।


  1. Matter স্পেসিফিকেশন নির্ধারণ করে যে একটি ডিভাইসে একাধিক নোড থাকতে পারে। উদাহরণস্বরূপ, স্মার্টফোনে একাধিক অ্যাপ থাকতে পারে, প্রতিটি অ্যাপ আলাদা নোড। এই প্রাইমারের উদ্দেশ্যে, সমস্ত ডিভাইসে একটি একক নোড থাকবে। এটা প্রত্যাশিত যে বেশিরভাগ শারীরিক ডিভাইস এই প্যাটার্ন অনুসরণ করবে।