একটি অটোমেশন টেমপ্লেট তৈরি করুন

এই কোডল্যাব সম্পর্কে
schedule৩৪ মিনিট
subject২৬ সেপ্টেম্বর, ২০২৩-এ শেষবার আপডেট করা হয়েছে
account_circleJonathan Donald and Andres Gomez-এর লেখা
  • কিভাবে একটি অটোমেশন টেমপ্লেট ডিজাইন এবং লিখতে হয়।
  • গুগল হোম ডেভেলপার কনসোল ব্যবহার করে কীভাবে একটি অটোমেশন টেমপ্লেট পরীক্ষা করবেন।
  • একটি Android বা iOS ফোন যা Google Home অ্যাপ চালাচ্ছে।
  • হয় একটি স্মার্ট লাইট যা আপনার বাড়িতে অনবোর্ড করা হয়েছে, অথবা Google হোম প্লেগ্রাউন্ডে একটি সিমুলেটেড ডিভাইস৷

গুগল হোম অটোমেশন কীভাবে লিখতে হয় তার সাথে আপনার পরিচিত হওয়া উচিত। আপনি যদি কখনও একটি অটোমেশন না লিখে থাকেন তবে এটির সাথে এগিয়ে যাওয়ার আগে একটি স্ক্রিপ্টেড অটোমেশন কোডল্যাব তৈরি করুন

বিকাশকারীরা Google হোম ডেভেলপার কনসোলে অটোমেশন টেমপ্লেট সম্পাদক ব্যবহার করে অটোমেশন টেমপ্লেট তৈরি করে৷ অটোমেশন টেমপ্লেটগুলি স্ক্রিপ্ট লজিকের সারাংশ ধারণ করে, ডিভাইসের ধরন উল্লেখ করে, তবে নির্দিষ্ট ডিভাইস নয়।

ওয়েবের অটোমেশন স্ক্রিপ্ট সম্পাদকের জন্য Google হোম ব্যবহার করে, শেষ-ব্যবহারকারীরা একটি অটোমেশন টেমপ্লেট নেয় এবং একটি ব্যক্তিগতকৃত দৃষ্টান্ত তৈরি করে যা তাদের নিজস্ব বাড়িতে নির্দিষ্ট ডিভাইসগুলিতে কাজ করে। একবার সেভ করা হলে, উদাহরণটি Google Home অ্যাপে (GHA) গৃহস্থালির রুটিনের অধীনে প্রদর্শিত হয়।

3. আপনার অটোমেশন টেমপ্লেট পরিকল্পনা করুন

একটি অটোমেশন তৈরি করার সময়, একজন যে সমস্যাটি সমাধান করার চেষ্টা করছেন সে সম্পর্কে চিন্তা করে শুরু করে এবং সমস্যাটি সমাধান করতে অটোমেশন কী করবে। এর মধ্যে এই ধরনের বিবেচনা অন্তর্ভুক্ত রয়েছে:

  • কোন ডিভাইস আপনি স্বয়ংক্রিয় করতে চান.
  • কি স্টার্টার (বা ইভেন্ট) অটোমেশন কার্যকরী ট্রিগার করা উচিত.
  • কোন অতিরিক্ত শর্ত, যদি থাকে, অটোমেশনটি একবার ট্রিগার হয়ে গেলে চলবে কি না তা নিয়ন্ত্রণ করুন।
  • কি কর্ম সঞ্চালন করা হয়.

এই কোডল্যাবের উদ্দেশ্যে, আপনার অটোমেশন দুটি জিনিস করবে:

  1. একটি নির্দিষ্ট সময়ে একটি আলো চালু করুন।
  2. একটি নির্দিষ্ট সময়ে একই আলো বন্ধ করুন।

এটি মাথায় রেখে, আপনি টেমপ্লেট সম্পাদক খুলতে এবং অটোমেশন লিখতে প্রস্তুত।

4. অটোমেশন টেমপ্লেট লিখুন

YAML ডেটা-সিরিয়ালাইজেশন ভাষা ব্যবহার করে অটোমেশনগুলি একটি ঘোষণামূলক ফ্যাশনে লেখা হয়।

একটি অটোমেশন টেমপ্লেটের তিনটি প্রাথমিক বিভাগ রয়েছে:

  1. মেটাডেটা - অটোমেশনের নাম, এটি কী করে তার একটি বিবরণ এবং ঐচ্ছিকভাবে, কিছু ট্যাগ যা অটোমেশনকে শ্রেণীবদ্ধ করতে ব্যবহৃত হয়। কীওয়ার্ডগুলো হল:
    • আলো এবং প্লাগ
    • জলবায়ু এবং শক্তি
    • নিরাপত্তা এবং সচেতনতা
    • বিনোদন
    • যন্ত্রপাতি এবং আরও অনেক কিছু
  2. ইনপুট - অটোমেশন নিয়ন্ত্রণ করার উদ্দেশ্যে কি ধরনের ডিভাইস(গুলি) নির্ধারণ করে। অটোমেশন ইঞ্জিন এই তথ্যটি ব্যবহার করে জানার জন্য যে কোন ধরণের ক্রিয়াগুলি উদ্দিষ্ট ডিভাইসগুলির জন্য বৈধ।
  3. অটোমেশন নিয়ম - অটোমেশনের সূচনা যুক্তি এবং আচরণ সংজ্ঞায়িত করে।

এটি হল অটোমেশন টেমপ্লেট যার সাথে আপনি কাজ করবেন:

metadata:
  name:
    en: Scheduled light
 
description:
    en: Turn the light on and off at specific times
 
tags:
    - LIGHTING AND PLUGS
input:
  the_light:
    metadata:
      name:
        en: The light
     
description:
        en: The light to be controlled
   
selector:
      type: device
     
multiSelect: true
     
supportedTypes:
        - LIGHT
 
time_on:
    metadata:
      name:
        en: Time to turn on the light.
     
description:
        en: The time of day to turn on the selected light.
   
selector:
      type: time
     
default: sunset+30min
 
time_off:
    metadata:
      name:
        en: Time to turn off the light.
     
description:
        en: The time of day to turn off the selected light.
   
selector:
      type: time
     
default: 10:00 pm
automations:
  - name: Turn on the light
   
starters:
      - type: time.schedule
       
at: $time_on
   
actions:
      - type: device.command.OnOff
       
devices: $the_light
       
on: true
 
- name: Turn off the light
   
starters:
      - type: time.schedule
       
at: $time_off
   
actions:
      - type: device.command.OnOff
       
devices: $the_light
       
on: false

টেমপ্লেটটি পড়ুন এবং নিম্নলিখিতটি নোট করুন:

  • metadata বিভাগে এই অটোমেশনের নাম এবং বিবরণ রয়েছে।
  • input বিভাগটি the_light নামের একটি ভেরিয়েবলকে সংজ্ঞায়িত করে যা LIGHT ধরনের একটি ডিভাইসকে নির্দিষ্ট করে। এর মানে হল যে এই টেমপ্লেটটি শুধুমাত্র আলোর জন্য ব্যবহার করা যেতে পারে, অন্য ধরনের ডিভাইসের জন্য নয়। অন্য কথায়, যখন কোনও ব্যবহারকারী, তাদের বাড়িতে আপনার অটোমেশন সেট আপ করে, $the_light এর জন্য একটি ডিভাইস নির্বাচন করার জন্য অনুরোধ করা হয়, তখন তাদের ডিভাইসের পছন্দটি আপনার নির্দিষ্ট করা ডিভাইসগুলির মধ্যে সীমাবদ্ধ থাকে৷
  • এছাড়াও input বিভাগে সংজ্ঞায়িত করা হয়েছে time_on এবং time_off নামে দুটি ভেরিয়েবল। এগুলি ব্যবহারকারীকে কখন অটোমেশন শুরু করতে হবে তা নির্দিষ্ট করার অনুমতি দেয়। time_on আলোটি চালু হওয়ার সময়কে প্রতিনিধিত্ব করে এবং time_off আলোটি বন্ধ করার সময়কে প্রতিনিধিত্ব করে। ব্যবহারকারী যদি time_on বা time_off এর মান সেট না করে তবে ডিফল্ট মান ব্যবহার করা হয়।
  • আমাদের অটোমেশনের automations বিভাগে দুটি অটোমেশন নিয়ম রয়েছে। প্রতিটি নিয়মে একটি একক time.schedule স্টার্টার থাকে যা অটোমেশনকে বলে যে অটোমেশনটি কখন শুরু করতে হবে।

টেমপ্লেট সম্পাদক

