المسألة القانونية حزمة تطوير البرامج (SDK) للجهاز
تُعد الأجهزة الافتراضية Matter مفيدة لتطوير التطبيقات واختبارها. Matter حلول، ويمكن تفعيلها باستخدام Google Home app (GHA)، وتم التحكّم فيه باستخدام GHA Google Assistant، تمامًا مثل Matter الأجهزة.
لمطوّري التطبيقات وغيرهم ممن يحتاجون إلى اختبار تطبيقات افتراضية أو محاكاتها جهاز واحد (Matter) ولكن لا تتوفّر لديه الموارد اللازمة لبناء جهازه الخاص مادية أو افتراضي جهاز Matter، توفّر Google Matter Virtual Device (MVD). MVD هي أداة مستقلة خفيفة الوزن لأجهزة الكمبيوتر المكتبي تعمل بنظام التشغيل Linux أو macOS، وهي تحاكي أنواعًا مختلفة من أجهزة Matter الافتراضية وتوفّر واجهة مستخدم رسومية للتحكّم في حالات جهاز Matter الافتراضي وعرضها.
على عكس جهاز Matter فعلي، MVD لا يعتمد على Bluetooth® Low Energy (BLE) أو Thread® من أجل الانضمام إلى قماش Matter. وإنما يستخدم المضيف اتصال شبكة Wi-Fi الحالي على جهاز Linux أو macOS لتشغيل الجهاز.
مقارنةً بالأدوات الأخرى
تختلف MVD عن Virtual Device Controller (VDC) من حيث هو حل مستقل بذاته، حيث يجمع بين جهاز افتراضي وواجهة مستخدم والتحكم فيه. في المقابل، يتم استخدام VDC للأغراض التالية: التحكّم في جهاز Matter افتراضي منفصل، مثل الجهاز التي ننشئها في Matter Virtual Device Development Environment (MVD-DE).
من المحتمل أنّك سبق وبدأت في الدرس التطبيقي حول الترميز MVD-DE. في هذه الدورة، درس تطبيقي حول الترميز، يمكنك إنشاء نوع واحد من الأجهزة الافتراضية-المصباح الذكي. ضِمن التباين، يحتوي MVD على العديد من الأنواع المختلفة أجهزة افتراضية وتتضمّن واجهة مستخدم متكاملة لتشغيلها والتحكّم فيها.
MVD | VDC | MVD-DE (درس تطبيقي حول الترميز) | |
---|---|---|---|
محاكاة جهاز Matter | |||
التحكّم في جهاز Matter في وضع المحاكاة | |||
مطلوب جهود التطوير | |||
تنزيل | أقل من 100 ميغابايت | 9 غيغابايت | 20 غيغابايت |
الأجهزة المتوافقة
يتوافق MVD مع أنواع Matter الأجهزة التالية:
نوع جهاز واحد (Matter) | مجموعات التطبيقات | نوع المنظومة المتكاملة للمنازل |
---|---|---|
مشغّل الفيديو الأساسي |
0x0006 0x0506 0x0509 |
تلفزيون |
ضوء درجة حرارة الألوان |
0x0300 0x0008 0x0006 |
خفيفة |
مستشعر اتصال |
0x0045 |
جهاز الاستشعار |
مصباح خفيف |
0x0008 0x0006 |
خفيفة |
قفل الباب |
0x0101 |
قفل |
مصباح ملوّن موسّع |
0x0300 0x0008 0x0006 |
خفيفة |
مروحة |
0x0202 0x0006 |
المعجب |
جهاز استشعار التدفق |
0x0404 |
أداة الاستشعار |
مفتاح عام |
0x003b |
التبديل |
جهاز استشعار الرطوبة |
0x0405 |
أداة الاستشعار |
أداة استشعار الضوء |
0x0400 |
أداة الاستشعار |
جهاز استشعار تواجد الأفراد في المنزل |
0x0406 |
أداة الاستشعار |
ضوء تشغيل/إيقاف |
0x0008 0x0006 |
خفيفة |
مفتاح تشغيل/إيقاف الإضاءة |
0x0006 |
التبديل |
وحدة التوصيل الإضافي للتشغيل/الإيقاف |
0x0008 0x0006 |
المقبس |
جهاز استشعار الضغط |
0x0403 |
أداة الاستشعار |
مضخة |
0x0006 0x0200 0x0402 0x0403 0x0404 |
مضخّة ماء |
مكنسة كهربائية روبوتية |
0x0054 0x0055 0x0061 |
مكنسة كهربائية |
مكيّف هواء غرفة |
0x0006 0x0201 0x0202 |
Ac |
إنذار الدخان/أول أكسيد الكربون |
0x005C |
دخان |
جهاز استشعار الحرارة |
0x0402 |
أداة الاستشعار |
ترموستات |
0x0201 |
جهاز ترموستات |
تغطية النوافذ |
0x0102 |
الستائر |
تثبيت MVD
يعمل MVD على أجهزة معالج 64 بت إلى x86 تعمل بنظام Debian. (الإصدار 11 أو الإصدارات الأحدث) أو نظام التشغيل Ubuntu (الإصدار 20.04 أو الإصدارات الأحدث) أو macOS.
Linux
تنزيل ملف Armored-ASCII (.asc)
بعد ذلك، شغِّل dpkg
لتثبيت MVD.
حزمة Debian (.deb):
sudo dpkg -i mvd_1.4.0_amd64.deb
نظام التشغيل Mac
تنزيل ملف dmg الخاص بتطبيق MVD (macOS x86)
تنزيل ملف dmg الخاص بتطبيق MVD (ARM64 M1)
بعد ذلك، انقر مرّتين على ملف dmg
لفتح عملية التثبيت.
نافذة.
لإكمال عملية التثبيت، انقر على الرمز mvd
واسحبه
المجلد Applications
:
التحقّق من استخدام المنفذ
تستخدم وحدة التحكّم في MVD منفذ TCP 33000 لإجراء مكالمات RPC بالجهاز الافتراضي، لذا إذا كان هذا المنفذ قيد الاستخدام من قِبل عملية أخرى على جهاز الكمبيوتر، احرص على إتاحته.
لمعرفة ما إذا كانت أي عملية تستخدم المنفذ 33000 أم لا:
Linux
sudo fuser -v 33000/tcp
نظام التشغيل Mac
lsof -i:33000
يمكنك إنهاء أي عملية باستخدام منفذ TCP رقم 33000 باستخدام أمر واحد:
Linux
sudo fuser -k 33000/tcp
نظام التشغيل Mac
lsof -ti:33000 | xargs kill
تشغيل MVD
Linux
على نظام التشغيل Linux، شغِّل MVD من مجلد التطبيقات أو من الوحدة الطرفية:
mvd
نظام التشغيل Mac
على نظام التشغيل macOS، استخدِم Launchpad لفتح MVD أو تشغيله MVD من محطة الدفع:
cd /Applications
open mvd.app
ضبط إعدادات جهازك
تظهر الشاشة الرئيسية عند تشغيل الجهاز، وتتيح لك ضبط إعدادات جهاز افتراضي باتّباع الخطوات التالية:
- نوع الجهاز: اختَر نوع الجهاز (على سبيل المثال، مصباح أو مفتاح أو جهاز استشعار وهكذا).
- اسم الجهاز: اختَر اسم الجهاز سهل الاستخدام.
- المميّز: رقم مكوّن من 12 بتًا يُستخدَم للتمييز بين إعلانات الأجهزة المتعددة التي يمكن تحقيق الربح منها
. (القيمة التلقائية:
3840
) - منفذ Matter: منفذ لـ Matter التكليف والتواصل من خلال شبكات IP. يستخدم Matter منفذ TCP/UDP 5540 تلقائيًا، ولكن يمكنك ضبط الجهاز الافتراضي لاستخدام منفذ مختلف، ما دامت لا تستخدمه أي خدمة أخرى.
- رقم تعريف المورّد: يُسمح فقط باستخدام رقم تعريف المورّد التجريبي
0xFFF1
. - معرّف المنتج: اختبار معرّفات المنتجات فقط من
0x8000
إلى0x801F
تهيئة جدار الحماية
Linux
إذا كان لديك جدار حماية قيد التشغيل على جهاز الكمبيوتر، فيمكنك إما إغلاقه أو السماح به اتصالات TCP/UDP الواردة على منفذ Matter
لعرض netfilter النشط الحالي لقواعد جدار الحماية، قم بتشغيل:
sudo iptables -L -n
في حال استخدام `ufw`، يمكن إيقافه باستخدام:
sudo ufw disable
ويمكن إعادة تفعيله من خلال:
sudo ufw enable
نظام التشغيل Mac
لضبط جدار الحماية أو إيقافه على نظام التشغيل macOS:
- انتقِل إلى قائمة 䣿 من Apple واختَر إعدادات النظام.
- انقر على الشبكة في قائمة الشريط الجانبي.
- انقر على جدار الحماية.
- بدِّل مفتاح جدار الحماية إلى الوضع إيقاف.
تشغيل جهازك
بعد إعداد الجهاز، انقر على إنشاء جهاز. عندما يكون الجهاز ستظهر شاشة وحدة التحكم. بناءً على نوع الجهاز قد يظهر لك عنصر أو أكثر من عناصر التحكّم التالية:
- تفعيل/إيقاف: شائع بين معظم الأجهزة.
- المستوى: على سبيل المثال، قد يتضمّن المصباح شريط تمرير لضبط المستوى. السطوع.
- اللون: على سبيل المثال، يمكن أن يتوفّر عنصر التحكّم هذا في مصباح اللون.
- الإشغال: يقدّم "مستشعر الإشغال" عنصر التحكّم هذا لمحاكاة الحالة المشغولة أو غير المشغولة.
تتضمّن جميع الأجهزة الافتراضية عناصر التحكّم التالية:
- رمز الاستجابة السريعة: تعرِض هذه السمة رمز الاستجابة السريعة المستخدَم في عملية الإعداد.
- إعادة التشغيل: لإعادة تشغيل الجهاز الظاهري الجهاز غير متصل من الشبكة لفترة وجيزة.
- إعادة الضبط: لإعادة ضبط الجهاز الحالي على الإعدادات الأصلية ومحو جميع الحالات، بما في ذلك التكليف وحالة عناصر التحكم الحالية وما إلى ذلك
- حذف: لإتلاف الجهاز والعودة إلى شاشة إنشاء جهاز
تشغيل جهازك
يمكن تحصيل عمولة من الجهاز فور إنشائه.
هناك بعض المتطلّبات الأساسية لتشغيل الجهاز:
يجب أن يكون لديك مشروع في Google Home Developer Console. يجب أن يحتوي على عملية دمج Matter تضم نفس VID/PID التي تستخدمها في إعداد جهازك الافتراضي. راجِع دليل إنشاء المشاريع للاطّلاع على التفاصيل.
يجب أن يكون لديك جهاز Google Nest Hub متوافق مع المسألة القانونية
يجب أن يكون لديك هاتف Android يعمل بالإصدار 8.1 أو إصدار أحدث، ومزوّد بتطبيق GHA.
يجب أن يكون هاتف Android متصلاً بشبكة Wi-Fi نفسها التي يتصل بها الموزّع.
يجب أن يكون الجهاز المضيف متصلاً بشبكة Wi-Fi.
لعمولة الجهاز باستخدام GHA، انقر على QRCode من أجل لعرض رمز الاستجابة السريعة للجهاز، ثم اتّبِع التعليمات الواردة في إقران Matter الجهاز الذي اشرح لك كيفية إعداد جهاز Matter باستخدام GHA يمكنك أيضًا تشغيل الجهاز باستخدام Google Home Sample App for Matter
يمكنك الاطّلاع على Matter Primer إلى يمكنك التعرّف على آلية عمل تفويض Matter.
التحكّم في الجهاز
بعد تفويض جهاز افتراضي، يمكنك التحكّم في الجهاز باستخدام تطبيق Google Home أو "مساعد Google" من خلال Google. يمكنك تنفيذ إجراء مما يلي:
- التحكّم في الجهاز من خلال GHA أو Assistant أثناء مراقبة تغييرات الحالة على الجهاز الافتراضي
- التحكّم في الجهاز باستخدام رمز Sample App for Matter أثناء رصد التغيُّرات في الحالة على الجهاز الافتراضي
- التحكّم في حالة الجهاز من خلال MVD نفسه أثناء مراقبة تغييرات الحالة في GHA أو Assistant
الاختبار باستخدام الجهاز
للاختبار باستخدام Assistant، ننصحك باستخدام عبارة المحاكي مثل إضافة Google Home لرمز VS أو مكوّن Google Home الإضافي لاستوديو Android.
عرض تفاصيل الجهاز
تعرض شاشة تفاصيل الجهاز معلومات تفصيلية عن الجهاز:
- الاسم: الاسم المألوف الذي أُطلق على الجهاز.
- نوع الجهاز: نوع الجهاز الذي اخترته.
- أداة التمييز: هي أداة تمييز الأجهزة الحالية.
- رقم تعريف المورّد: رقم تعريف المورّد الحالي للجهاز.
- معرّف المنتج: معرّف المنتج الحالي للجهاز.
- منفذ استدعاء إجراء عن بُعد (RPC): منفذ استدعاء إجراء عن بُعد (RPC) الذي يتصل الجهاز بوحدات التحكم (GUI).
- منفذ Matter: المنفذ الذي يستخدمه الجهاز الحالي من أجل الاتصال عبر شبكة IP.
- رمز المرور: رقم التعريف الشخصي المستخدَم لتشغيل الجهاز من خلال الشبكة.
- مجلد الضبط: هو المجلد الذي يخزِّن الجهاز الافتراضي إعداداته.
- معلومات العمولة: تعرض هذه البطاقة الملابس التي تم ضمها إلى الجهاز. معرّف العقدة للجهاز الموجود في النسيج.
عرض سجلات الجهاز
إذا شغَّلت MVD من الوحدة الطرفية، سيظهر ناتج السجلّ
في stdout
.
يمكنك أيضًا الاطّلاع على سجلات الجهاز في علامة التبويب سجلّات الجهاز.
إيقاف الجهاز
لإيقاف الجهاز وتدميره، انقر على حذف.
إنهاء التطبيق
يؤدي إغلاق نافذة التحكم إلى تدمير الجهاز وإنهاء تطبيق "MVD". إذا تم إطلاقه من الوحدة الطرفية، يمكنك أيضًا إنهاء التطبيق من خلال كتابة Ctrl-C في الوحدة الطرفية.
الحصول على مساعدة
للحصول على مساعدة بشأن MVD، أو الإبلاغ عن خطأ، أو لطلب ميزة جديدة، يُرجى التواصل مع فريق الدعم في Google.
بالنقر على زر المساعدة
في أعلى يسار النافذة إلى هذه الصفحة.الإبلاغ عن خطأ
وفي حال العثور على عيب في "MVD"، يمكنك الإبلاغ عن الخطأ من خلال النقر على رمز المشكلة في أعلى الجانب الأيسر من النافذة.
إرسال ملاحظات
لإرسال ملاحظاتك حول ما يعجبك في MVD أو كيفية تحسين تجربتك باستخدام الأداة، يُرجى ملء نموذج الملاحظات.
يمكن تشغيل النموذج من زر الملاحظات
في углу أعلى يسار النافذة، أو من خلال النقر على الزر أدناه.