نموذج بيانات الجهاز

تتضمّن الأجهزة في Matter نموذج بيانات مُحدّد جيدًا (DM)، وهو عبارة عن نمذجة هرمية لميزات الجهاز. في أعلى مستوى من هذا التدرّج الهرمي، يتوفّر جهاز.

الأجهزة ونقاط النهاية

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

العُقد هي مجموعة من نقاط النهاية. تضم كل نقطة نهاية مجموعة ميزات. على سبيل المثال، قد ترتبط نقطة النهاية بوظيفة الإضاءة، في حين ترتبط نقطة أخرى بـ كشف الحركة، وترتبط أخرى بالأدوات المساعدة، مثل "عبر الجهاز عبر الهواء".

التسلسل الهرمي للأجهزة والعُقد ونقاط النهاية
الشكل 1: الأجهزة والعُقد ونقاط النهاية

أدوار العُقد

دور العُقدة هو مجموعة من السلوكيات ذات الصلة. قد يكون لكل عقدة دور واحد أو أكثر. تتضمن أدوار العُقدة ما يلي:

  • Commissioner: عقدة تؤدي عملية Commissioning.
  • وحدة التحكّم: عقدة يمكنها التحكم في عقدة واحدة أو أكثر. تشمل الأمثلة Google Home app (GHA) وGoogle Assistant وGoogle Nest Hub (2nd gen). تؤدي بعض أنواع الأجهزة، مثل مفتاح إضاءة التشغيل/الإيقاف، دور وحدة التحكّم.
  • Controlee: عقدة يمكن التحكّم فيها من خلال عُقدة واحدة أو أكثر. يمكن أن تكون معظم أنواع الأجهزة "مسؤول التحكّم بالبيانات"، باستثناء بعض أنواع الأجهزة التي لها دور "وحدة التحكّم"، مثلاً مفتاح إضاءة التشغيل/الإيقاف. يمكن أن يكون مفتاح إضاءة التشغيل/الإيقاف فقط وحدة تحكّم. لا يمكن أن يكون لديك عنصر تحكّم.
  • مقدِّم خدمة التحديث عبر الهواء: عقدة يمكنها توفير تحديثات البرامج عبر الهواء.
  • مستلم التحديث عبر الهواء: عقدة يمكنها طلب تحديثات برامج عبر الهواء.

المجموعات العنقودية

ضمن نقطة النهاية، تحتوي عقدة على مجموعة واحدة أو أكثر. هذه خطوة أخرى في التدرّج الهرمي للأجهزة، حيث تجمع وظائف معيّنة مثل مجموعة تفعيل/إيقاف على مقبس ذكي، أو مجموعة عنصر تحكّم في المستوى على نقطة نهاية مصباح يمكن تعتيمها.

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

السمات

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

التسلسل الهرمي للعقد ونقاط النهاية والسمات والأوامر
الشكل 2: العُقد ونقاط النهاية والسمات والأوامر

الطلبات الصوتية

بالإضافة إلى السمات، تحتوي المجموعات أيضًا على الأوامر، وهي الإجراءات التي يمكن تنفيذها. تعادل هذه البيانات في الرسائل المباشرة لـ Matter لمكالمة إجراء عن بُعد. تشبه الأوامر الفعل، مثل قفل الباب في مجموعة قفل الباب. قد تؤدي الطلبات إلى إنشاء ردود ونتائج. وفي Matter، يتم تعريف هذه الاستجابات أيضًا باسم "أوامر"، ويسير في الاتجاه العكسي.

فعاليات

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

نموذج الجهاز الكامل
الشكل 3: نموذج من العرض الهرمي Matter لنموذج تفاعل الأجهزة

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

أنواع الأجهزة

وبشكل عام، ما هي مجموعات المجموعات التي يجب تضمينها عندما تخطط الشركة المصنّعة لجهاز جديد؟

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

لم يتم تحديد أنواع الأجهزة من خلال المستند الرئيسي لمواصفات Matter، بل من خلال مستند مصاحب: مكتبة الأجهزة. وبالمثل، يتم تحديد جميع مجموعات التطبيقات في مكتبة مجموعات التطبيقات. يمكن العثور على هذه المستندات الثلاثة على الموقع الإلكتروني لأعضاء Connectivity Standards Alliance (Alliance).

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

العملاء والخوادم

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

  • يقرأ من "السمات" عن بُعد ويكتب إليها.
  • يقرأ "الأحداث عن بُعد".
  • استدعاء طلباته عن بُعد.

على الرغم من أنّ الرسالة المباشرة تسلسلية في العقدة، فإنّ العلاقة بين العُقد ليست كذلك. لا ترتبط العُقد في Matter بعلاقات وحدة تحكّم رأسية/جهاز ملحق أو علاقات قائد/متابع. وعلى العكس من ذلك، تكون العلاقة أفقية: قد تكون أي مجموعة إما خادم أو عميل. وبالتالي قد تكون العقدة خادمًا وعميلاً في ما يتعلق بالمجموعات والوظائف المختلفة.

على سبيل المثال، قد يكون لدينا مصباحا طاولة: العقدة A والعقدة B. تستخدم كلتا العُقدتين نوع جهاز إضاءة/إطفاء. يشتمل نوع الجهاز هذا على مجموعة خادم تشغيل/إيقاف تتحكّم في مخرجات الضوء المادية ذات الصلة.

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

مصابيح تعمل على كل من تشغيل/إيقاف الإضاءة ومفتاح الإضاءة
الشكل 4: مجموعات العملاء والخوادم

في هذا النموذج، تُغير مجموعة العميل التشغيل/الإيقاف في العقدة A سمات مجموعة الخادم تشغيل/إيقاف على العقدة A والعقدة B، بينما تُغير مجموعة العميل للعقدة B نفسها مجموعة الخادم في العقدة B نفسها.

في القسم التالي، سنشرح بالتفصيل كيفية تفاعل مجموعات العملاء والخوادم: نموذج التفاعل.

مجموعة الواصف

كما يوحي الاسم، يوفر خادم مجموعة الواصف معلومات التأمل. يصف نقطة النهاية نقطة النهاية الخاصة بها كما يلي:

  • مجموعات الخادم.
  • مجموعات العملاء.
  • أنواع الأجهزة
  • نقاط النهاية الإضافية، المعروفة باسم قطع الغيار.

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

يمكن للمفوَّض أو الجهاز المتحكّم، مثل الهاتف أو الموزع، استخدام المعلومات المتوفّرة في مجموعة الوصف لوضع نماذج للجهاز (المصباح ومفتاح التبديل والمضخة والترموستات)، بالإضافة إلى ميزات معيّنة يتم تنفيذها في هذا الجهاز المحدَّد من خلال تلك الحالة، مع إظهار واجهة المستخدم الصحيحة للمستخدم.

مجموعات الخادم

تسرد السمة ServerList خوادم المجموعة في نقطة النهاية.

مجموعات العملاء

تسرد السمة ClientList عملاء المجموعة في نقطة النهاية.

قائمة أنواع الجهاز

السمة DeviceTypeList هي قائمة بأنواع الأجهزة المتوافقة مع نقطة النهاية، إلى جانب المراجعات الخاصة بها. يجب أن يحتوي على نوع جهاز واحد على الأقل.

قائمة الأجزاء

يتضمّن PartsList قائمة بنقاط النهاية المستخدَمة لتنفيذ نوع الجهاز هذا.

تحتوي PartsList لنقطة النهاية 0 (عقدة الجذر) على جميع نقاط النهاية في الجهاز باستثناء نفسها (نقطة النهاية 0).

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

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


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