على الرغم من أنه ليس من المستحسن استخدام نظام التشغيل الآلي للمنزل لتحويله إلى نظام إنذار، إلا أنه من العملي جدًا أن تكون قادرًا على دمج معلومات معينة من نظام الإنذار المستقل الخاص بك في نظام التشغيل الآلي للمنزل الخاص بك. في الواقع، من خلال معرفة وضع التنبيه الحالي، يمكن لنظام التشغيل الآلي للمنزل، على سبيل المثال، إغلاق الستائر، أو إلغاء تنشيط سيناريوهات معينة، أو حتى تشغيل روبوت المكنسة الكهربائية، على سبيل المثال. بالإضافة إلى ذلك، يمكن إعادة استخدام بعض أجهزة الاستشعار، ولا سيما أجهزة الكشف عن الفتح أو الحركة، مما يتجنب الحاجة إلى وجود نسخ مكررة من أجهزة الاستشعار (جهاز استشعار فتح للإنذار، وآخر لنظام التشغيل الآلي للمنزل، وما إلى ذلك). يمكنك في الواقع إيقاف تشغيل التدفئة إذا كانت النافذة مفتوحة، أو تشغيل المصباح عندما يدخل شخص ما إلى الغرفة، وما إلى ذلك. باستخدام الممتاز إنذار اياكس لبعض الوقت، لذلك كنت أتطلع إلى دمجه في Home Assistant. ليس بهذه السهولة، لكنه يعمل!
لدمج منبه Ajax في Home Assistant، توجد حاليًا طريقتان: واحدة سهلة، ولكنها بعيدة كل البعد عن الاكتمال؛ وطريقة أكثر شاقة قليلاً، ولكنها أكثر إرضاءً بكثير! سوف نكتشف كليهما.
طريقة سهلة: البرنامج المساعد Ajax Home Assistant
عندما يكون هناك مكون إضافي ضمن Home Assistant، فإنه يجعل الحياة دائمًا أسهل كثيرًا. هذا هو الحال بالضبط بالنسبة لإنذار Ajax، الذي يستخدم بروتوكول المراقبة عن بعد SIA. ستقوم هذه الطريقة فعليًا بإعلان Home Assistant كمركز مراقبة عن بعد، مما سيسمح له بالتواصل مع المنبه.
يتم التثبيت في خطوتين. بادئ ذي بدء، على تطبيق Ajax نفسه. ستحتاج إلى الذهاب إلى الإعدادات المركزية عبر العجلة المسننة في أعلى اليمين، ثم على “شركات الأمن” في أسفل القائمة، ثم “مركز المراقبة عن بعد”.

ثم نختار بروتوكول “SIA DC-09”. نتحقق من “عنوان IP واحد لجميع الشبكات”، وندخل عنوان IP الخاص بمساعدك المنزلي. ومع ذلك، فيما يتعلق بالمنفذ، يجب عليك استخدام منفذ لا يستخدمه Home Assistant، مثل 2410 (عشوائيًا :p).
في الفاصل الزمني ping، نشير إلى 1min، وفي رقم الموقع “AAA” على سبيل المثال. هذا كل شيء. نعود، يتم حفظ المعلمات.

من ناحية Home Assistant، يجب عليك الآن تثبيت البرنامج الإضافي. نذهب إلى قسم الأجهزة ونضيف التكامل ونبحث عن “SIA Alarm Systems”. هذا ليس مكونًا إضافيًا مخصصًا لـ Ajax، ولكنه مخصص لبروتوكول SIA، الذي تستخدمه العديد من إنذارات المراقبة عن بعد، بما في ذلك Ajax.

في مربع حوار التكوين، ما عليك سوى إدخال المنفذ المشار إليه في تطبيق Ajax (هنا 2410)، ومعرف حساب AAA، وعدد المناطق الموجودة في تكوين Ajax الخاص بنا (هنا 2 حيث أن لدي على سبيل المثال الطابق الأرضي والطابق الأول).

نؤكد: اكتمل التكوين!
نحصل بعد ذلك على سلسلة من الأجهزة الجديدة التي تم إنشاؤها في Home Assistant، اعتمادًا على عدد المناطق التي تم تكوينها:

كما نرى، نقوم باسترجاع حالة الإنذار، وحالة التنبيه من الفيضانات، وحالة التنبيه من الحريق.
إذا اخترنا حالة المنبه، يمكننا أن نرى تغيرات حالته:

يمكن بعد ذلك استخدام هذه الحالات لسيناريوهات مختلفة، مثل تلك المذكورة في المقدمة: الإغلاق التلقائي للمصاريع عند تنشيط الإنذار، وتشغيل المكنسة الكهربائية الروبوتية عند التبديل إلى التسليح الكامل، وما إلى ذلك.
لسوء الحظ، كما نرى، البيانات مختصرة للغاية، ولا نحصل على حالة أجهزة الاستشعار المختلفة لنظام الإنذار، كما أنه لا يمكن التحكم في التنبيه من Home Assistant. ولذلك يظل الاهتمام محدودًا جدًا بهذا الاحتمال الأول.
الطريقة المتقدمة: MQTT عبر Jeedom
إذا كانت المعلومات التي تم الإبلاغ عنها في إنذار Ajax في جانب Home Assistant مقتضبة للغاية، فإن الأمر نفسه ليس صحيحًا في جانب المكون الإضافي Jeedom، وهو مكتمل جدًا!
احكم بنفسك:

وبالتالي ستكون الحيلة هي استخدام مكون Ajax الإضافي على Jeedom، ثم إرسال جميع المعلومات إلى Home Assistant عبر MQTT. حسنًا، قد يبدو هذا معقدًا بعض الشيء، لكنه ليس بهذا التعقيد في النهاية!
للبدء، ستحتاج بالطبع إلى مثيل Jeedom الذي يتم تشغيله ويمكن الوصول إليه من الخارج. لا حاجة لشراء صندوق Jeedom للأتمتة المنزلية لهذا الغرض، كن مطمئنًا. يمكنك تثبيته جيدًا ضمن Proxmox كما فعلنا بالفعل مع Home Assistant، أو حتى في ملف الجهاز الظاهري على Synology ناس على سبيل المثال (ارفع يدك إذا كنت بحاجة أيضًا إلى دليل لتثبيت Jeedom ضمن Proxmox؟). وواحد الوكيل العكسي سوف تسمح بالوصول من الخارج.
تثبيت البرنامج المساعد اياكس
وبعد ذلك سيكون من الضروري تثبيت اياكس البرنامج المساعد (الدفع، 8 يورو). نقوم بتنشيطه، ثم نضغط على زر “الاتصال”. ستحتاج بعد ذلك إلى إدخال اسم المستخدم وكلمة المرور لحساب Ajax الخاص بك (يمكنك إنشاء حساب مخصص لذلك في تطبيق Ajax).

في تطبيق Ajax، ستحتاج أيضًا إلى الإعلان عن المستخدم [email protected] في إعدادات Hub (ستظل الدعوة دائمًا معلقة، وهذا أمر طبيعي).
ومن هناك يمكننا مزامنة المعدات: سيقوم Jeedom تلقائيًا بإنشاء جميع المعدات الموجودة على نظام Ajax الخاص بنا.
تثبيت البرنامج المساعد MQTT
نقوم الآن بتثبيت البرنامج الإضافي MQTT Manager عبر متجر Jeedom. هذه المرة مجانا ;-)
بعد تثبيته، قم بتنشيطه وإعداده على النحو التالي:

يجب ضبط الوضع على Remote Broker، لأننا سنستخدم وسيط Home Assistant MQTT (الذي ستحتاج إلى تهيئته مسبقًا إذا لم تكن قد قمت بذلك بالفعل). لذلك، أدناه، نشير إلى اسم المستخدم الذي تم تكوينه على وسيط Home Assistant الخاص بنا، بالإضافة إلى كلمة المرور الخاصة به، وكلاهما مفصول بـ “”:”. أخيرًا نتحقق من “نقل جميع الأحداث”. بفضل هذا، سيتم نقل كل ما يحدث على Jeedom إلى وسيط MQTT. بما في ذلك جميع أحداث إنذار أجاكس لدينا!
لقد انتهى الأمر بالنسبة لتكوين Jeedom! يمكنك الآن، إذا كنت ترغب في ذلك، استخدام عميل مثل MQTT Explorer، على سبيل المثال، إذا كنت تريد التحقق من أن الأحداث المعنية تمر عبر وسيط MQTT. ولكن لا يوجد التزام.
كل ما يتعين علينا فعله هو الإعلان عن أجهزتنا على جانب Home Assistant.
إنشاء الأجهزة على Home Assistant
هذا هو الجزء الأكثر مللاً، لأنه سيتعين علينا إنشاء أجهزتنا واحدة تلو الأخرى في Home Assistant. لحسن الحظ، لن يتم ذلك إلا مرة واحدة، وسأزودك بملف التكوين؛-)
من جهتي، حتى لا أثقل كاهل ملف التكوين الخاص بي، قمت بتقسيمه إلى عدة أجزاء. وبالتالي فإن أجهزة استشعار MQTT موجودة في ملف mqtt.yaml. إذا لم يكن لديك بالفعل في المنزل، فستحتاج إلى إضافة هذا السطر إلى ملفconfig.yaml الخاص بك:
mqtt: !تشمل mqtt.yaml
ثم قم بإنشاء ملف mqtt.yaml المعني.
للبدء، قمت بإنشاء 3 أزرار تتوافق مع الأوضاع المسلحة، والليلية، وغير المسلحة لجهاز إنذار Ajax:
زر:
- الاسم: "تسليح الإنذار"
Command_topic: "jeedom/cmd/set/58"
Unique_id: "control_armament_ajax_from_jeedom"
payload_press: "ARM"
الاحتفاظ : كاذبة
جهاز:
المعرفات: "إنذار AJAX عبر Jeedom MQTT"
الاسم: "AJAX Alarm"
الموديل: "هب 2 بلس"
الشركة المصنعة: "اجاكس"
- الاسم: "إنذار الوضع الليلي"
Command_topic: "jeedom/cmd/set/59"
Unique_id: "control_mode_nuit_ajax_from_jeedom"
payload_press: "الوضع الليلي"
الاحتفاظ : كاذبة
جهاز:
المعرفات: "إنذار AJAX عبر Jeedom MQTT"
الاسم: "AJAX Alarm"
الموديل: "هب 2 بلس"
الشركة المصنعة: "اجاكس"
- الاسم: "نزع سلاح الإنذار"
Command_topic: "jeedom/cmd/set/60"
Unique_id: "control_desarmament_ajax_from_jeedom"
payload_press: "نزع السلاح"
الاحتفاظ : كاذبة
جهاز:
المعرفات: "إنذار AJAX عبر Jeedom MQTT"
الاسم: "AJAX Alarm"
الموديل: "هب 2 بلس"
الشركة المصنعة: "اجاكس"
لا يوجد هنا سوى الأرقام /58 و/59 و/60 التي يمكنك استبدالها بأرقامك. للعثور على الأرقام المقابلة في منزلك، ستحتاج إلى الذهاب إلى Jeedom، Plugins / Security / Ajax System، والانتقال إلى المركز المركزي الذي تم إنشاؤه في Jeedom:

هناك عليك أن تذهب إلى علامة تبويب الأوامر، وتبحث عن أوامر التسليح/نزع السلاح:

لاحظ الأرقام الموجودة أمام كل أمر، وأدخلها في ملف mqtt.yaml. سيكون المبدأ هو نفسه بالنسبة لجميع الأوامر اللاحقة.
نقوم بعد ذلك بإنشاء “أجهزة استشعار ثنائية” لكاشفات الفتح والفيضانات، حيث أنها تحتوي على حالة مفتوحة أو مغلقة فقط:
مستشعر_ثنائي:
- الاسم: "نافذة الخليج اليمنى"
state_topic: "jeedom/cmd/event/239"
Unique_id: "etat_baie_vitree_droite_bureau_ajax_from_jeedom"
فئة_الجهاز:نافذة
value_template: '{{value_json.value}}'
الحمولة_على: "0"
حمولة_الحمولة: "1"
جهاز:
المعرفات: "إنذار AJAX عبر Jeedom MQTT"
الاسم: "AJAX Alarm"
الموديل: "هب 2 بلس"
الشركة المصنعة: "اجاكس"
- الاسم: "باب النافذة"
state_topic: "jeedom/cmd/event/144"
Unique_id: "etat_porte_fenetre_ajax_from_jeedom"
فئة_الجهاز:باب
value_template: '{{value_json.value}}'
الحمولة_على: "0"
حمولة_الحمولة: "1"
جهاز:
المعرفات: "إنذار AJAX عبر Jeedom MQTT"
الاسم: "AJAX Alarm"
الموديل: "هب 2 بلس"
الشركة المصنعة: "اجاكس"
- الاسم: "باب المدخل"
state_topic: "jeedom/cmd/event/180"
Unique_id: "etat_porte_entree_ajax_from_jeedom"
فئة_الجهاز:باب
value_template: '{{value_json.value}}'
الحمولة_على: "0"
حمولة_الحمولة: "1"
جهاز:
المعرفات: "إنذار AJAX عبر Jeedom MQTT"
الاسم: "AJAX Alarm"
الموديل: "هب 2 بلس"
الشركة المصنعة: "اجاكس"
- الاسم: "فيضان الحمام"
state_topic: "jeedom/cmd/event/135"
Unique_id: "etat_flood_sdb_ajax_from_jeedom"
فئة_الجهاز: الرطوبة
value_template: '{{value_json.value}}'
الحمولة_على: "0"
حمولة_الحمولة: "1"
جهاز:
المعرفات: "إنذار AJAX عبر Jeedom MQTT"
الاسم: "AJAX Alarm"
الموديل: "هب 2 بلس"
الشركة المصنعة: "اجاكس"
هناك ستحتاج أيضًا إلى استبدال الأرقام /239 و/144 و/180 بأرقامك. في Jeedom، بالانتقال إلى علامة تبويب الأوامر الخاصة بكاشف الفتح الذي يهمنا، ما عليك سوى العثور على أمر “الفتح” (أو “اكتشاف التسرب” لأجهزة كشف الفيضانات) ولاحظ الرقم المقابل:

نحن نفعل الشيء نفسه مع جميع أجهزة الاستشعار المفتوحة التي نرغب في إضافتها إلى Home Assistant، عن طريق تكرار الرسم التخطيطي. لا تنس تعديل “الاسم” الذي سيكون الاسم المعروض في Home Assistant، و”unique_id” الذي يشير اسمه إلى أنه يجب أن يكون فريدًا. يمكنك أيضًا تعديل “فئة_الجهاز” لعرض الرمز الصحيح: النافذة، الباب، إلخ. اعتمادًا على نوع الفتح الذي يتم مراقبته. يمكنك العثور على أ قائمة الاحتمالات هنا.
أخيرًا، سنقوم بإنشاء “أجهزة استشعار”، والتي يمكن أن تأخذ قيمة، مثل درجة الحرارة، على وجه الخصوص:
الاستشعار:
- الاسم: "حالة إنذار Ajax"
state_topic: "jeedom/cmd/event/44"
Unique_id: "alarm_state_ajax_from_jeedom"
value_template: '{{value_json.value}}'
جهاز:
المعرفات: "إنذار AJAX عبر Jeedom MQTT"
الاسم: "AJAX Alarm"
الموديل: "هب 2 بلس"
الشركة المصنعة: "اجاكس"
- الاسم: "درجة حرارة النافذة اليمنى"
state_topic: "jeedom/cmd/event/241"
Unique_id: "temperature_baie_vitree_droite_bureau_ajax_from_jeedom"
value_template: '{{value_json.value}}'
فئة_الجهاز: درجة الحرارة
State_class: القياس
وحدة_القياس: "درجة مئوية"
جهاز:
المعرفات: "إنذار AJAX عبر Jeedom MQTT"
الاسم: "AJAX Alarm"
الموديل: "هب 2 بلس"
الشركة المصنعة: "اجاكس"
- الاسم: "درجة حرارة نافذة الباب"
state_topic: "jeedom/cmd/event/146"
Unique_id: "درجة الحرارة_porte_fenetre_ajax_from_jeedom"
value_template: '{{value_json.value}}'
فئة_الجهاز: درجة الحرارة
State_class: القياس
وحدة_القياس: "درجة مئوية"
جهاز:
المعرفات: "إنذار AJAX عبر Jeedom MQTT"
الاسم: "AJAX Alarm"
الموديل: "هب 2 بلس"
الشركة المصنعة: "اجاكس"
سيسمح لك المستشعر الأول المعلن هنا باستعادة حالة الإنذار. رقمه موجود على جيدوم في الضوابط المركزية خط “الدولة”.
تتيح المستشعرات التالية استعادة درجة الحرارة التي يتم رصدها بواسطة كاشفات الفتح. هنا مرة أخرى سوف نقوم باسترداد الرقم الموجود في Jeedom، في أوامر كاشف الفتح المعني، ببساطة سطر “درجة الحرارة”.
وبالتالي نعلن عن جميع أجهزة الاستشعار التي نرغب في استردادها في Home Assistant.
انتبه جيدًا للمسافة البادئة لملف yaml. يمكنك تنزيل ملفي أدناه للحصول على ملف النموذج الصحيح:
بمجرد الانتهاء من الملف، احفظه، ثم تحقق من صحة التكوين عبر قائمة “أدوات التطوير”، “التحقق من التكوين”. إذا كان كل شيء على ما يرام (الرسالة الخضراء)، فيمكنك إعادة تشغيل Home Assistant بحيث يأخذ هذه الأجهزة الجديدة في الاعتبار.

بالانتقال إلى “الأجهزة” و”MQTT” والبحث عن “Ajax”، يجب أن تكون لديك قائمة بالأجهزة التي تم إنشاؤها:

يرجى ملاحظة أنه يتم تحديث الحالات فقط عندما يتم تعديلها. لذلك سيتعين عليك فتح أو إغلاق باب أو نافذة حتى ترتفع حالتها (يكون التقرير في Home Assistant فوريًا تقريبًا بمجرد تغير الحالة). ومع ذلك، سيتعين عليك الانتظار حتى ترتفع درجة الحرارة، ولا يتم إرسال هذا أيضًا إلا عند إجراء تعديل.
ومع ذلك، يبدو أن أجهزة الكشف عن الحرائق لا ترتفع في Jeedom، وبالتالي لا في Home Assistant أيضًا، بالطبع. لكننا لا نزال نستعيد معظم المعلومات، على أي حال، أكثر بكثير من المكون الإضافي Home Assistant SIA الموضح أعلاه.
يمكننا بعد ذلك تنسيقها كما نشاء، على سبيل المثال هنا:

وبالطبع من الممكن تمامًا استخدام الحالات لتشغيل السيناريوهات، أو حتى تنشيط/إلغاء تنشيط التنبيه لمن يرغبون. قم بقطع التدفئة إذا كانت النافذة مفتوحة، وأرسل تنبيهًا إذا تم ترك الباب مفتوحًا لفترة طويلة، وقم بتشغيل المكنسة الكهربائية الروبوتية عندما يكون المنبه في الوضع الكامل (وبالتالي يكون المنزل فارغًا)، وما إلى ذلك. كل شيء يصبح ممكنا!
خاتمة
لذا فإن الأمر ليس بهذه البساطة مثل بعض عمليات التكامل حيث يتم استرداد كل شيء بنقرتين داخل Home Assistant. لكن المطورين حاولوا التفاوض مع أياكس الذي يرفض أي انفتاح للحفاظ على الأمن، وهو أمر مفهوم. مع ذلك، تمكن Jeedom من الوصول وبالتالي يقدم مكونًا إضافيًا كاملاً للغاية :( سيئ جدًا، إذا لم يكن هناك شيء آخر، في الوقت الحالي يقوم مثيل Jeedom مع MQTT بالمهمة للسماح لنا باسترداد المعلومات من إنذار Ajax في Home Assistant. وقد اختار بعض المستخدمين قم بتكوين كل شيء على جانب Jeedom: من خلال تكوين أوامر MQTT بشكل صحيح على جانب Jeedom، من الممكن إنشائها تلقائيًا في Home Assistant. لذلك يجب عليك إجراء هذا النوع من التكوين:

لقول الحقيقة، المهمة هي نفسها: في كلتا الحالتين عليك إصدار جميع إعلانات المستشعر، إذا لم يكن في Home Assistant، فسيكون في Jeedom. الجميع يفعل ما يفضلونه، ليس هناك طريقة صحيحة أو خاطئة. من جهتي، كنت أرغب في الحصول على أقل عدد ممكن من الأشياء لإدارتها في Jeedom، وتركيز جميع الإعدادات على جانب Home Assistant. الشيء المهم هو أنه يعمل وسريع وموثوق.
لا نزال نتصور أن التكامل الرسمي سوف يرى ضوء النهار، ولكن في الوقت الحالي سيتعين علينا قبول ذلك، ومن الممكن تمامًا الجمع بين تكامل MQTT وSIA إذا أردنا ذلك.