ब्यौरा
कनेक्ट किए गए एचआईडी डिवाइसों के साथ इंटरैक्ट करने के लिए, chrome.hid
एपीआई का इस्तेमाल करें. यह एपीआई, किसी ऐप्लिकेशन के अंदर से एचआईडी कार्रवाइयों का ऐक्सेस देता है. इस एपीआई का इस्तेमाल करके, ऐप्लिकेशन हार्डवेयर डिवाइसों के लिए ड्राइवर के तौर पर काम कर सकते हैं. इस एपीआई से जनरेट होने वाली गड़बड़ियों को runtime.lastError
सेट करके और फ़ंक्शन के सामान्य कॉलबैक को एक्ज़ीक्यूट करके रिपोर्ट किया जाता है. इस मामले में, कॉलबैक के सामान्य पैरामीटर तय नहीं होंगे.
अनुमतियां
hid
टाइप
DeviceFilter
प्रॉपर्टी
-
productId
नंबर ज़रूरी नहीं
डिवाइस का प्रॉडक्ट आईडी, सिर्फ़ वेंडर आईडी के मेल खाने पर ही जांचा जाता है.
-
इस्तेमाल
नंबर ज़रूरी नहीं
एचआईडी के इस्तेमाल का आइडेंटिफ़ायर, सिर्फ़ तब चुना जाता है, जब एचआईडी के इस्तेमाल की जानकारी वाले पेज का मिलान हो जाता है.
-
usagePage
नंबर ज़रूरी नहीं
एचआईडी के इस्तेमाल वाले पेज का आइडेंटिफ़ायर.
-
vendorId
नंबर ज़रूरी नहीं
डिवाइस वेंडर आईडी.
GetDevicesOptions
प्रॉपर्टी
-
फ़िल्टर
DeviceFilter[] ज़रूरी नहीं है
किसी भी फ़िल्टर से मिलता-जुलता डिवाइस दिखाया जाएगा. फ़िल्टर की एक खाली सूची से, वे सभी डिवाइस दिखेंगे जिनके लिए ऐप्लिकेशन को अनुमति है.
-
productId
नंबर ज़रूरी नहीं
अब सेवा में नहीं हैDeviceFilter.productId
सेटिंग के बराबर. -
vendorId
नंबर ज़रूरी नहीं
अब सेवा में नहीं हैDeviceFilter.vendorId
सेटिंग के बराबर.
HidCollectionInfo
प्रॉपर्टी
-
reportIds
नंबर[]
कलेक्शन और उसके चाइल्ड से जुड़े रिपोर्ट आईडी.
-
इस्तेमाल
नंबर
पेज के लिए तय किया गया इस्तेमाल का आइडेंटिफ़ायर.
-
usagePage
नंबर
एचआईडी के इस्तेमाल वाले पेज का आइडेंटिफ़ायर.
HidConnectInfo
प्रॉपर्टी
-
connectionId
नंबर
अन्य सभी फ़ंक्शन में इस कनेक्शन की पहचान करने के लिए, इस्तेमाल किया जाने वाला ओपेक आईडी.
HidDeviceInfo
प्रॉपर्टी
-
संग्रह
इस डिवाइस के रिपोर्ट डिस्क्रिप्टर से मिले टॉप लेवल के कलेक्शन.
-
deviceId
नंबर
ओपेक डिवाइस आईडी.
-
maxFeatureReportSize
नंबर
टॉप-लेवल के कलेक्शन में मौजूद सुविधाओं की रिपोर्ट का ज़्यादा से ज़्यादा साइज़.
-
maxInputReportSize
नंबर
टॉप-लेवल कलेक्शन की इनपुट रिपोर्ट का ज़्यादा से ज़्यादा साइज़.
-
maxOutputReportSize
नंबर
टॉप-लेवल कलेक्शन की आउटपुट रिपोर्ट का ज़्यादा से ज़्यादा साइज़.
-
productId
नंबर
प्रॉडक्ट ID.
-
productName
स्ट्रिंग
Chrome 46 और इसके बाद के वर्शनअगर उपलब्ध हो, तो डिवाइस पर पढ़ा गया प्रॉडक्ट का नाम.
-
reportDescriptor
ArrayBuffer
रॉ डिवाइस रिपोर्ट डिस्क्रिप्टर (Windows पर उपलब्ध नहीं).
-
serialNumber
स्ट्रिंग
Chrome 46 और इसके बाद के वर्शनअगर उपलब्ध हो, तो डिवाइस पर दिया गया सीरियल नंबर पढ़ता है.
-
vendorId
नंबर
वेंडर आईडी.
तरीके
connect()
chrome.hid.connect(
deviceId: number,
callback?: function,
)
किसी एचआईडी डिवाइस से संपर्क करने के लिए, कनेक्शन खोलें.
पैरामीटर
-
deviceId
नंबर
आपको डिवाइस का
HidDeviceInfo.deviceId
खोलना है. -
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
callback
पैरामीटर ऐसा दिखता है:(connection: HidConnectInfo) => void
-
कनेक्शन
-
रिटर्न
-
Promise<HidConnectInfo>
Chrome 117 और उसके बाद के वर्शनप्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और उसके बाद के वर्शन पर काम करता है. अन्य प्लैटफ़ॉर्म के लिए कॉलबैक का इस्तेमाल करना ज़रूरी है.
disconnect()
chrome.hid.disconnect(
connectionId: number,
callback?: function,
)
किसी डिवाइस से डिसकनेक्ट करना. इसे कॉल करने के बाद किसी डिवाइस पर कार्रवाइयां शुरू करना सुरक्षित है, लेकिन इसका कोई असर नहीं पड़ता.
पैरामीटर
-
connectionId
नंबर
connect
नेconnectionId
लौटाया. -
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
callback
पैरामीटर ऐसा दिखता है:() => void
रिटर्न
-
Promise<void>
Chrome 117 और उसके बाद के वर्शनप्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और उसके बाद के वर्शन पर काम करता है. अन्य प्लैटफ़ॉर्म के लिए कॉलबैक का इस्तेमाल करना ज़रूरी है.
getDevices()
chrome.hid.getDevices(
options: GetDevicesOptions,
callback?: function,
)
कनेक्ट किए गए एचआईडी डिवाइसों की गिनती करें.
पैरामीटर
-
विकल्प
टारगेट किए गए डिवाइसों पर खोजी जाने वाली प्रॉपर्टी.
-
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
callback
पैरामीटर ऐसा दिखता है:(devices: HidDeviceInfo[]) => void
-
डिवाइस
-
रिटर्न
-
Promise<HidDeviceInfo[]>
Chrome 117 और उसके बाद के वर्शनप्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और उसके बाद के वर्शन पर काम करता है. अन्य प्लैटफ़ॉर्म के लिए कॉलबैक का इस्तेमाल करना ज़रूरी है.
receive()
chrome.hid.receive(
connectionId: number,
callback: function,
)
डिवाइस से अगली इनपुट रिपोर्ट पाएं.
पैरामीटर
-
connectionId
नंबर
connect
नेconnectionId
लौटाया. -
कॉलबैक
फ़ंक्शन
callback
पैरामीटर ऐसा दिखता है:(reportId: number, data: ArrayBuffer) => void
-
reportId
नंबर
रिपोर्ट आईडी या
0
, अगर कोई नहीं है. -
डेटा
ArrayBuffer
अगर रिपोर्ट का डेटा मौजूद है, तो रिपोर्ट आईडी प्रीफ़िक्स को हटा दिया जाता है.
-
receiveFeatureReport()
chrome.hid.receiveFeatureReport(
connectionId: number,
reportId: number,
callback?: function,
)
डिवाइस से किसी सुविधा की रिपोर्ट का अनुरोध करें.
पैरामीटर
-
connectionId
नंबर
connect
नेconnectionId
लौटाया. -
reportId
नंबर
रिपोर्ट आईडी या अगर कोई आईडी नहीं है, तो
0
. -
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
callback
पैरामीटर ऐसा दिखता है:(data: ArrayBuffer) => void
-
डेटा
ArrayBuffer
अगर डिवाइस से रिपोर्ट आईडी भेजा गया है, तो रिपोर्ट डेटा और रिपोर्ट आईडी प्रीफ़िक्स.
-
रिटर्न
-
Promise<ArrayBuffer>
Chrome 117 और उसके बाद के वर्शनप्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और उसके बाद के वर्शन पर काम करता है. अन्य प्लैटफ़ॉर्म के लिए कॉलबैक का इस्तेमाल करना ज़रूरी है.
send()
chrome.hid.send(
connectionId: number,
reportId: number,
data: ArrayBuffer,
callback?: function,
)
डिवाइस पर आउटपुट रिपोर्ट भेजें.
ध्यान दें: data
में रिपोर्ट आईडी प्रीफ़िक्स शामिल न करें. ज़रूरत पड़ने पर इसे जोड़ दिया जाएगा.
पैरामीटर
-
connectionId
नंबर
connect
नेconnectionId
लौटाया. -
reportId
नंबर
इस्तेमाल करने के लिए रिपोर्ट आईडी. अगर कोई रिपोर्ट आईडी नहीं है, तो
0
. -
डेटा
ArrayBuffer
रिपोर्ट का डेटा.
-
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
callback
पैरामीटर ऐसा दिखता है:() => void
रिटर्न
-
Promise<void>
Chrome 117 और उसके बाद के वर्शनप्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और उसके बाद के वर्शन पर काम करता है. अन्य प्लैटफ़ॉर्म के लिए कॉलबैक का इस्तेमाल करना ज़रूरी है.
sendFeatureReport()
chrome.hid.sendFeatureReport(
connectionId: number,
reportId: number,
data: ArrayBuffer,
callback?: function,
)
डिवाइस पर सुविधा की रिपोर्ट भेजें.
ध्यान दें: data
में रिपोर्ट आईडी प्रीफ़िक्स शामिल न करें. ज़रूरत पड़ने पर इसे जोड़ दिया जाएगा.
पैरामीटर
-
connectionId
नंबर
connect
नेconnectionId
लौटाया. -
reportId
नंबर
इस्तेमाल करने के लिए रिपोर्ट आईडी. अगर कोई रिपोर्ट आईडी नहीं है, तो
0
. -
डेटा
ArrayBuffer
रिपोर्ट का डेटा.
-
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
callback
पैरामीटर ऐसा दिखता है:() => void
रिटर्न
-
Promise<void>
Chrome 117 और उसके बाद के वर्शनप्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और उसके बाद के वर्शन पर काम करता है. अन्य प्लैटफ़ॉर्म के लिए कॉलबैक का इस्तेमाल करना ज़रूरी है.
इवेंट
onDeviceAdded
chrome.hid.onDeviceAdded.addListener(
callback: function,
)
सिस्टम में किसी डिवाइस को जोड़े जाने पर इवेंट जनरेट होता है. इवेंट सिर्फ़ उन ऐप्लिकेशन और एक्सटेंशन पर ब्रॉडकास्ट किए जाते हैं जिन्हें डिवाइस को ऐक्सेस करने की अनुमति होती है. ऐसा हो सकता है कि ऐप्लिकेशन इंस्टॉल करते समय या उपयोगकर्ता ने वैकल्पिक अनुमति स्वीकार करते समय अनुमति दी हो (permissions.request
देखें).
पैरामीटर
-
कॉलबैक
फ़ंक्शन
callback
पैरामीटर ऐसा दिखता है:(device: HidDeviceInfo) => void
-
डिवाइस
-
onDeviceRemoved
chrome.hid.onDeviceRemoved.addListener(
callback: function,
)
इवेंट तब जनरेट होता है, जब किसी डिवाइस को सिस्टम से हटाया जाता है. onDeviceAdded
देखें कि कौनसे इवेंट डिलीवर किए गए हैं.
पैरामीटर
-
कॉलबैक
फ़ंक्शन
callback
पैरामीटर ऐसा दिखता है:(deviceId: number) => void
-
deviceId
नंबर
-