অটোমেশন টেমপ্লেট এডিটর হল সেই টুল যা আপনি অটোমেশন টেমপ্লেট লিখতে ব্যবহার করেন।

  1. গুগল হোম ডেভেলপার কনসোলে যান।
  2. Google Home অ্যাপে যে অ্যাকাউন্ট দিয়ে আপনার ডিভাইস সেট-আপ করা আছে সেই অ্যাকাউন্ট দিয়ে সাইন-ইন করুন।
  3. একটি বিদ্যমান প্রকল্প তৈরি করুন বা নির্বাচন করুন।
  4. অটোমেশনের অধীনে, বিকাশে ক্লিক করুন।
  5. একটি টেমপ্লেট তৈরি করুন ক্লিক করুন।
  6. "নির্ধারিত আলো" অটোমেশন টেমপ্লেটটি অনুলিপি করুন।
  7. টেমপ্লেট সম্পাদকে "নির্ধারিত আলো" অটোমেশন টেমপ্লেটটি আটকান৷
  8. যাচাই করুন ক্লিক করুন। যেকোন ত্রুটির সমাধান করুন এবং কোন ত্রুটি উত্থাপিত না হওয়া পর্যন্ত যাচাইকরণ এবং সংশোধন করা চালিয়ে যান।
  9. টেমপ্লেট সংরক্ষণ করতে সংরক্ষণ করুন ক্লিক করুন.

5. টেমপ্লেট পরীক্ষা করুন

এখন আপনি কনসোলে টেমপ্লেট পরীক্ষা করতে পারেন।

  1. Google Home অ্যাপে আপনার আলো প্লাগ-ইন করা এবং দৃশ্যমান আছে কিনা দেখে নিন।
  2. লাইট অন থাকলে অফ করে দিন।
  3. গুগল হোম ডেভেলপার কনসোলে যান।
  4. আপনি যেখানে আপনার টেমপ্লেট তৈরি করেছেন সেই প্রকল্পটি খুলুন।
  5. অটোমেশন নির্বাচন করুন, তারপর পরীক্ষা ট্যাব নির্বাচন করুন।
  6. "নির্ধারিত আলো" অটোমেশন টেমপ্লেটের পাশে খুলুন ক্লিক করুন।
  7. যে কাঠামোতে আপনি টেমপ্লেট পরীক্ষা করতে চান সেটি নির্বাচন করুন, তারপর Next এ ক্লিক করুন।
  8. InputValue এডিটরে, আপনার আলোর নাম উল্লেখ করুন। উদাহরণস্বরূপ, যদি আপনার আলোর নাম হয় "ডেস্ক লাইট - অফিস", আপনি ড্রপ-ডাউন মেনু থেকে Desk light - Office নির্বাচন করবেন যা আপনি lights ডানদিকে ক্লিক করলে প্রদর্শিত হবে। অথবা আপনি ডিভাইসের নাম টাইপ করতে পারেন।
  9. এছাড়াও InputValue এডিটরে, time_on সময় নির্দিষ্ট করুন, ভবিষ্যতে পাঁচ মিনিট, এবং time_on কিছুক্ষণ পরে time_off সময় পরিবর্তন করুন।
  10. আপনার কাজ শেষ হয়ে গেলে, ইনপুট ভ্যালু এডিটর দেখতে এরকম কিছু হওয়া উচিত:
    inputValue:
     #add value
     
    the_light: Desk light - Office
     
    #add value
     
    time_off: 11:45 am
     
    #add value
     
    time_on: 11:40 am
  11. পরীক্ষা সক্রিয় করুন ক্লিক করুন.
  12. দুটি স্টার্টার সময় পাস করার জন্য অপেক্ষা করুন। আলো আসা উচিত এবং তারপর নির্দিষ্ট সময়ে বন্ধ করা উচিত.

একবার আপনি আপনার টেমপ্লেটটি সফলভাবে পরীক্ষা করলে, আপনি জানেন যে আপনার অটোমেশন কার্যকরীভাবে ভালো।

6. অভিনন্দন!

আপনি সফলভাবে একটি অটোমেশন টেমপ্লেট তৈরি করেছেন। অসাধারন!

এই কোডল্যাবে আপনি শিখেছেন কিভাবে:

  • কিভাবে একটি অটোমেশন টেমপ্লেট ডিজাইন এবং লিখতে হয়।
  • গুগল হোম ডেভেলপার কনসোলে এটি কীভাবে পরীক্ষা করবেন।

পরবর্তী পদক্ষেপ

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

আরও পড়া

গুগল হোম অটোমেশন সম্পর্কে আরও জানতে, অটোমেশন রেফারেন্স ডকুমেন্টেশন অন্বেষণ করুন: