ব্যবহারের সুবিধার জন্য, Android-এ Automation API-এর সাথে ব্যবহারের জন্য কিছু বৈশিষ্ট্যের সরলীকৃত সংস্করণ উপলভ্য।
একটি সরলীকৃত বৈশিষ্ট্য একটি স্ট্যান্ডার্ড Home API বৈশিষ্ট্যের জন্য দাঁড়ায়, যেভাবে ফেসাদ প্যাটার্ন কাজ করে। সরলীকৃত বৈশিষ্ট্যগুলি এমন কমান্ড প্রদান করে যা নির্দিষ্ট ডিভাইসের প্রকারের জন্য সাধারণ কাজগুলিকে সহজ করে তোলে। সরলীকৃত বৈশিষ্ট্য হল Home API বৈশিষ্ট্য এবং অন্যান্য Home API বৈশিষ্ট্যের মতো, এগুলি Matter এবং Cloud-to-cloud উভয় ডিভাইসের জন্যই কাজ করে।
একটি সরলীকৃত বৈশিষ্ট্য অ্যাট্রিবিউট এবং কমান্ডের একটি বিকল্প সাবসেট অফার করে যা
সংশ্লিষ্ট স্ট্যান্ডার্ড বৈশিষ্ট্যের চেয়ে বেশি ডিভাইস-নির্দিষ্ট।
যেমন, স্ট্যান্ডার্ড
LevelControl
বৈশিষ্ট্য হল একটি জেনেরিক বৈশিষ্ট্য যা এমন যেকোনও ডিভাইসের জন্য ব্যবহার করা যেতে পারে যার
সেটিং সংখ্যার রেঞ্জ জুড়ে ক্রমাগত পরিবর্তিত হয়।
Brightness হল একটি
সরলীকৃত বৈশিষ্ট্য যা LevelControl-এর জন্য কাজ করে এবং শুধুমাত্র
কমান্ড এবং অ্যাট্রিবিউট প্রদান করে যা একটি
DimmableLight
ডিভাইসের প্রয়োজন। Brightness-এ একটি
moveToBrightness কমান্ড আছে যা একটি
brightnessPercent আর্গুমেন্ট নেয়, যেখানে LevelControl-এ একাধিক move
কমান্ড আছে, যার বেশিরভাগেরই অন্তত চারটি প্যারামিটার আছে যাতে আরও বেশি
ব্যবহারের ক্ষেত্রে মানানসই হয়।
নিচের সারণীতে প্রতিটি সরলীকৃত বৈশিষ্ট্য এবং অন্তর্নিহিত স্ট্যান্ডার্ড বৈশিষ্ট্য দেখানো হয়েছে। প্রতিটি বৈশিষ্ট্যের নাম সংশ্লিষ্ট API ডকুমেন্টেশনের সাথে লিঙ্ক করে:
| সরলীকৃত বৈশিষ্ট্য | স্ট্যান্ডার্ড ট্রেট |
|---|---|
SimplifiedThermostat
|
Thermostat
|
Brightness
|
LevelControl
|
SimplifiedOnOff
|
OnOff
|
Volume
|
LevelControlOnOff
|
সহজ করা ট্রেইট ও ডিসকভারি API
Discovery API সরলীকৃত বৈশিষ্ট্যের পাশাপাশি তার অন্তর্নিহিত স্ট্যান্ডার্ড বৈশিষ্ট্যও রিপোর্ট করে, যতক্ষণ না দুটি বৈশিষ্ট্যই
FactoryRegistry-এ রেজিস্টার করা হয়। যেমন, কোনও স্ট্রাকচারে DimmableLight ডিভাইস থাকলে এবং ডেভেলপার
FactoryRegistry-এ
LevelControl
এবং
Brightness, দুটি ট্রেটই রেজিস্টার করলে, ডিসকভারি API দুটি ট্রেটেরই উপস্থিতি দেখাবে। ডেভেলপার তার অটোমেশনে যেকোনও একটি বৈশিষ্ট্য ব্যবহার করার জন্য বেছে নিতে পারেন।
আরও তথ্যের জন্য Android-এ Discovery API দেখুন।
সহজ করা হয়েছে এমন বৈশিষ্ট্য কাজ করে এমন ডিভাইস ফিরিয়ে আনুন
SimplifiedThermostat-এর মতো সরলীকৃত বৈশিষ্ট্য সমর্থন করে এমন স্ট্রাকচারে ডিভাইস পেতে Device API ব্যবহার করার সময়, আপনি has(trait)
পদ্ধতি ব্যবহার করতে পারবেন না। পরিবর্তে, has(deviceType) পদ্ধতি ব্যবহার করুন:
val thermostat = home.devices().list().first { device -> device.has(ThermostatDevice) }