الجهاز الافتراضي للمسألة القانونية

المسألة القانونية حزمة تطوير البرامج (SDK) للجهاز

تُعدّ أجهزة Matter الافتراضية مفيدة لتطوير حلول Matter واختبارها، ويمكن تفويضها باستخدام Google Home app (GHA) والتحكّم فيها باستخدام GHA وGoogle Assistant، تمامًا مثل أجهزة Matter المادية.

تقدّم Google مطوّري التطبيقات وغيرهم من مطوّري التطبيقات الذين يحتاجون إلى اختبار جهاز Matter افتراضي أو محاكاته ولكنهم لا تتوفّر لهم الموارد اللازمة لإنشاء جهاز Matter فعلي أو افتراضي خاص بهم.Matter Virtual Device (MVD) إنّ MVD هي أداة بسيطة ومستقلة لأجهزة الكمبيوتر المكتبي تعمل بنظام التشغيل Linux وتحاكي أنواعًا مختلفة من أجهزة Matter الافتراضية وتوفّر واجهة مستخدم تصويرية للتحكّم في حالات جهاز Matter الافتراضي وعرضها.

على عكس جهاز Matter الفعلي، لا يعتمد MVD على تقنية Bluetooth® Low Energy (BLE) أو Thread® لربط أقمشة Matter. بل يستخدم بدلاً من ذلك اتصال شبكة Wi-Fi الحالي على جهاز المضيف الذي يعمل بنظام التشغيل Linux من أجل التنفيذ.

مقارنةً بالأدوات الأخرى

يختلف MVD عن Virtual Device Controller (VDC) في أنّه حل مستقل، حيث يجمع بين جهاز افتراضي وواجهة مستخدم للتحكم فيه. في المقابل، يتم استخدام VDC للتحكّم في جهاز Matter افتراضي منفصل، مثل الجهاز الذي ننشئه في Matter Virtual Device Development Environment (MVD-DE).

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

جدول: مقارنة أداة جهاز Matter الافتراضية
MVD VDC MVD-DE (درس تطبيقي حول الترميز)
محاكاة جهاز Matter
التحكّم في جهاز Matter في وضع المحاكاة
جهود التطوير المطلوبة
تنزيل أقل من 100 ميغابايت 9 غيغابايت 20 غيغابايت

الأجهزة المتوافقة

في الوقت الحالي، يتوافق MVD مع Matter نوع من الأجهزة:

الجدول: Matter نوع من الأجهزة المتوافقة مع MVD
نوع جهاز Matter مجموعات التطبيقات نوع المنظومة المتكاملة المنزلية
ضوء درجة حرارة الألوان 0x0300
0x0008
0x0006
الفاتح
مصباح خفت الإضاءة 0x0008
0x0006
الفاتح
ضوء ملون ممتد 0x0300
0x0008
0x0006
الفاتح
جهاز استشعار تواجد الأفراد في المنزل 0x0406
أداة استشعار
إضاءة/إطفاء 0x0008
0x0006
الفاتح
تشغيل/إيقاف وحدة مكون إضافي 0x0008
0x0006
المقبس

تثبيت MVD

يعمل MVD على أجهزة معالج x86 بتنسيق 64 بت التي تعمل بنظام التشغيل Debian (11 أو إصدار أحدث) أو Ubuntu (الإصدار 20.04 أو الإصدارات الأحدث).

لتثبيت التطبيق:

تنزيل حزمة MVD Debian (.deb)

تنزيل ملف توقيع armored-ASCII (.asc)

شغِّل بعد ذلك dpkg لتثبيت حزمة MVD Debian (.deb):

sudo dpkg -i mvd_1.1.0_amd64.deb

التحقق من استخدام المنفذ

تستخدم وحدة التحكّم في MVD منفذ TCP رقم 33000 لإجراء استدعاءات RPC للجهاز الافتراضي، لذلك إذا كان هذا المنفذ قيد الاستخدام في عملية أخرى على جهاز الكمبيوتر، احرص على تحريره.

لمعرفة ما إذا كانت هناك أي عملية تستخدم المنفذ 33000 أم لا:

sudo fuser -v 33000/tcp

ويمكنك إنهاء أي عملية باستخدام منفذ TCP رقم 33000 باستخدام أمر واحد:

sudo fuser -k 33000/tcp

تشغيل MVD

شغِّل "MVD" من مجلد التطبيقات أو من الوحدة الطرفية:

mvd

إعداد جهازك

تظهر الشاشة الرئيسية عند التشغيل، وتسمح لك بتهيئة جهاز افتراضي:

  • نوع الجهاز: اختَر نوع الجهاز (مثل "ضوء" و"مفتاح تبديل" و"أداة استشعار" وما إلى ذلك).
  • اسم الجهاز: امنح الجهاز اسمًا سهل الاستخدام.
  • المُميِّز: رقم مكوَّن من 12 بت يُستخدَم للتمييز بين الإعلانات المتعددة للأجهزة التي تخضع للتفويض. (القيمة التلقائية: 3840).
  • منفذ Matter: منفذ لتشغيل Matter والاتصال عبر شبكات IP. يستخدم جهاز Matter المنفذ TCP/UDP رقم 5540 بشكل تلقائي، ولكن يمكنك إعداد الجهاز الافتراضي لاستخدام منفذ مختلف طالما أنه لم يتم استخدام منفذ آخر من قِبل أي خدمة أخرى.
  • رقم تعريف المورّد: لا يتوفّر في الوقت الحالي سوى رقم تعريف المورّد التجريبي 0xFFF1.
  • معرّف المنتج: لا تتوفّر في الوقت الحالي سوى معرّفات المنتجات التجريبية من 0x8000 إلى 0x801F.

شاشة إعداد الجهاز الافتراضي

تهيئة جدار الحماية

إذا كان لديك جدار حماية قيد التشغيل على الكمبيوتر، يمكنك إيقافه أو السماح باتصالات TCP/UDP الواردة على منفذ Matter.

لعرض قواعد جدار الحماية النشطة الحالية في netfilter، شغِّل:

sudo iptables -L -n

ملاحظة: إذا كنت تستخدم السمة ufw، يمكن إيقافها من خلال:

sudo ufw disable
ويمكن إعادة تفعيلها من خلال:
sudo ufw enable

تشغيل جهازك

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

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

تتضمّن جميع الأجهزة الافتراضية عناصر التحكّم التالية:

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

شاشة التحكم في الجهاز الافتراضي

تفويض جهازك

يصبح الجهاز جديرًا بالثقة فور إنشائه.

هناك مجموعة من المتطلّبات الأساسية لتشغيل الجهاز:

  • يجب أن يكون لديك مشروع في Google Home Developer Console. يجب أن يتضمّن هذا المشروع عملية دمج Matter تتضمّن مجموعة VID/PID نفسها التي استخدمتها في إعداد جهازك الافتراضي. يمكنك الاطّلاع على دليل إنشاء المشروع للحصول على التفاصيل.

  • يجب أن يكون لديك جهاز Google Nest Hub متوافق مع المسألة القانونية.

  • يجب أن يكون لديك هاتف Android يعمل بالإصدار 8.1 من نظام التشغيل Android أو إصدار أحدث وأن يتم تثبيت GHA عليه.

  • يجب أن يكون هاتف Android متصلاً بشبكة Wi-Fi نفسها التي يتصل بها موزّع الجهاز.

  • يجب أن يكون الجهاز المضيف متصلاً بشبكة Wi-Fi.

لتكليف الجهاز باستخدام "GHA"، انقر على QRCode لعرض رمز الاستجابة السريعة للجهاز، ثم اتّبِع التعليمات الواردة في إقران جهاز Matter والتي توضّح كيفية إعداد جهاز Matter باستخدام "GHA". يمكنك أيضًا تفويض الجهاز باستخدام Google Home Sample App for Matter.

يمكنك الاطّلاع على Matter المرجع للتعرّف على آلية عمل Matter.

التحكّم في الجهاز

بعد شراء جهاز افتراضي، يمكنك التحكّم فيه باستخدام تطبيق Google Home أو "مساعد Google" باستخدام الصوت. يمكنك تنفيذ إجراء مما يلي:

  • التحكّم في الجهاز من خلال GHA أو Assistant مع مراقبة تغييرات الحالة على الجهاز الافتراضي
  • يمكنك التحكّم في الجهاز باستخدام Sample App for Matter مع رصد تغييرات الحالة على الجهاز الافتراضي.
  • يمكنك التحكّم في حالة الجهاز من خلال ميزة "MVD" نفسها مع رصد تغيّرات الحالة في GHA أو Assistant.

الاختبار باستخدام الجهاز

للاختبار باستخدام Assistant، ننصحك باستخدام محاكي النطق مثل إضافة Google Home لـ VS Code أو مكوّن Google Home الإضافي لـ Android Studio.

عرض تفاصيل الجهاز

تعرض شاشة تفاصيل الجهاز معلومات تفصيلية عن الجهاز:

  • الاسم: الاسم السهل الذي يتم منحه للجهاز.
  • نوع الجهاز: نوع الجهاز الذي تم اختياره.
  • المُميِّز: المُميِّز الحالي للجهاز.
  • رقم تعريف المورّد: رقم تعريف مورّد الجهاز الحالي.
  • معرّف المنتج: معرّف المنتج الحالي للجهاز.
  • منفذ استدعاء إجراء عن بُعد (RPC): منفذ استدعاء إجراء عن بُعد (RPC) الذي يتصل به الجهاز بوحدات التحكم (GUI).
  • منفذ Matter: المنفذ الذي يستخدمه الجهاز الحالي للاتصال من خلال شبكة IP.
  • رمز المرور: رقم التعريف الشخصي المستخدَم لتفويض الجهاز من خلال الشبكة.
  • مجلد الإعدادات: المجلد الذي يخزّن فيه الجهاز الافتراضي الإعدادات.
  • معلومات العمولة: تعرض الأقمشة التي انضم إليها الجهاز ومعرّف عقدة الجهاز في القماش.

عرض سجلات الجهاز

إذا أطلقت MVD من المحطة الطرفية، ستظهر نتائج السجلّ في stdout. يمكنك أيضًا عرض سجلات الجهاز في علامة التبويب سجلّات الجهاز.

إيقاف الجهاز

لإيقاف الجهاز وإتلافه، انقر على حذف.

إنهاء التطبيق

يؤدي إغلاق نافذة التحكّم إلى تدمير الجهاز وإنهاء تطبيق MVD. إذا تم التشغيل من الوحدة الطرفية، يمكنك أيضًا إنهاء التطبيق من خلال كتابة Ctrl-C في الوحدة الطرفية.

الحصول على مساعدة

للحصول على مساعدة بشأن MVD أو للإبلاغ عن خطأ أو لطلب ميزة جديدة، يُرجى التواصل مع جهة اتصال فريق الدعم في Google.

يؤدي النقر على زر المساعدة في أعلى يسار النافذة إلى نقلك إلى هذه الصفحة.

الإبلاغ عن خطأ

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

إرسال ملاحظات

لإرسال ملاحظاتك حول ما يعجبك في الأداة MVD أو كيف يمكننا تحسين تجربتك مع الأداة، يُرجى ملء نموذج الملاحظات.

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

إرسال ملاحظاتك إلينا