अपने ऐप्लिकेशन से असामान्य डिवाइसों से कनेक्ट करना.
WebHID API क्या है?
कई ह्यूमन इंटरफ़ेस डिवाइस (एचआईडी) बहुत नए, बहुत पुराने या बहुत असामान्य होते हैं. इसलिए, सिस्टम के डिवाइस ड्राइवर उन्हें ऐक्सेस नहीं कर पाते. WebHID API, JavaScript में डिवाइस के हिसाब से लॉजिक लागू करने का तरीका उपलब्ध कराकर, इस समस्या को हल करता है.
WebHID API के इस्तेमाल के सुझाए गए उदाहरण
एचआईडी, लोगों से इनपुट लेता है या उन्हें आउटपुट देता है. डिवाइसों के उदाहरणों में कीबोर्ड, पॉइंटिंग डिवाइस (माउस, टचस्क्रीन वगैरह), और गेमपैड शामिल हैं. एचआईडी प्रोटोकॉल की मदद से, ऑपरेटिंग सिस्टम ड्राइवर का इस्तेमाल करके, डेस्कटॉप कंप्यूटर पर इन डिवाइसों को ऐक्सेस किया जा सकता है. वेब प्लैटफ़ॉर्म, इन ड्राइवरों पर भरोसा करके एचआईडी के साथ काम करता है.
असामान्य एचआईडी डिवाइसों को ऐक्सेस न कर पाना, गेमपैड के साथ काम करने की सुविधा के लिए खास तौर पर परेशानी भरा होता है. पीसी के लिए डिज़ाइन किए गए गेमपैड, अक्सर गेमपैड के इनपुट (बटन, जॉयस्टिक, ट्रिगर) और आउटपुट (एलईडी, रंबल) के लिए एचआईडी का इस्तेमाल करते हैं. हालांकि, गेमपैड के इनपुट और आउटपुट को स्टैंडर्ड नहीं बनाया गया है. साथ ही, वेब ब्राउज़र को अक्सर खास डिवाइसों के लिए कस्टम लॉजिक की ज़रूरत होती है. ऐसा करना संभव नहीं है. इससे, पुराने और असामान्य डिवाइसों के लिए, कम सहायता मिलती है. इससे ब्राउज़र, कुछ खास डिवाइसों के व्यवहार में मौजूद गड़बड़ियों पर भी निर्भर हो जाता है.
डेमो, डेमो, डेमो
अगर आपको इनमें से किसी सैंपल के काम करने का तरीका जानना है, तो उन सभी का सोर्स कोड GitHub पर उपलब्ध है. एक्सप्लेनेटर में, बेयरबोन कोड का उदाहरण दिया गया है.
MacBook Pro के कीबोर्ड की बैकलाइट
इनमें से किसी भी डेमो को आज़माने में सबसे बड़ी समस्या, डिवाइस का ऐक्सेस न होना है. अच्छी बात यह है कि अगर आपके पास TouchBar वाला MacBook Pro है, तो आपको कुछ भी खरीदने की ज़रूरत नहीं है. इस डेमो की मदद से, सीधे अपने लैपटॉप से एपीआई का इस्तेमाल किया जा सकता है. इसमें यह भी बताया गया है कि WebHID का इस्तेमाल, डिवाइस में पहले से मौजूद डिवाइसों की सुविधाओं को अनलॉक करने के लिए कैसे किया जा सकता है.
लेखक: FWeinb
डेमो/सोर्स: कीबोर्ड की बैकलाइट
गेम कंट्रोलर
PlayStation 4 का वायरलेस कंट्रोलर
अगला सवाल, आपमें से कुछ लोगों के लिए है. Sony का DualShock 4, PlayStation 4 गेम कंसोल के लिए एक तार रहित कंट्रोलर है.
DualShock 4 डेमो, DualShock 4 से रॉ इनपुट रिपोर्ट पाने के लिए WebHID का इस्तेमाल करता है. साथ ही, यह कंट्रोलर के जायरोस्कोप, ऐक्सीलेरोमीटर, टचपैड, बटन, और थंबस्टिक इनपुट को ऐक्सेस करने के लिए, एक हाई-लेवल एपीआई उपलब्ध कराता है. इसमें रंबल की सुविधा भी काम करती है. साथ ही, कंट्रोलर में मौजूद आरजीबी एलईडी का रंग सेट किया जा सकता है.
लेखक: TheBITLINK
डेमो: DualShock 4 डेमो (सोर्स)
Nintendo Switch Joy-Con कंट्रोलर
Chrome Dino 🦖 ऑफ़लाइन गेम खेलें. इसके लिए, अपनी पैंट की जेब में Nintendo Switch Joy-Con कंट्रोलर रखें और कूदें. यह डेमो, Joy-Con WebHID की मदद से काम करता है. यह Nintendo Switch Joy-Con कंट्रोलर के लिए एक WebHID ड्राइवर है.
लेखक: थॉमस स्टाइनर
डेमो: Chrome Dino WebHID
(डेमो सोर्स,
ड्राइवर सोर्स)
BlinkStick स्ट्रिप
BlinkStick Strip, HID के साथ काम करने वाली लाइट स्ट्रिप है. इसमें आठ आरजीबी एलईडी हैं. इस डेमो की मदद से, उपयोगकर्ता कई ब्लिंक पैटर्न में से किसी एक को चुन सकता है. इनमें चेज़, ब्लिंक, और लार्सन स्कैनर (जिसे साइलोन भी कहा जाता है) शामिल हैं.
लेखक: रोबट विलियम्स
डेमो: blinkstick-strip (सोर्स)
ब्लिंक, ब्लिंक, ब्लिंक
यह डेमो क्या करता है? (थोड़ा इंतज़ार करें.) यह ब्लिंक करता है. असल में, ये तीन डेमो हैं, जिनमें blink(1) की यूएसबी सूचना लाइट का इस्तेमाल किया गया है.
blink(1) आसान है और इसके बारे में अच्छी तरह से जानकारी उपलब्ध है. इसलिए, यह HID का इस्तेमाल शुरू करने के लिए एक बेहतर विकल्प है.
लेखक: टॉड ई. कर्ट
डेमो: blink(1) (source)
आभार
इस लेख की समीक्षा करने के लिए, पीट लेपेज और केस बेस्केस का धन्यवाद.
Unsplash पर मौजूद, Ugur Akdemir की फ़ोटो