أجهزة الواجهة البشرية على الويب: بعض الأمثلة السريعة

الاتصال بأجهزة غير شائعة من تطبيقك

Joe Medley
Joe Medley
Matt Reynolds
Matt Reynolds

ما هي WebHID API؟

العديد من أجهزة الواجهة البشرية (HID) إما جديدة جدًا أو قديمة جدًا أو غير شائعة بما يكفي لتتمكّن برامج تشغيل الأجهزة في الأنظمة من الوصول إليها. يحلّ WebHID API هذه المشكلة من خلال توفير طريقة لتنفيذ منطق خاص بالجهاز في JavaScript.

حالات الاستخدام المقترَحة لواجهة برمجة التطبيقات WebHID API

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

ويكون عدم إمكانية الوصول إلى أجهزة HID غير الشائعة مزعجًا بشكل خاص عند الحاجة إلى استخدام أذرع التحكّم في الألعاب. تستخدم أذرع التحكّم المصمّمة لأجهزة الكمبيوتر عادةً واجهة HID لإدخال البيانات (الأزرار وعصا التحكّم وأزرار التشغيل) وإخراجها (مؤشرات LED والاهتزاز). ومع ذلك، لا تتوفّر معايير موحّدة لإدخال البيانات وإخراجها في وحدات التحكّم في الألعاب، وغالبًا ما تتطلّب متصفّحات الويب منطقًا مخصّصًا لأجهزة معيّنة. وهذا غير مستدام ويؤدي إلى عدم توفّر دعم كافٍ للأجهزة القديمة وغير الشائعة. ويؤدي ذلك أيضًا إلى اعتماد المتصفّح على أخطاء في سلوك أجهزة معيّنة.

عروض توضيحية، عروض توضيحية، عروض توضيحية

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

الإضاءة الخلفية للوحة مفاتيح MacBook Pro

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

المؤلف: FWeinb
العرض التوضيحي/المصدر: Keyboard Backlight

أجهزة التحكّم في الألعاب

وحدة تحكّم لاسلكية لجهاز PlayStation 4

بعد ذلك، سننتقل إلى ميزة من المحتمل أنّ عددًا أقل منكم يستخدمها. ‫DualShock 4 من Sony هو ذراع تحكّم لاسلكي لوحدات تحكّم ألعاب PlayStation 4.

يستخدم عرض DualShock 4 التوضيحي واجهة WebHID لتلقّي تقارير الإدخال الأوّلية من DualShock 4، كما يوفّر واجهة برمجة تطبيقات عالية المستوى للوصول إلى بيانات الجيروسكوب ومقياس التسارع ولوحة اللمس والأزرار وعصا التحكّم في وحدة التحكّم. تتيح أيضًا وظيفة الاهتزاز وتحديد لون مصباح LED بألوان الأحمر والأخضر والأزرق داخل وحدة التحكّم.

المؤلف: TheBITLINK
العرض التوضيحي: DualShock 4 Demo (المصدر)

وحدات تحكّم Nintendo Switch Joy-Con

يمكنك لعب لعبة الديناصور 🦖 في Chrome بلا إنترنت من خلال القفز فعليًا باستخدام وحدة تحكّم Nintendo Switch Joy-Con في جيوب بنطالك. يتم تشغيل هذا العرض التوضيحي بواسطة Joy-Con WebHID، وهو برنامج تشغيل WebHID لوحدات التحكّم Nintendo Switch Joy-Con.

المؤلف: توماس شتاينر
العرض التوضيحي: لعبة الديناصور في Chrome WebHID (مصدر العرض التوضيحي، مصدر برنامج التشغيل)

The BlinkStick Strip

‫BlinkStick Strip هو شريط إضاءة متوافق مع HID ويضم 8 مصابيح LED بألوان الأحمر والأخضر والأزرق. تتيح العيّنة للمستخدم الاختيار من بين عدة أنماط وميض، بما في ذلك المطاردة والوميض والماسح الضوئي Larson (المعروف أيضًا باسم Cylon).

المؤلف: روبات ويليامز
العرض التوضيحي: blinkstick-strip (المصدر)

ما هي وظيفة هذا العرض التوضيحي؟ (انتظر المفاجأة.) تومض. في الواقع، هي ثلاث عروض توضيحية تستخدم مصباح الإشعارات blink(1) USB.

‫blink(1) هو جهاز بسيط وموثّق بشكل جيد، ما يجعله خيارًا رائعًا للبدء باستخدام HID.

المؤلف: تود إي. Kurt
العروض التوضيحية: blink(1) (المصدر)

الإقرارات

نشكر بيت ليباج وكايس باسكس.