تصميم عملية تشغيل آلي على Android

قبل البدء في استخدام Automation API، عليك تصميم عمليات التشغيل الآلي.

حدِّد المَعلمات التالية لكل عملية تشغيل آلي:

  • الظروف التي يجب بموجبها اقتراح عملية التشغيل الآلي على المستخدم على سبيل المثال، إذا أضاف المستخدم ثلاثة مصابيح جديدة إلى منزله، قد يكون مهتمًا بعملية تشغيل آلي معيّنة مصمّمة للتحكّم في المصابيح.
  • أنواع الأجهزة المطلوبة لعملية التشغيل الآلي على سبيل المثال، إذا أضاف المستخدم ثلاثة مصابيح جديدة إلى منزله، قد يكون مهتمًا بعملية تشغيل آلي معيّنة مصمّمة للتحكّم في المصابيح. تشمل أنواع أجهزة الإضاءة على سبيل المثال OnOffLightDevice أو ColorTemperatureLightDevice أو DimmableLightDevice أو ExtendedColorLightDevice.
  • سمات وطلبات الميزة المطلوبة لعملية التشغيل الآلي، و ما إذا كانت متوافقة مع Automation API على Android.
  • الميزات التي يجب أن تفعِّل عملية التشغيل الآلي كإجراءات تفعيل تتم مناقشة إجراءات التفعيل في مكوّنات التشغيل الآلي على Android.
  • الشروط الإضافية التي تحدِّد ما إذا كان يجب تشغيل عملية التشغيل الآلي فعلاً والإجراءات التي يجب تنفيذها
  • سير عمل عملية التشغيل الآلي هل يجب تنفيذها بالتسلسل أو بالتوازي؟ هل تحتاج إلى مسارات منطقية متعددة؟

عند التصميم، قد يكون من المفيد رسم مخطط لسير عملية التشغيل الآلي، عقدة بعقدة، مع تحديد المنطق المطلوب في كل خطوة.

بعد تصميم عملية تشغيل آلي، استخدِم لغة النطاق الخاصة بالتشغيل الآلي لإنشائها. إنّ عملية التشغيل الآلي التي تنشئها هي في الأساس "نموذج"، وأي هياكل وأجهزة فيها هي عناصر نائبة يتم ملؤها بالهيكل والأجهزة الخاصة بكل مستخدم عندما "يتبنّى" عملية التشغيل الآلي لاستخدامها.

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

عملية تشغيل آلي بسيطة

لنفترض أنّك بحاجة إلى كتابة تطبيق ينشئ عملية تشغيل آلي ترفع الستائر في الساعة 8:00 صباحًا. لتحقيق ذلك، يحتاج التطبيق إلى قائمة بالستائر (الأجهزة التي يكون نوعها WindowCoveringDevice) المتوفّرة في الهيكل الذي يتيح عمليات التشغيل الآلي، والتي يمكن أن توفّرها واجهة برمجة التطبيقات Discovery.

بالنسبة إلى عمليات التشغيل الآلي التي يجب تشغيلها في وقت معيّن، عليك أيضًا التأكّد من أنّ المستخدم قد خصّص عنوان شارع للهيكل الذي اختاره في Google Home app (GHA)، وإلا لن تعرف عملية التشغيل الآلي المنطقة الزمنية التي سيتم تشغيلها فيها. يمكن أن تساعدك واجهة برمجة التطبيقات Discovery في تحديد ما إذا تم تخصيص عنوان للهيكل أم لا.

لذا، سيبدو سير العمل على النحو التالي:

  1. باستخدام واجهة برمجة التطبيقات Discovery، اجمَع قائمة بأجهزة WindowCoveringDevice.
  2. إذا لم تتم تعبئة عنوان الشارع، أخبِر المستخدم بأنّه بحاجة إلى تقديم عنوان شارع، وأوقِف التنفيذ.
  3. بخلاف ذلك، حدِّد عملية التشغيل الآلي:
    1. ابدأ عملية التشغيل الآلي في الساعة 8:00 صباحًا.
    2. لكل ستارة، استدعِ الأمر upOrOpen من ميزة WindowCovering.

عملية تشغيل آلي معقّدة

تخيَّل تطبيقًا ينشئ عملية تشغيل آلي تؤدي إلى وميض الأضواء عند رصد حركة.

من أولى المهام في تنفيذ هذا التطبيق معرفة الأضواء المتوفّرة في منزل المستخدم باستخدام واجهة برمجة التطبيقات Discovery. باستخدام هذه المعلومات، يمكن لتطبيقك الآن عرض الأضواء المتوفّرة وربما السماح للمستخدم باختيار الأضواء التي يريد أن تومض.

سير العمل:

  1. باستخدام واجهة برمجة التطبيقات Discovery، اجمَع قائمة بأجهزة الإضاءة المتوفّرة في الهيكل، والتي ستكون أي أجهزة من نوع OnOffLightDevice أو ColorTemperatureLightDevice أو DimmableLightDevice أو ExtendedColorLightDevice.
  2. وفِّر طريقة لاختيار الأضواء التي تومض، ربما من خلال لوحة "الإعدادات" مخصّصة.
  3. حدِّد عملية التشغيل الآلي:
    1. ابدأ عملية التشغيل الآلي كلما غادر شخص المبنى أو وصل إليه، من خلال مراقبة AreaPresenceState.
    2. إذا كانت presenceState تشير إلى أنّ الهيكل مشغول، أومِض الأضواء التي تم اختيارها.

عملية تشغيل آلي عامة

للحصول على مثال على عملية تشغيل آلي أكثر تطورًا، ننصحك بالاطّلاع على عملية تشغيل آلي ترشد المستخدم خلال إنشاء عملية تشغيل آلي مفتوحة، استنادًا إلى أي من الأجهزة التي لديه في منزله أو جميعها.

قد تطلب عملية التشغيل الآلي أولاً من المستخدم اختيار هيكل.

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

يمكن للمستخدم اختيار الأجهزة وإجراءات التفعيل والأوامر التي يريد استخدامها، وستساعده عملية التشغيل الآلي في تجميع عملية تشغيل آلي.

عندما تصبح جميع خيارات المستخدم وقراراته نهائية، ستنشئ عملية التشغيل الآلي عملية التشغيل الآلي وتحفظها في الهيكل الذي اختاره.

على مستوى عالٍ، ستحتاج عملية التشغيل الآلي هذه إلى جمع عدة مجموعات من البيانات عن منزل المستخدم باستخدام Structure API لنظام Android وDevice API لنظام Android و Discovery API.

الجدول 1: واجهات برمجة التطبيقات Home والمعلومات التي يمكنها توفيرها
واجهة برمجة التطبيقاتمعلومات
Structure API
  • الهياكل المتوفّرة
  • الغرف الموجودة في الهيكل
Device API
  • الأجهزة الموجودة في الهيكل الذي تم اختياره
  • موقع هذه الأجهزة (الغرفة)
Discovery API
  • الميزات التي تتيحها الأجهزة
  • إجراءات التفعيل والأوامر المتوفّرة في هذه الميزات
  • القيود المفروضة على مَعلمات هذه الأوامر