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

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

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

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

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

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

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

التشغيل الآلي البسيط

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

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

لذلك، سيبدو تسلسل التنفيذ على النحو التالي:

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

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

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

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

تسلسل التنفيذ:

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

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

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

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

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

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

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

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

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