উদ্দেশ্য

স্মার্ট হোম ইনটেন্ট হল সাধারণ মেসেজিং অবজেক্ট যা বর্ণনা করে কোন Cloud-to-cloud ইন্টিগ্রেশন পারফর্ম করতে হবে যেমন আলো জ্বালানো বা স্পিকারে অডিও কাস্ট করা।

smart home-এর সব ইনটেন্ট action.devices নেমস্পেসে রয়েছে এবং আপনাকে সেগুলি পূরণ করতে হবে। যখনই Google Assistant ফুলফিলমেন্টের জন্য ইনটেন্ট পাঠায়, তখন ব্যবহারকারীর থার্ড-পার্টি OAuth 2 অ্যাক্সেস টোকেন Authorization হেডারে পাস করা হয়।

এইসব smart home ইন্টেন্ট কাজ করে:

SYNC

action.devices.SYNC ইনটেন্ট ব্যবহার করে ব্যবহারকারীর কানেক্ট করা এবং ব্যবহারের জন্য উপলভ্য smart home ডিভাইসের তালিকা অনুরোধ করা হয়।

কোনও ব্যবহারকারী Google Home app (GHA)-এর মাধ্যমে তার ডিভাইস সেট-আপ করলে, আপনার ক্লাউড ইনফ্রাস্ট্রাকচারেও তার পরিচয় যাচাই করা হয়। তারপর, Assistant একটি OAuth2 টোকেন পায়। এই পর্যায়ে, Assistant আপনার ক্লাউড ইনফ্রাস্ট্রাকচার থেকে ব্যবহারকারীর ডিভাইস ও ক্ষমতার প্রাথমিক তালিকা উদ্ধার করার জন্য আপনার ফুলফিলমেন্টে action.devices.SYNC ইনটেন্ট পাঠায়।

এই চিত্রটি Google ইনফ্রাস্ট্রাকচার এবং পার্টনার ইনফ্রাস্ট্রাকচারের
    মধ্যে ইন্টার‍্যাকশন দেখায়। Google ইনফ্রাস্ট্রাকচার থেকে Assistant ক্লায়েন্ট অ্যাপে
    পার্টনারদের একটি তালিকা উপলভ্য থাকে, যা পরে
    OAuth যাচাইকরণ সম্পূর্ণ করার জন্য পার্টনার ইনফ্রাস্ট্রাকচারে পাঠানো হয়। পার্টনারের
    দিকে OAuth যাচাইকরণ হল পার্টনার সেট-আপ ওয়েবভিউ, OAuth ওয়েবভিউ,
    ঐচ্ছিক সেটিংস ও শর্তাবলী এবং পার্টনার ক্লাউড পরিষেবা। পার্টনার ইনফ্রাস্ট্রাকচার,
    তারপর Assistant ক্লায়েন্ট অ্যাপে OAuth ক্রেডেনশিয়াল ফেরত পাঠায়। পার্টনার
    ক্লাউড পরিষেবা, Assistant পরিষেবায় উপলভ্য ডিভাইস ও কার্যকারিতা পাঠায়,
    যা পরে Home Graph-এ তথ্য স্টোর করে।
ছবি ১: Google ও পার্টনারের ইনফ্রাস্ট্রাকচারের মধ্যে ইন্টার‍্যাকশন

ব্যবহারকারীর অ্যাকাউন্ট আনলিঙ্ক ও আবার লিঙ্ক করা এড়াতে, আপনি Assistant-এ সিঙ্ক করার অনুরোধ পাঠাতে পারেন। এটি আপনার ফুলফিলমেন্টে action.devices.SYNC ইনটেন্ট পাঠায় যাতে ডিভাইস ও ক্ষমতার তালিকা সিঙ্ক করা যায়। আরও তথ্যের জন্য সিঙ্ক করার অনুরোধ প্রয়োগ করুন দেখুন।

সিঙ্ক ইনটেন্টের ফ্লো ডায়াগ্রাম
ছবি ২: SYNC ইনটেন্ট

লোকাল ফুলফিলমেন্ট সেট-আপ করার সময়, লোকাল হোম প্ল্যাটফর্ম আপনার smart home অ্যাকশনের ক্লাউড ফুলফিলমেন্ট থেকে SYNC উত্তর চেক করে। লোকাল ফুলফিলমেন্টের জন্য আপনার SYNC রেসপন্স কীভাবে পরিবর্তন করবেন সেই সম্পর্কে আরও জানতে, ক্লাউড ফুলফিলমেন্টে SYNC রেসপন্স আপডেট করুন দেখুন।

proshno QUERY

smart home ডিভাইসের বর্তমান অবস্থা সম্পর্কে কোয়েরি করতে action.devices.QUERY ইনটেন্ট ব্যবহার করা হয়।

ব্যবহারকারী ডিভাইসের স্ট্যাটাস সম্পর্কে প্রশ্ন করলে, যেমন Ok Google, রান্নাঘরে কোন আলো জ্বলছে?, Assistant আপনার ফুলফিলমেন্টে action.devices.QUERY ইনটেন্ট পাঠায়।

কোয়েরি ইনটেন্টের ফ্লো ডায়াগ্রাম
ছবি ৩: QUERY ইনটেন্ট

ব্যবহারকারীর সেরা অভিজ্ঞতার জন্য, আপনাকে রিপোর্ট স্টেট প্রয়োগ করতে হবে যাতে ব্যবহারকারীর ডিভাইসের বর্তমান অবস্থা সরাসরি Google Home Graph-এ প্রোঅ্যাক্টিভভাবে রিপোর্ট করা যায়। যেমন, এর মাধ্যমে Assistant জানতে পারে যে আপনার ব্যবহারকারী ফিজিক্যাল লাইট সুইচের মাধ্যমে স্মার্ট লাইট চালু করেছেন কিনা।

'রিপোর্ট স্টেট' ব্যবহার করে ডিভাইসের স্ট্যাটাস রিপোর্ট করা
ছবি ৪: ডিভাইসের স্ট্যাটাস রিপোর্ট করা

EXECUTE

smart home ডিভাইসে কমান্ড এক্সিকিউট করার জন্য action.devices.EXECUTE ইনটেন্ট ব্যবহার করা হয়।

ব্যবহারকারীরা Assistant-এর মাধ্যমে ডিভাইসে কমান্ড পাঠালে, আপনার ফুলফিলমেন্ট একটি action.devices.EXECUTE ইনটেন্ট পায় যা অ্যাকশন এবং যে ডিভাইসে অ্যাকশন নিতে হবে তা বর্ণনা করে। ব্যবহারকারী কোনও ডিভাইসে Ok Google, আমার বসার ঘরের আলো জ্বালাও-এর মতো কমান্ডের মাধ্যমে কোনও অ্যাকশন কার্যকর করতে পারেন।

EXECUTE ইনটেন্টের ফ্লো ডায়াগ্রাম
ছবি ৫: EXECUTE ইনটেন্ট

সংযোগ বিচ্ছিন্ন করুন

Assistant থেকে কোনও ব্যবহারকারী অ্যাপ অ্যাকাউন্ট আনলিঙ্ক করলে আপনাকে জানানোর জন্য action.devices.DISCONNECT ইনটেন্ট ট্রিগার করা হয়। action.devices.DISCONNECT ইনটেন্ট পাওয়ার পরে, এই ব্যবহারকারীর ডিভাইসের জন্য আপনার স্ট্যাটাস রিপোর্ট করা উচিত নয়।