Matter ; واجهات برمجة تطبيقات المنزل
تكون أجهزة 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® منخفض الطاقة (BLE) أو Thread® للانضمام إلى شبكة Matter. بدلاً من ذلك، تستخدم الجهاز المضيف الذي يعمل بنظام التشغيل Linux أو macOS للاتصال بشبكة Wi-Fi الحالية من أجل إعداد الجهاز.
مقارنةً بالأدوات الأخرى
يختلف MVD عن Virtual Device Controller (VDC) في أنّه حلّ مستقل يجمع بين جهاز افتراضي وواجهة مستخدم للتحكّم فيه. في المقابل، يتم استخدام VDC للتحكّم في جهاز Matter افتراضي منفصل.
يحتوي MVD على العديد من الأجهزة الافتراضية المسبقة الإنشاء المختلفة ويتضمّن واجهة مستخدم مدمجة لتشغيلها والتحكّم فيها.
الأجهزة المتوافقة
يتوافق MVD مع Matter أنواع الأجهزة التالية:
| Matter نوع الجهاز | مجموعات التطبيقات | نوع النظام البيئي المنزلي |
|---|---|---|
| جهاز تنقية الهواء |
0x0202 0x0006 0x0071 |
جهاز تنقية الهواء |
| أداة استشعار جودة الهواء |
0x005b 0x0402 0x0405 0x040c 0x040d 0x042a 0x042d 0x042e |
أداة الاستشعار |
| مشغّل الفيديو الأساسي |
0x0006 0x0506 0x0509 |
التلفزيون |
| مصباح درجة حرارة الألوان |
0x0300 0x0008 0x0006 |
ضوء |
| مستشعر الاتصال |
0x0045 |
المستشعر |
| مصباح قابل للتعتيم |
0x0008 0x0006 |
ضوء |
| وحدة قابلة للتعتيم يتم توصيلها بمقبس |
0x0006 0x0008 |
منفذ البيع |
| غسالة أطباق |
0x0006 0x0059 0x0056 0x0060 |
غسالة الأطباق |
| قفل الباب |
0x0101 |
قفل |
| Extended Color Light |
0x0300 0x0008 0x0006 |
فاتح |
| مروحة |
0x0202 0x0006 |
Fan |
| مستشعر التدفق |
0x0404 |
أداة الاستشعار |
| Generic Switch |
0x003b |
التبديل |
| مستشعر الرطوبة |
0x0405 |
أداة الاستشعار |
| غسالة ملابس |
0x0006 0x0051 0x0053 0x0056 0x0060 |
غسالة |
| مستشعر الإضاءة |
0x0400 |
أداة الاستشعار |
| جهاز استشعار تواجد الأفراد في المنزل |
0x0406 |
أداة الاستشعار |
| تشغيل/إيقاف الإضاءة |
0x0008 0x0006 |
فاتح |
| مفتاح تشغيل/إيقاف الإضاءة |
0x0006 |
التبديل |
| وحدة المكوّن الإضافي للتشغيل/الإيقاف |
0x0008 0x0006 |
Outlet |
| مستشعر الضغط |
0x0403 |
أداة الاستشعار |
| مضخة |
0x0006 0x0200 0x0402 0x0403 0x0404 |
Pump |
| مكنسة كهربائية روبوتية |
0x0054 0x0055 0x0061 |
مكنسة كهربائية |
| مكيّف هواء للغرفة |
0x0006 0x0201 0x0202 |
مكيّف الهواء |
| إنذار الدخان وأول أكسيد الكربون |
0x005C |
كاشف أول أكسيد الكربون
كاشف الدخان |
| مستشعر درجة الحرارة |
0x0402 |
أداة الاستشعار |
| ترموستات |
0x0201 |
الترموستات |
| غطاء النافذة |
0x0102 |
الستائر |
تثبيت MVD
يعمل MVD على أجهزة بمعالج x86 64 بت تعمل بنظام التشغيل Debian (الإصدار 13 Trixie أو الإصدارات الأحدث) أو Ubuntu (الإصدار 20.04 Noble Numbat أو الإصدارات الأحدث) أو macOS.
Linux
نزِّل حزمة MVD Debian (.deb)
تنزيل ملف توقيع armored-ASCII (.asc)
بعد ذلك، شغِّل dpkg لتثبيت حزمة MVD
Debian (.deb):
sudo dpkg -i mvd_1.7.0_amd64.debنظام التشغيل Mac
بعد ذلك، انقر مرّتين على ملف 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 /Applicationsopen 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 واختر إعدادات النظام.
- انقر على الشبكة في قائمة الشريط الجانبي.
- انقر على جدار الحماية.
- حرِّك مفتاح التبديل الخاص بجدار الحماية إلى وضع إيقاف.
تشغيل جهازك
بعد ضبط إعدادات الجهاز، انقر على إنشاء جهاز. عند إنشاء الجهاز، تظهر شاشة وحدة التحكّم. استنادًا إلى نوع الجهاز الذي اخترته، قد يظهر لك عنصر تحكّم واحد أو أكثر من عناصر التحكّم التالية:
- التشغيل/الإيقاف: يتوفّر هذا الخيار في معظم الأجهزة.
- المستوى: على سبيل المثال، يمكن أن يحتوي المصباح على شريط تمرير للمستوى من أجل ضبط السطوع.
- اللون: على سبيل المثال، يمكن أن يتضمّن مصباح ملون عنصر التحكّم هذا.
- الإشغال: يوفّر مستشعر الإشغال عنصر التحكّم هذا لمحاكاة حالة الإشغال أو عدم الإشغال.
تتضمّن جميع الأجهزة الافتراضية عناصر التحكّم التالية:
- QRCode: يعرض رمز الاستجابة السريعة (QR Code) المستخدم للتشغيل.
- إعادة التشغيل: إعادة تشغيل الجهاز الافتراضي. تم فصل الجهاز عن الشبكة لفترة وجيزة.
- إعادة الضبط: إعادة ضبط المصنع للجهاز الحالي ومسح جميع الحالات، بما في ذلك التشغيل وحالة التحكم الحالية وما إلى ذلك
- حذف: يؤدي إلى تدمير الجهاز والعودة إلى شاشة إنشاء جهاز.
السمات الخاصة بالشركة المصنعة
تدعم واجهات برمجة التطبيقات الرئيسية لنظام Android السمات الخاصة بالشركة المصنعة (MS) وتوفر وظائف إضافية تتجاوز السمات القياسية في Matter. لاختبار جهاز يحتوي على سمة MS، يتيح لك MVD التفاعل مع السمات في القسم المسمى المجموعات المخصصة (انظر الصورة أعلاه).
قم بتشغيل جهازك
يصبح الجهاز جاهزًا للتشغيل بمجرد إنشائه.
هناك عدد من المتطلبات الأساسية لتشغيل الجهاز:
يجب أن يكون لديك مشروع في Google Home Developer Console. يجب أن يحتوي هذا المشروع على تكامل Matter له نفس تركيبة VID/PID مثل تلك التي استخدمتها في إعداد جهازك الافتراضي. راجع دليل إنشاء المشروع للحصول على التفاصيل.
يجب أن يكون لديك Google Nest Hub الذي يدعم Matter
يجب أن يكون لديك هاتف يعمل بنظام Android 8.1 أو إصدار أحدث، مع تثبيت 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 الذي يتواصل الجهاز من خلاله مع أدوات التحكّم (واجهة المستخدم الرسومية).
- منفذ Matter: المنفذ الذي يستخدمه الجهاز الحالي للتواصل عبر شبكة IP.
- رمز المرور: هو رقم التعريف الشخصي المستخدَم لإعداد الجهاز من خلال الشبكة.
- مجلد الإعداد: هو المجلد الذي يخزّن الجهاز الافتراضي إعداداته.
- معلومات العمولة: تعرض هذه السمة الأقمشة التي انضم إليها الجهاز ومعرّف العقدة الخاص بالجهاز في القماش.
عرض سجلّات الجهاز
إذا شغّلت MVD من الوحدة الطرفية، سيظهر سجلّ المخرجات على stdout.
يمكنك أيضًا عرض سجلّات الجهاز في علامة التبويب سجلّات الجهاز.
إيقاف الجهاز
لإيقاف الجهاز وإتلافه، انقر على حذف.
إنهاء التطبيق
يؤدي إغلاق نافذة التحكّم إلى إتلاف الجهاز وإنهاء التطبيق MVD. إذا شغّلت التطبيق من الوحدة الطرفية، يمكنك أيضًا إيقافه عن طريق كتابة Ctrl-C في الوحدة الطرفية.
الحصول على مساعدة
للحصول على مساعدة بشأن MVD أو الإبلاغ عن خطأ أو طلب ميزة جديدة، يُرجى التواصل مع جهة الاتصال المسؤولة عن الدعم في Google.
سيؤدي النقر على زر المساعدة في أعلى يسار النافذة إلى نقلك إلى هذه الصفحة.
الإبلاغ عن خطأ
إذا كنت تعتقد أنك وجدت عيبًا في MVD، فيمكنك الإبلاغ عن خطأ من خلال النقر فوق الزر "مشكلة " في الزاوية العلوية اليمنى من النافذة.
إرسال ملاحظات
لإرسال أفكارك حول ما يعجبك في MVD أو كيف يمكننا تحسين تجربتك مع الأداة، قم بملء نموذج التعليقات الخاص بنا.
يمكن تشغيل النموذج من خلال زر التعليقات الموجود في الزاوية العلوية اليمنى من النافذة، أو بالنقر فوق الزر الموجود أدناه.
يمكنك أيضًا تقديم تعليقات من خلال الاستبيان الذي يظهر في الأسفل عند استخدام MVD.