chrome.hid

ब्यौरा

कनेक्ट किए गए एचआईडी डिवाइसों के साथ इंटरैक्ट करने के लिए, 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

रिटर्न

  • 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

      संख्या