Google হোম ইকোসিস্টেমের ডিভাইসগুলি Cloud-to-cloud , Matter বা উভয় ব্যবহার করে প্রয়োগ করা যেতে পারে। কিছু ডিভাইসের ধরন অন্যদের তুলনায় আরও জটিল, এবং বাস্তুতন্ত্রের অন্যান্য ডিভাইসের সাথে মসৃণ ইন্টারফেস করার অনুমতি দেয় এমনভাবে হোম API ব্যবহার করার সময় বিকাশের জন্য একটি চ্যালেঞ্জ উপস্থাপন করে।
এই ধরনের কিছু ডিভাইস বাস্তবায়নে একটি চ্যালেঞ্জ হল যে ডিভাইসগুলি বিভিন্ন বৈশিষ্ট্যের সমন্বয়ে গঠিত হতে পারে। সমস্ত সংমিশ্রণ অন্যদের মতো কাজ করে না। এছাড়াও, Cloud-to-cloud ডেটা মডেল Matter ডেটা মডেলের সাথে মানচিত্র করে, তবে সর্বদা পরিষ্কার, এক-এক ফ্যাশনে নয়। ডেটা মডেল দেখুন, যা ডেটা মডেল এবং তাদের ম্যাপিংগুলিকে আরও গভীরভাবে আলোচনা করে।
এই পৃষ্ঠায় আরও তথ্য রয়েছে যে নির্দিষ্ট ডিভাইসগুলির জন্য ডেটা মডেলগুলি একে অপরের সাথে ম্যাপ করে এবং এই ডিভাইসের ধরনগুলি বাস্তবায়নের জন্য কোন বৈশিষ্ট্যগুলি ব্যবহার করতে হবে সে সম্পর্কে কিছু নির্দেশিকা অফার করে৷
ওভেন
ওভেন ( OvenDevice
) ডিভাইসের ধরন এবং এর উপাদান বৈশিষ্ট্যগুলি অন্যান্য ডিভাইসের প্রকারের তুলনায় প্রয়োগ করা সহজ নয়। ওভেন ইন Matter প্রয়োগ করার একাধিক উপায় রয়েছে, কিন্তু সমস্ত পদ্ধতির ফলে অন্য ডিভাইস বা Google হোম ইকোসিস্টেমের সাথে নিরবচ্ছিন্ন আন্তঃক্রিয়া হয় না।
বৈশিষ্ট্য ম্যাপিং
ওভেন মোড এবং অন অফ ক্লাস্টার ব্যবহার করে Matter ওভেন ডিভাইস প্রয়োগ করার পরিবর্তে, আমরা ওভেন ক্যাভিটি অপারেশনাল স্টেট ক্লাস্টার ব্যবহার করার পরামর্শ দিই। এই ক্লাস্টারটি হোম API-এ OvenCavityOperationalState
বৈশিষ্ট্য দ্বারা উপস্থাপিত হয় এবং Cloud-to-cloud RunCycle
বৈশিষ্ট্যের মানচিত্র। এটি "প্রি-হিটিং", "প্রি-হিটেড", এবং "কুলিং ডাউন" এর মতো পর্যায়গুলিকে সংজ্ঞায়িত করে।
হোম API | Cloud-to-cloud |
---|---|
OvenCavityOperationalState | RunCycle |
Cloud-to-cloud ওভেন ডেটা মডেলের সীমাবদ্ধতা রয়েছে। Cloud-to-cloud ওভেন ডেটা মডেল শুধুমাত্র একটি একক চেম্বারের জন্য অনুমতি দেয়, একটি একক RunCycle
সহ। বিপরীতে, Matter প্রতিটি চেম্বারের জন্য একটি ওভেন ক্যাভিটি অপারেশনাল স্টেট ক্লাস্টার সহ একটি ডিভাইস এন্ডপয়েন্ট হিসাবে একটি মাল্টি-চেম্বার ওভেন মডেল করে।
কিছু ওভেন ডিভাইসের জন্য, রানটাইমে ফেজ তালিকা পরিবর্তন করা উপযুক্ত হতে পারে। উদাহরণ স্বরূপ, প্রি-হিটিং সমর্থনকারী ওভেনগুলি গরম বা কুলডাউন পর্যায়গুলির তুলনায় প্রিহিটিং পর্বের সময় ফেজ তালিকায় বিভিন্ন এন্ট্রি থাকতে পারে।
প্রস্তাবিত বাস্তবায়ন
পূর্ববর্তী বিভাগে আলোচনা করা হয়েছে, একটি Matter ওভেন বাস্তবায়ন ওভেন ক্যাভিটি অপারেশনাল স্টেট ক্লাস্টার বাস্তবায়ন করা উচিত, যা হোম API-এ OvenCavityOperationalState
বৈশিষ্ট্য হিসাবে মডেল করা হয়েছে।
সর্বোত্তম ফলাফলের জন্য, নিশ্চিত করুন যে আপনার Cloud-to-cloud ওভেন ডিভাইসটি RunCycle
বৈশিষ্ট্য প্রয়োগ করে এবং currentRunCycle
বৈশিষ্ট্য সেট করে বর্তমান অবস্থা প্রকাশ করে। OvenCavityOperationalState.phaseList
এবং OvenCavityOperationalState.currentPhase
অ্যাট্রিবিউটের মাধ্যমে এই বৈশিষ্ট্যটি হোম API-এর দ্বারা পর্যবেক্ষণযোগ্য।
ওভেন ডিভাইসটি RunCycle
priority
, status
, এবং currentCycleRemainingTime
বৈশিষ্ট্য আপডেট করে একটি রান সাইকেল ডিভাইস বিজ্ঞপ্তি প্রকাশ করবে। নিম্নলিখিত উদাহরণের ফলে একটি OperationalState.OperationCompletion
ইভেন্ট পাঠানো হয়, এবং ওভেনটি 'প্রি-হিটিং' চক্র থেকে 'প্রি-হিটেড' চক্রে রূপান্তরিত হয়েছে তা বোঝাতে ব্যবহার করা যেতে পারে:
{
"currentRunCycle": [
{
"currentCycle": "pre-heating",
"nextCycle": "pre-heated",
"lang": "en"
}
],
"currentTotalRemainingTime": 1200,
"currentCycleRemainingTime": 300
}
একটি অটোমেশন একটি চুলা ব্যবহার করুন
ওভেন ক্যাভিটি অপারেশনাল স্টেট ক্লাস্টার ব্যবহার করে বাস্তবায়িত ওভেনের জন্য একটি অটোমেশন তৈরি করার সময়, ওভেনটি কোন চক্রে রয়েছে তা জানতে currentPhase
বৈশিষ্ট্যটি উল্লেখ করুন:
sequential {
val starterNode =
starter<_>(oven, OvenDevice, OvenCavityOperationalState /* Or OperationalState */)
condition {
expression = starterNode.phaseList[operationalState.currentPhase.toUInt()] equals "pre-heated"
}
action(speaker, SpeakerDevice) {
command(AssistantBroadcast.broadcast("Oven Cycle Complete"))
}
// Additional actions here as needed
}
একটি সম্পূর্ণ উদাহরণের জন্য, লাইট ব্লিঙ্ক করুন এবং ঘোষণা করুন যখন ওভেনটি নির্বাচিত তাপমাত্রায় পৌঁছাবে ।