स्क्रिप्ट किया गया ऑटोमेशन बनाएं

1. परिचय

आपको क्या सीखने को मिलेगा

  • स्क्रिप्टेड ऑटोमेशन की योजना बनाने और उसे लिखने का तरीका.
  • स्क्रिप्ट किए गए ऑटोमेशन की जांच करने का तरीका.

आपको किन चीज़ों की ज़रूरत होगी

  • Android या iOS फ़ोन, जिस पर Google Home ऐप्लिकेशन चल रहा हो.
  • स्मार्ट लाइट या कोई दूसरा डिवाइस, जो Works with Google Home के लिए सर्टिफ़ाइड है और उसे चालू या बंद किया जा सकता है.

2. अपना डिवाइस सेट अप करें

अगर आपका डिवाइस पहले से सेट अप नहीं है, तो इसे अपने होम में सेट अप करें.

पक्का करें कि डिवाइस, Google Home ऐप्लिकेशन में दिखता हो. साथ ही, आप Home ऐप्लिकेशन की मदद से इसे चालू या बंद कर सकते हैं.

3. अपने स्क्रिप्ट किए गए ऑटोमेशन की योजना बनाएं

हम इस बारे में सोचेंगे कि स्क्रिप्ट के हिसाब से अपने-आप काम करने वाला सिस्टम क्या करेगा. इसमें ये बातें शामिल हैं:

  • जिन डिवाइसों को आपको ऑटोमेट करना है.
  • किस स्टार्टर (या इवेंट) को स्क्रिप्ट के मुताबिक ऑटोमेशन को ट्रिगर करना चाहिए.
  • अगर कोई अन्य शर्त है, तो यह कंट्रोल करती है कि ट्रिगर होने के बाद, स्क्रिप्ट किया गया ऑटोमेशन चलेगा या नहीं.
  • कौनसी कार्रवाइयां की जानी चाहिए.

इस कोडलैब के लिए, हमारी योजना है कि स्क्रिप्ट किए गए ऑटोमेशन में दो काम किए जाएं:

  1. अपनी लाइट (या दूसरे स्मार्ट डिवाइस) को किसी ख़ास समय पर चालू करें.
  2. अपना डिवाइस किसी तय समय पर बंद करें.

अब जब हम अच्छी तरह से समझ गए हैं कि हमें अपने स्क्रिप्ट किए गए ऑटोमेशन का इस्तेमाल क्या करना है, तो हम स्क्रिप्ट एडिटर खोलेंगे और स्क्रिप्टेड ऑटोमेशन लिखेंगे.

4. स्क्रिप्टेड ऑटोमेशन में बदलाव करने की अनुमति दें

स्क्रिप्ट किए गए ऑटोमेशन, YAML डेटा-सीरियलाइज़ेशन लैंग्वेज का इस्तेमाल करके, डिक्लेरेटिव टोन में लिखे जाते हैं.

स्क्रिप्टेड ऑटोमेशन में दो मुख्य सेक्शन होते हैं:

  1. मेटाडेटा - स्क्रिप्ट किए गए ऑटोमेशन का नाम और इससे जुड़ी जानकारी.
  2. ऑटोमेशन के नियम — इसकी मदद से, ऑटोमेशन शुरू करने का तरीका और व्यवहार तय किया जाता है.

मेटाडेटा

हमारे ऑटोमेशन के मेटाडेटा से, उपयोगकर्ता को यह पता चलता है कि ऑटोमेशन को क्या कहा जाता है और यह क्या करता है. metadata ब्लॉक में मेटाडेटा की जानकारी दी जाती है. यह कुछ ऐसा दिखता है:

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

ऑटोमेशन के नियम

ऑटोमेशन नियम वह जगह है जहां असल काम होता है. इसके तीन हिस्से होते हैं, स्टार्टर, शर्तें, और कार्रवाइयां, जिनका आकलन क्रम से किया जाता है:

1 स्टार्टर

2 शर्तें

तीन कार्रवाइयां

स्टार्टर से ऑटोमेशन शुरू होता है. बाद की शर्तों का आकलन करने के लिए, कम से कम एक स्टार्टर को 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. इस ऑटोमेशन में कोई शर्त नहीं है.

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. Google Home के वेब वर्शन पर जाएं.
  3. ऑटोमेशन टैब चुनें, जिसे तीन स्टार वाले आइकॉन से दिखाया जाएगा:
    ऑटोमेशन टैब
  4. + नया जोड़ें पर क्लिक करें.
  5. स्क्रिप्ट एडिटर में, ऑटोमेशन टेंप्लेट मिटाएं.
  6. ऑटोमेशन को चिपकाएं.
  7. Desk light - Office को अपने डिवाइस के नाम और उसकी जगह की जानकारी से बदलें.
  8. पुष्टि करें पर क्लिक करें. स्क्रिप्ट एडिटर, आपके स्क्रिप्ट किए गए ऑटोमेशन के उन सेक्शन को अंडरलाइन करता है जिनमें गड़बड़ियां होती हैं. अगर कोई गड़बड़ी होती है, तो उसे ठीक करें. साथ ही, जब तक कोई गड़बड़ी न हो, तब तक गड़बड़ी को ठीक करते रहें. उदाहरण के लिए, आपके डिवाइस का नाम अलग हो सकता है. अगर ऐसा है, तो डिवाइस का मान्य नाम चुनने के लिए, ऑटोकंप्लीट की सुविधा का इस्तेमाल करें.
  9. सेव करें पर क्लिक करें.
  10. पक्का करें कि आपकी स्क्रिप्ट के टेक्स्ट के नीचे, चालू करें स्विच चालू स्थिति में हो: पूरी तरह से पुष्टि और चालू स्क्रिप्ट किए गए ऑटोमेशन वाला स्क्रिप्ट एडिटर

6. ऑटोमेशन की जांच करना

  1. पक्का करें कि आपका डिवाइस प्लग-इन किया गया हो और Google Home ऐप्लिकेशन में दिख रहा हो.
  2. अगर डिवाइस अभी चालू है, तो उसे बंद कर दें.
  3. Google Home के वेब वर्शन में ऑटोमेशन पेज पर, 'रन' पर क्लिक करें ऑटोमेशन के बगल में मौजूद बटन पर क्लिक करें.
    स्क्रिप्ट रनबटन
  4. डिवाइस चालू होना चाहिए.

अब ऑटोमेशन की जांच करते हैं.

  1. डिवाइस को बंद करें.
  2. ऑटोमेशन में बदलाव करें और 'डिवाइस चालू करें' को बदलें समय पर रेखा 7 से लेकर आने वाले समय में पाँच मिनट तक.
  3. 'डिवाइस बंद करें' बदलना समय पर, पंक्ति 14 से लेकर ‘समय पर’ के तुरंत बाद तक.
  4. पुष्टि करें पर क्लिक करें. अगर कोई गड़बड़ी होती है, तो उसे ठीक करें.
  5. सेव करें पर क्लिक करें.
  6. पक्का करें कि चालू करें स्विच, चालू स्थिति में हो.
  7. दो स्टार्टर टाइम पास होने का इंतज़ार करें. डिवाइस चालू होना चाहिए और आपके बताए गए समय पर बंद हो जाना चाहिए.

7. बधाई हो!

आपने स्क्रिप्ट के मुताबिक ऑटोमेशन बना लिया है - शानदार!

इस कोडलैब में, आपने ये काम करने का तरीका सीखा:

  • ऑटोमेशन को डिज़ाइन और लिखने का तरीका.
  • ऑटोमेशन की जांच करने का तरीका.

अगले चरण

इस कोडलैब में, हमने एक बहुत ही आसान ऑटोमेशन बनाया है. ऑटोमेशन की सुविधा, पावर स्विच को टॉगल करके शेड्यूल करने के अलावा और भी कई काम कर सकती है. अब आपको ऑटोमेशन बनाने की बुनियादी बातें समझ आ गई हैं. इसलिए, Google Home नेटवर्क में उपलब्ध अलग-अलग तरह के स्टार्टर, स्थितियों, और कार्रवाइयों के बारे में ज़्यादा जानकारी पाई जा सकती है.

नीचे दिए गए अभ्यास आज़माएं:

  • ऑटोमेशन में, और time.schedule स्टार्टर जोड़ें.
  • मौजूदा शेड्यूल में किसी दूसरे डिवाइस को चालू और बंद करने के लिए, ऑटोमेशन में बदलाव करें.
  • time.schedule स्टार्टर को हटाए बिना, ऑटोमेशन में बदलाव करें. इससे डिवाइसों को सिर्फ़ तब चालू किया जा सकेगा, जब कोई दूसरा डिवाइस चालू हो. उदाहरण वाली स्क्रिप्ट देखें जो condition क्लॉज़ का इस्तेमाल करती हैं.
  • ऑटोमेशन में बदलाव करें, ताकि डिवाइसों को सिर्फ़ तब चालू किया जा सके, जब कोई घर में हो.

इसके बारे में और पढ़ें

Google Home ऑटोमेशन के बारे में ज़्यादा जानने के लिए, ऑटोमेशन से जुड़े दस्तावेज़ देखें: