كيف ينسّق Home Assistant بين Zigbee2MQTT وCore؟

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

ينسّق Home Assistant خدمة Zigbee2MQTT عبر MQTT بدلًا من التعامل مع Zigbee2MQTT باعتبارها جزءًا من نواة Home Assistant. تتولى Zigbee2MQTT إدارة منسّق Zigbee والتفاعل مع الشبكة المتداخلة، بينما ينقل وسيط MQTT الرسائل، ويحوّل تكامل MQTT في Home Assistant موضوعات الاكتشاف والحالة إلى كيانات يمكن للأتمتة استخدامها.

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

تتولى Zigbee2MQTT إدارة اتصال الأجهزة عبر اللاسلكي

تتواصل Zigbee2MQTT مع المنسّق، وتحافظ على تعريفات أجهزة Zigbee، وتتلقى التقارير من الشبكة المتداخلة، وتحولها إلى رسائل MQTT. لا يحتاج Home Assistant إلى وصول مباشر إلى ذلك المنسّق عندما تتولى Zigbee2MQTT إدارته.

يوضح دليل تكامل Zigbee2MQTT مع Home Assistant أن اكتشاف MQTT هو المسار القياسي لإنشاء أجهزة وكيانات Zigbee2MQTT تلقائيًا في Home Assistant.

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

وسيط MQTT هو الحد الفاصل للرسائل بين الخدمتين

تنشر Zigbee2MQTT حالة الأجهزة ومعلومات الجسر في موضوعات MQTT. ويشترك Home Assistant في الموضوعات ذات الصلة وينشر الأوامر مرة أخرى عندما تغيّر أتمتة أو مستخدم حالة جهاز.

يُعد وسيط MQTT حدّ الرسائل لأن Zigbee2MQTT تنشر الرسائل في الموضوعات، بينما يشترك Home Assistant في الموضوعات التي يحتاج إليها وينشر الأوامر مرة أخرى عبر الوسيط نفسه. ويوضح دليل حالي حول بنية MQTT كيف يبقى الناشرون والمشتركون منفصلين بينما يوجّه الوسيط الرسائل القائمة على الموضوعات بينهم.

إذا تعطل الوسيط، فقد تستمر شبكة Zigbee المتداخلة في العمل بينما تتوقف واجهة Home Assistant عن التحديث. شخّص الوسيط بشكل منفصل عن المنسّق وعن النواة.

يصف الاكتشاف الكيانات، وتحافظ موضوعات الحالة على تحديثها

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

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

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

-15% OFF

التوفر إشارة منفصلة عن حالة الجهاز

تُخبر حالة مثل ON Home Assistant بآخر قيمة مُبلّغ عنها؛ لكنها لا تثبت أن Zigbee2MQTT أو الجهاز قابل للوصول حاليًا. وتوفر موضوعات التوفر عقدًا منفصلًا للتحقق من الحيوية.

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

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

ينبغي لترتيب بدء التشغيل إعادة بناء العقد، لا الاعتماد على الحظ

لا يقتصر تسلسل بدء التشغيل السليم على «الوسيط أولًا، ثم Zigbee2MQTT، ثم Home Assistant». فقد تبدأ الخدمات بترتيبات مختلفة، لذلك يجب أن يتحمل عقد الرسائل عمليات إعادة الاتصال. ينبغي أن تعيد Zigbee2MQTT الاتصال بالوسيط، وأن يصبح الاكتشاف متاحًا، وأن يشترك Home Assistant، وأن تُعاد نشر الحالة الحالية أو تُحتفظ بها وفق التصميم.

توضح أمثلة أحداث المنزل الذكي في ZimaSpace كيف تتيح خدمة MQTT للخدمات المنزلية الذكية تبادل الأحداث المحلية من دون مشاركة عملية واحدة أو خادم فعلي واحد. وتُعد Zigbee2MQTT مثالًا عمليًا على هذا الفصل.

الطبقة المسؤولية الأساسية عرض العطل
Zigbee2MQTT الشبكة المتداخلة لـ Zigbee وترجمة الأجهزة عدم وصول رسائل Zigbee جديدة
وسيط MQTT توصيل الرسائل بين الخدمات فشل مسار النشر والاشتراك
MQTT في Home Assistant اكتشاف الكيانات وربط الحالة اختفاء الكيانات أو عدم توفرها
الأتمتة/النواة القواعد واستدعاءات الخدمات الكيان سليم لكن منطق الإجراء يفشل

الأسئلة الشائعة

هل تتطلب Zigbee2MQTT استمرار تشغيل Home Assistant للحفاظ على شبكة Zigbee؟

لا. تتولى Zigbee2MQTT إدارة شبكة Zigbee من جهة المنسّق. ويعمل Home Assistant كمستهلك ومصدر أوامر عبر MQTT. ويمكن أن يكون Home Assistant غير متصل بينما تظل خدمة Zigbee2MQTT والوسيط قيد التشغيل.

لماذا تصبح كيانات Zigbee2MQTT غير متاحة بعد إعادة تشغيل الوسيط أو Home Assistant؟

يحدث ذلك عادةً لأن الاكتشاف أو الحالة المحتفظ بها أو التوفر أو رسائل إعادة الاتصال لم تُعد بناء عقد MQTT الكامل بعد. افحص حالة جسر Zigbee2MQTT واتصال الوسيط وموضوعات الاكتشاف وتوفر الكيانات قبل إعادة إقران الأجهزة.

مركز التكنولوجيا والذكاء الاصطناعي

المزيد للقراءة

Get More Builds Like This

Stay in the Loop

Get updates from Zima - new products, exclusive deals, and real builds from the community.

Stay in the Loop preferences

We respect your inbox. Unsubscribe anytime.