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

1. ভূমিকা

তুমি কি শিখবে

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

তোমার যা লাগবে

  • গুগল হোম অ্যাপ চালিত একটি অ্যান্ড্রয়েড বা আইওএস ফোন।
  • একটি স্মার্ট লাইট বা অন্য ডিভাইস যা Works With Google Home এর জন্য প্রত্যয়িত এবং চালু বা বন্ধ করা যেতে পারে।

2. আপনার ডিভাইস সেট আপ করুন

যদি আপনার ডিভাইসটি ইতিমধ্যে সেট আপ না করা থাকে, তাহলে এগিয়ে যান এবং এটি আপনার বাড়িতে সেট আপ করুন।

নিশ্চিত করুন যে ডিভাইসটি Google Home অ্যাপে দেখা যাচ্ছে এবং আপনি Home অ্যাপ ব্যবহার করে এটি চালু এবং বন্ধ করতে পারবেন।

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

আমরা আমাদের স্ক্রিপ্টেড অটোমেশনের মাধ্যমে কী করতে চাই তা নিয়ে চিন্তা করে শুরু করব। এর মধ্যে নিম্নলিখিত বিবেচ্য বিষয়গুলি অন্তর্ভুক্ত রয়েছে:

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

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

  1. নির্দিষ্ট সময়ে আপনার আলো (বা অন্য স্মার্ট ডিভাইস) জ্বালান।
  2. নির্দিষ্ট সময়ে আপনার ডিভাইসটি বন্ধ করুন।

এখন যেহেতু আমরা আমাদের স্ক্রিপ্টেড অটোমেশন ঠিক কী করতে চাই তা সম্পর্কে স্পষ্ট, আমরা স্ক্রিপ্ট এডিটর খুলব এবং স্ক্রিপ্টেড অটোমেশন লিখব।

৪. স্ক্রিপ্টেড অটোমেশন লিখুন

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

একটি স্ক্রিপ্টেড অটোমেশন দুটি প্রাথমিক বিভাগ নিয়ে গঠিত:

  1. মেটাডেটা - স্ক্রিপ্টেড অটোমেশনের নাম এবং এটি কী করে তার বিবরণ।
  2. অটোমেশন নিয়ম — অটোমেশনের সূচনা যুক্তি এবং আচরণ সংজ্ঞায়িত করে।

মেটাডেটা

আমাদের অটোমেশনের মেটাডেটা ব্যবহারকারীকে অটোমেশন কী বলা হয় এবং এটি কী করে তা বলে। মেটাডেটা metadata ব্লকে নির্দিষ্ট করা আছে, যা দেখতে এরকম:

metadata:
  name: Scheduled light
  description: Turn the light on and off at specific times

অটোমেশন নিয়ম

একটি অটোমেশন নিয়ম হল যেখানে আসল কাজটি ঘটে। এটি তিনটি অংশ নিয়ে গঠিত, শুরু , শর্ত এবং ক্রিয়া , যা ক্রমানুসারে মূল্যায়ন করা হয়:

১টি স্টার্টার

২টি শর্ত

৩টি পদক্ষেপ

স্টার্টার হলো অটোমেশনের সূচনাকারী। পরবর্তী শর্তগুলি মূল্যায়নের জন্য কমপক্ষে একটি স্টার্টারকে true হিসাবে মূল্যায়ন করতে হবে।

এগুলো ঐচ্ছিক, এবং এক বা একাধিক অতিরিক্ত সীমাবদ্ধতা নিয়ে গঠিত যা স্টার্টার সক্রিয় হওয়ার পরে মূল্যায়ন করা হয়। যদি শর্তগুলি true সমাধান হয়, তাহলে ক্রিয়াগুলি চালানো হবে। যদি তারা false সমাধান করে, তাহলে ক্রিয়াগুলি চালানো হবে না।

একাধিক সীমাবদ্ধতা অন্তর্ভুক্ত করার সময়, একটি একক লজিক্যাল এক্সপ্রেশন তৈরি করতে and or দিয়ে তাদের আলাদা করুন। একটি অটোমেশনের ক্রিয়া এগিয়ে যাওয়ার জন্য এই এক্সপ্রেশনটিকে true পরিণত করতে হবে।

একটি শর্ত এবং একটি রাজ্য পরিবর্তন বিজ্ঞপ্তি এক নয়:

  • একটি শর্ত এমন একটি সত্যকে প্রতিনিধিত্ব করে যা ক্রিয়াগুলি চালানোর জন্য স্টার্টার "চালান" করার সময় সত্য হতে হবে।
  • অবস্থা পরিবর্তনের বিজ্ঞপ্তি হল এমন একটি ঘটনা যেমন অন্য একটি ডিভাইস চালু করা হচ্ছে।

ক্রিয়াগুলি হল এমন ক্রিয়াকলাপ যা স্টার্টার এবং যেকোনো সীমাবদ্ধতার শর্ত পূরণ হলে সম্পাদিত হয়।

আমাদের অটোমেশনের automations ব্লকে দুটি নিয়ম রয়েছে:

automations:
  - starters:
      - type: time.schedule
        at: 1:00 PM
    actions:
      - type: device.command.OnOff
        devices: Desk light - Office
        on: true
  - starters:
      - type: time.schedule
        at: 1:05 PM
    actions:
      - type: device.command.OnOff
        devices: Desk light - Office
        on: false

নিম্নলিখিত বিষয়গুলি লক্ষ্য করুন:

  1. automations দুটি নিয়ম আছে। প্রথমটি আলো জ্বালায়, এবং দ্বিতীয়টি আলো নিভিয়ে দেয়।
  2. প্রতিটি নিয়মের একটি মাত্র ক্রিয়া আছে।
  3. on: true মানে আলো জ্বালানো । একইভাবে, on: false মানে আলো বন্ধ করা
  4. প্রতিটি নিয়মের একটি একক time.schedule স্টার্টার থাকে যা অটোমেশনকে বলে দেয় যে কখন অটোমেশন শুরু করতে হবে।
  5. এই অটোমেশনে কোন শর্ত নেই।

৫. সম্পূর্ণ স্ক্রিপ্টেড অটোমেশন

এই সমস্ত অংশ একসাথে রেখে, সম্পূর্ণ স্ক্রিপ্টেড অটোমেশনটি কেমন দেখাবে তা এখানে দেওয়া হল:

metadata:
  name: Scheduled light
  description: Turn the light on and off at specific times
automations:
  - starters:
      - type: time.schedule
        at: 1:00 PM
    actions:
      - type: device.command.OnOff
        devices: Desk light - Office
        on: true
  - starters:
      - type: time.schedule
        at: 1:05 PM
    actions:
      - type: device.command.OnOff
        devices: Desk light - Office
        on: false
  1. অটোমেশনটি (উপরে) কপি করুন।
  2. ওয়েবের জন্য গুগল হোমে যান।
  3. তিনটি তারা বিশিষ্ট একটি আইকন দ্বারা প্রতিনিধিত্ব করা অটোমেশন ট্যাবটি নির্বাচন করুন:
    অটোমেশন ট্যাব
  4. + নতুন যোগ করুন ক্লিক করুন।
  5. স্ক্রিপ্ট এডিটরে, অটোমেশন টেমপ্লেটটি মুছে ফেলুন।
  6. আপনার অটোমেশন পেস্ট করুন।
  7. আপনার ডিভাইসের নাম এবং অবস্থান দিয়ে Desk light - Office প্রতিস্থাপন করুন।
  8. Validate এ ক্লিক করুন। স্ক্রিপ্ট এডিটর আপনার স্ক্রিপ্টেড অটোমেশনের যেসব অংশে ত্রুটি রয়েছে সেগুলিকে আন্ডারলাইন করে। যেকোনো ত্রুটি দেখা দিলে তা সমাধান করুন এবং যতক্ষণ না আর কোনও ত্রুটি না থাকে ততক্ষণ যাচাই এবং সংশোধন করতে থাকুন। উদাহরণস্বরূপ, আপনার ডিভাইসের নাম ভিন্ন হতে পারে। যদি তাই হয়, তাহলে আপনি একটি বৈধ ডিভাইসের নাম বেছে নিতে অটোকম্পলিট বৈশিষ্ট্যটি ব্যবহার করতে পারেন।
  9. সংরক্ষণ করুন ক্লিক করুন।
  10. আপনার স্ক্রিপ্টের টেক্সটের নীচে থাকা অ্যাক্টিভেট সুইচটি অন অবস্থানে আছে কিনা তা নিশ্চিত করুন: সম্পূর্ণরূপে যাচাইকৃত এবং সক্রিয় স্ক্রিপ্টেড অটোমেশন সহ স্ক্রিপ্ট সম্পাদক

৬. অটোমেশন পরীক্ষা করুন

  1. নিশ্চিত করুন যে আপনার ডিভাইসটি প্লাগ ইন করা আছে এবং Google Home অ্যাপে দৃশ্যমান।
  2. যদি ডিভাইসটি বর্তমানে চালু থাকে, তাহলে এটি বন্ধ করুন।
  3. গুগল হোম ফর ওয়েবের অটোমেশন পৃষ্ঠায়, আপনার অটোমেশনের পাশে 'রান' বোতামে ক্লিক করুন।
    স্ক্রিপ্ট রানবাটন
  4. যন্ত্রটি চালু হওয়া উচিত।

এবার, অটোমেশন পরীক্ষা করা যাক।

  1. ডিভাইসটি বন্ধ করুন।
  2. অটোমেশন সম্পাদনা করুন, এবং ভবিষ্যতে ৭ নম্বর লাইনে 'ডিভাইস চালু' সময় পাঁচ মিনিটে পরিবর্তন করুন।
  3. ১৪ নম্বর লাইনে 'ডিভাইস বন্ধ' সময়কে 'সময়মতো' হওয়ার কিছুক্ষণ পরেই একটি সময়ে পরিবর্তন করুন।
  4. যাচাই করুন ক্লিক করুন। যেকোনো ত্রুটির সমাধান করুন।
  5. সংরক্ষণ করুন ক্লিক করুন।
  6. নিশ্চিত করুন যে অ্যাক্টিভেট সুইচটি চালু অবস্থানে আছে।
  7. দুটি স্টার্টার টাইম পার হওয়া পর্যন্ত অপেক্ষা করুন। ডিভাইসটি আপনার নির্দিষ্ট সময়ে চালু হওয়া উচিত এবং তারপর বন্ধ হয়ে যাওয়া উচিত।

৭. অভিনন্দন!

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

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

  • কিভাবে একটি অটোমেশন ডিজাইন এবং লিখবেন।
  • কিভাবে একটি অটোমেশন পরীক্ষা করবেন।

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

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

নিম্নলিখিত ব্যায়ামগুলি চেষ্টা করে দেখুন:

  • অটোমেশনে আরও time.schedule শুরু যোগ করুন।
  • একই সময়সূচীতে অন্য ডিভাইস চালু এবং বন্ধ করতে অটোমেশন পরিবর্তন করুন।
  • time.schedule স্টার্টারগুলি না সরিয়ে, অটোমেশন পরিবর্তন করুন যাতে অন্য ডিভাইস চালু থাকলেই কেবল ডিভাইসগুলি চালু হয়। condition ধারা ব্যবহার করে এমন স্ক্রিপ্টগুলির উদাহরণ দেখুন।
  • বাড়িতে কেউ থাকলেই কেবল ডিভাইসগুলি চালু করার জন্য অটোমেশন পরিবর্তন করুন।

আরও পড়া

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