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

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

قواعد التشغيل الآلي

قاعدة التشغيل الآلي هي المكان الذي يتم فيه العمل الفعلي. ويتألف هذا النظام من ثلاثة أجزاء، وعبارات التفعيل، والشروط، والإجراءات، ويتم تقييمها حسب الترتيب:

إجراء واحد للتفعيل

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 الرئيسية للويب، انقر على الزر "تشغيل" إلى جانب التشغيل الآلي.
    زر تشغيل النص البرمجي
  4. يُفترَض أن يتم تشغيل الجهاز.

والآن، لنختبر التشغيل الآلي.

  1. أوقِف تشغيل الجهاز.
  2. تعديل عملية التشغيل الآلي وتغيير وقت "الجهاز على" السطر 7 إلى وقت بعد خمس دقائق من الآن
  3. تغيير وقت "إيقاف الجهاز" في السطر 14 إلى وقت بعد "في الوقت المحدد" بوقت قصير
  4. انقر على التحقق من الصحة. أصلِح أي أخطاء قد تظهر.
  5. انقر على حفظ.
  6. تأكَّد من أنّ مفتاح التبديل تفعيل في الوضع تفعيل.
  7. انتظر حتى يتم تجاوز وقت إجراء التفعيل. من المفترض أن يتم تشغيل الجهاز ثم ينطلق صوته في الأوقات التي حددتها.

7- تهانينا!

لقد نجحت في إنشاء نص برمجي. رائع.

تعلّمت في هذا الدرس التطبيقي حول الترميز طريقة تنفيذ ما يلي:

  • طريقة تصميم وكتابة أتمتة.
  • كيفية اختبار عملية تشغيل آلي

الخطوات التالية

في هذا الدرس التطبيقي حول الترميز، أنشأنا عملية تشغيل آلي بسيطة للغاية. يمكن أن تفعل عمليات التشغيل الآلي ما هو أكثر من جدولة تبديل مفتاح التشغيل. بعد أن فهمت أساسيات إنشاء عملية تشغيل آلي، يمكنك استكشاف الأنواع المختلفة من إجراءات التفعيل والشروط والإجراءات المتوفّرة في منظومة Google Home المتكاملة.

جرب التمارين التالية:

  • يُرجى إضافة المزيد من إجراءات التفعيل البالغ عددها time.schedule إلى التشغيل الآلي.
  • عدِّل عملية التشغيل الآلي لتشغيل جهاز آخر وإيقافه وفقًا للجدول الزمني نفسه.
  • بدون إزالة إجراءات تفعيل time.schedule، يمكنك تعديل عملية التشغيل الآلي لتشغيل الأجهزة فقط عند تشغيل جهاز آخر. يُرجى الاطّلاع على أمثلة على النصوص البرمجية التي تستخدم عبارة condition.
  • يُرجى تعديل نظام التشغيل الآلي لتشغيل الأجهزة فقط عند تواجد الأفراد في المنزل.

قراءات إضافية

لمزيد من المعلومات حول عمليات التشغيل المبرمَج في Google Home، يمكنك الاطّلاع على المستندات المرجعية حول التشغيل الآلي: