إنشاء برمجة آلية للنص البرمجي

‫1. مقدمة

أهداف الدورة التعليمية

  • كيفية التخطيط لعملية مبرمَجة مكتوبة وتنفيذها
  • كيفية اختبار عملية تشغيل آلي مكتوبة برمجيًا

المتطلبات

  • هاتف Android أو iOS مثبّت عليه تطبيق Google Home
  • مصباح ذكي أو جهاز آخر معتمَد من خلال برنامج "يعمل مع 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 Starters

‫2 الشروط

3 إجراءات

تُعدّ إجراءات التفعيل هي ما يبدأ عملية التشغيل الآلي. يجب أن يتم تقييم إجراء تفعيل واحد على الأقل على أنّه 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، يمكنك الاطّلاع على مستندات مرجع عمليات التشغيل الآلي: