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