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

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

شرطان

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، اطّلِع على المستندات المرجعية عن الإجراءات المبرمَجة: