অ্যান্ড্রয়েডের জন্য হোম এপিআইগুলি গুগল হোম ইকোসিস্টেমের সমস্ত ডিভাইসকে একটি ইউনিফাইড ডেটা মডেলে উপস্থাপন করে। এই ডেটা মডেলটি অন্তর্নিহিত স্মার্ট হোম প্রযুক্তি (যেমন Matter বা Cloud-to-cloud ) নির্বিশেষে সকল ধরণের ডিভাইস (গুগল নেস্ট বা তৃতীয় পক্ষের নির্মাতাদের থেকে) কভার করে এবং smart home এবং মোবাইল অ্যাপ ডেভেলপার উভয়ের জন্য ব্যবহারকারীর অভিজ্ঞতা তৈরি করার জন্য একটি সাধারণ এপিআই পৃষ্ঠ সরবরাহ করে।
ডিভাইসের ধরণ
হোম এপিআই-তে উপস্থাপিত ডিভাইসের ধরণগুলি Matter এবং Cloud-to-cloud ডেটা মডেলের একীকরণ। কিছু সরাসরি Matter থেকে উদ্ভূত, কিছু Matter ডিভাইসের ধরণের একটি এক্সটেনশন, এবং কিছু Cloud-to-cloud থেকে উদ্ভূত।
ডিভাইসের ধরণগুলিতে এমন বৈশিষ্ট্য থাকে যা ডিভাইসগুলি নিয়ন্ত্রণ এবং পরিচালনা করতে ব্যবহৃত হয়। ডিভাইসের ধরণগুলির মতো, বৈশিষ্ট্যগুলি Matter ক্লাস্টার এবং Cloud-to-cloud বৈশিষ্ট্য থেকে উদ্ভূত হয় এবং Matter ক্লাস্টারের মতো একটি সাধারণ বিন্যাসে উপস্থাপিত হয়। হোম API-তে, Matter -উদ্ভূত বৈশিষ্ট্যগুলিকে ক্লাস্টার নয়, বরং traits বলা হয়।
এইভাবে, হোম এপিআই-তে ডিভাইসের ধরণ এবং বৈশিষ্ট্যগুলি Matter -ফার্স্ট হওয়ার উদ্দেশ্যে তৈরি করা হয়েছে। একটি Matter ডিভাইসের ধরণ বা বৈশিষ্ট্য Cloud-to-cloud অ্যানালগের চেয়ে প্রাধান্য পায়।
ডিভাইসের ধরণ এবং তাদের বৈশিষ্ট্যের তালিকার জন্য Android-এ সমর্থিত ডিভাইসের ধরণগুলি দেখুন।
বৈশিষ্ট্য
হোম এপিআই-তে ব্যবহারের জন্য বৈশিষ্ট্যের কোটলিন সংস্করণ তৈরি করা হয় এবং হোম এপিআই-তে নির্দিষ্ট অতিরিক্ত বৈশিষ্ট্য থাকে ( Matter বা Cloud-to-cloud পাওয়া যায় না)। উদাহরণস্বরূপ, প্রতিটি বৈশিষ্ট্যের একটি নির্দিষ্ট বৈশিষ্ট্য বা কমান্ড সমর্থন করে কিনা তা পরীক্ষা করার পদ্ধতি রয়েছে। ব্যবহারকারীর ডিভাইসে অবস্থা বা নির্দিষ্ট ক্রিয়াগুলি পড়া সম্ভব কিনা তা নির্ধারণ করার সময় এটি কার্যকর, কারণ ডিভাইস ধরণের সমস্ত ডিভাইসে একই বৈশিষ্ট্য থাকবে বলে আশা করা হয় না।
প্রতিটি বৈশিষ্ট্য তার নিজস্ব নেমস্পেসে অন্তর্ভুক্ত থাকে এবং ব্যবহারের জন্য পৃথকভাবে আমদানি করতে হবে।
উদাহরণস্বরূপ, Matter অন/অফ বৈশিষ্ট্য এবং অন/অফ প্লাগ-ইন ইউনিট ডিভাইসের ধরণ ব্যবহার করতে, আপনার অ্যাপ্লিকেশনে নিম্নলিখিত প্যাকেজগুলি আমদানি করুন:
import com.google.home.matter.standard.OnOff
import com.google.home.matter.standard.OnOffPluginUnitDevice
গ্যারেজ ডিভাইসের ধরণের জন্য (গুগল স্মার্ট হোম থেকে), Matter এবং গুগল বৈশিষ্ট্যের মিশ্রণ অন্তর্ভুক্ত করুন:
import com.google.home.google.LockUnlock
import com.google.home.matter.standard.DoorLock
import com.google.home.matter.standard.GoogleGarageDevice
Android Studio স্বয়ংক্রিয়ভাবে সম্পূর্ণ কার্যকারিতা রয়েছে এবং আপনার প্রকল্পের সোর্স ফাইলগুলিতে import লাইন যোগ করার সময় প্রায়শই আপনার জন্য সম্পূর্ণ প্যাকেজ নামগুলি পরিচালনা করবে। তবে, সমস্ত ডিভাইসের ধরণ এবং বৈশিষ্ট্যের জন্য প্যাকেজ নামগুলি সামঞ্জস্যপূর্ণ নয়। প্রতিটি DeviceType বা Trait জন্য সঠিক প্যাকেজ নাম যাচাই করতে রেফারেন্সটি দেখুন।
বেশিরভাগ বৈশিষ্ট্য অটোমেশনের সাথে ব্যবহারের জন্য সমর্থিত, এবং কিছু বৈশিষ্ট্য শুধুমাত্র অটোমেশনের জন্য উপলব্ধ। আরও বিস্তারিত জানার জন্য, Android-এ অটোমেশন API বৈশিষ্ট্য সমর্থন দেখুন।
ডিভাইসের ধরণ রচনা
হোম এপিআইগুলি ডেটা মডেলের বৈশিষ্ট্য হিসাবে বেশিরভাগ Matter অ্যাপ্লিকেশন ক্লাস্টারকে সমর্থন করে। যে বৈশিষ্ট্যগুলি ডিভাইস নিয়ন্ত্রণ বা অবস্থার সাথে সঙ্গতিপূর্ণ নয় এবং শেষ ব্যবহারকারীদের জন্য কোনও উপযোগিতা প্রদান করে না, যেমন বাইন্ডিং এবং গ্রুপ, সেগুলি হোম এপিআইগুলির মাধ্যমে প্রকাশ করা হয় না।
Cloud-to-cloud স্মার্ট হোম বৈশিষ্ট্য থেকে প্রাপ্ত বৈশিষ্ট্যগুলি সাধারণত Cloud-to-cloud এবং হোম API-এর মধ্যে একই নাম ধারণ করে, যেমন OpenClose-এর উদাহরণে। অন্যগুলি Matter বৈশিষ্ট্যের এক্সটেনশন হিসাবে উপস্থাপিত হয়, যা Matter প্রস্তুতকারক-নির্দিষ্ট এক্সটেনশন ব্যবহার করে তৈরি করা হয়। এই বৈশিষ্ট্যগুলি একটি smart home বৈশিষ্ট্যের জন্য ব্যবধান পূরণ করে যেখানে কার্যকারিতা Matter SDK এবং গুগল হোম ইকোসিস্টেমের মধ্যে বিভক্ত। এর একটি নির্দিষ্ট উদাহরণ হল Google* ডিভাইসের ধরণ যা Cloud-to-cloud থেকে আসে কিন্তু এখনও ম্যাটার অ্যানালগ নেই।
ডিভাইসের ধরণগুলি এক বা উভয় উৎস, Matter বা Cloud-to-cloud থেকে প্রাপ্ত বৈশিষ্ট্যের সমন্বয়ে গঠিত।
উদাহরণস্বরূপ, ফ্যান ডিভাইসের ধরণটি উভয় বৈশিষ্ট্যের সমন্বয়ে গঠিত এবং এতে তিনটি বৈশিষ্ট্য রয়েছে:
-
IdentifyMatter বৈশিষ্ট্যটি MatterIdentifyথেকে সমস্ত কার্যকারিতা প্রদান করে। -
FanControlMatter বৈশিষ্ট্যটি MatterFanControlবৈশিষ্ট্যের সমস্ত কার্যকারিতা প্রদান করে -
ExtendedFanControlগুগল বৈশিষ্ট্যটি গুগল smart homeFanSpeedবৈশিষ্ট্যের সমস্ত কার্যকারিতা প্রদান করে যাFanControlMatter বৈশিষ্ট্যের আওতায় আসে না।
এই ধরণের বৈশিষ্ট্য রচনা সম্পূর্ণ ডিভাইস ধরণের কার্যকারিতার জন্য একটি নমনীয় মডেল প্রদান করে, অন্তর্নিহিত smart home ডেটা মডেলগুলিকে বিমূর্ত করে।