ब्यौरा
कनेक्ट किए गए यूएसबी डिवाइसों को इस्तेमाल करने के लिए, chrome.usb
API का इस्तेमाल करें. यह एपीआई, किसी ऐप्लिकेशन के अंदर से ही यूएसबी से जुड़ी कार्रवाइयों को ऐक्सेस करने की सुविधा देता है. इस एपीआई का इस्तेमाल करके, ऐप्लिकेशन हार्डवेयर डिवाइसों के लिए ड्राइवर की तरह काम कर सकते हैं. इस एपीआई से जनरेट होने वाली गड़बड़ियों को runtime.lastError
सेट करके और फ़ंक्शन के सामान्य कॉलबैक को एक्ज़ीक्यूट करके रिपोर्ट किया जाता है. इस मामले में, कॉलबैक के सामान्य पैरामीटर तय नहीं होंगे.
अनुमतियां
usb
टाइप
ConfigDescriptor
प्रॉपर्टी
-
सक्रिय
boolean
Chrome 47 के बाद के वर्शनक्या यह ऐक्टिव कॉन्फ़िगरेशन है?
-
configurationValue
नंबर
कॉन्फ़िगरेशन नंबर.
-
ब्यौरा
स्ट्रिंग ज़रूरी नहीं
कॉन्फ़िगरेशन का ब्यौरा.
-
extra_data
ArrayBuffer
इस कॉन्फ़िगरेशन से जुड़ा अतिरिक्त डिस्क्रिप्टर डेटा.
-
इंटरफ़ेस
उपलब्ध इंटरफ़ेस.
-
maxPower
नंबर
इस डिवाइस को मिल सकने वाली ज़्यादा से ज़्यादा बैटरी (एमएल) की वैल्यू.
-
remoteWakeup
boolean
इस डिवाइस पर, रिमोट तरीके से स्क्रीन चालू करने की सुविधा काम करती है.
-
selfPowered
boolean
यह डिवाइस खुद से चलता है.
ConnectionHandle
प्रॉपर्टी
-
हैंडल
नंबर
यह एक ओपेक हैंडल है, जो यूएसबी डिवाइस और उससे जुड़े सभी जिन इंटरफ़ेस पर दावा किया गया है और जिन ट्रांसफ़र की मंज़ूरी बाकी है उनसे जुड़े इस कनेक्शन को दिखाता है. हर बार डिवाइस खोलने पर, एक नया हैंडल बन जाता है. कनेक्शन हैंडल,
Device.device
से अलग है. -
productId
नंबर
प्रॉडक्ट आईडी.
-
vendorId
नंबर
डिवाइस का वेंडर आईडी.
ControlTransferInfo
प्रॉपर्टी
-
डेटा
arrayBuffer ज़रूरी नहीं
ट्रांसमिट किया जाने वाला डेटा (सिर्फ़ आउटपुट ट्रांसफ़र के लिए ज़रूरी है).
-
direction
ट्रांसफ़र करने की दिशा (
"in"
या"out"
). -
इंडेक्स
नंबर
wIndex
फ़ील्ड, Ibid देखें. -
लंबाई
नंबर ज़रूरी नहीं
ज़्यादा से ज़्यादा कितने बाइट डेटा हासिल करना है (सिर्फ़ इनपुट ट्रांसफ़र के लिए ज़रूरी है).
-
उपहार पाने वाला
ट्रांसफ़र टारगेट. अगर
"interface"
या"endpoint"
है, तोindex
से दिए गए टारगेट पर दावा किया जाना चाहिए. -
CANNOT TRANSLATE
नंबर
bRequest
फ़ील्ड में, यूनिवर्सल सीरियल बस स्पेसिफ़िकेशन रिविज़न 1.1 § 9.3 देखें. -
requestType
अनुरोध का टाइप.
-
टाइम आउट
नंबर ज़रूरी नहीं
Chrome 43+अनुरोध का समय खत्म (मिलीसेकंड में). डिफ़ॉल्ट वैल्यू
0
बताती है कि कोई टाइम आउट नहीं हुआ है. -
value
नंबर
wValue
फ़ील्ड, Ibid देखें.
Device
प्रॉपर्टी
-
डिवाइस
नंबर
यूएसबी डिवाइस के लिए ओपेक आईडी. यह तब तक नहीं बदलता, जब तक डिवाइस को अनप्लग न कर दिया जाए.
-
manufacturerName
स्ट्रिंग
Chrome 46 और इसके बाद के वर्शनअगर उपलब्ध है, तो डिवाइस से ली गई iManufacturer स्ट्रिंग.
-
productId
नंबर
प्रॉडक्ट आईडी.
-
productName
स्ट्रिंग
Chrome 46 और इसके बाद के वर्शनअगर उपलब्ध है, तो डिवाइस से पढ़ी गई iProduct स्ट्रिंग.
-
serialNumber
स्ट्रिंग
Chrome 46 और इसके बाद के वर्शनउपलब्ध होने पर, डिवाइस से पढ़ी जाने वाली iSerialNumber स्ट्रिंग.
-
vendorId
नंबर
डिवाइस का वेंडर आईडी.
-
वर्शन
नंबर
Chrome 51 और इसके बाद के वर्शनडिवाइस का वर्शन (bcdDevice फ़ील्ड).
DeviceFilter
प्रॉपर्टी
-
interfaceClass
नंबर ज़रूरी नहीं
यूएसबी इंटरफ़ेस क्लास, डिवाइस के किसी भी इंटरफ़ेस से मेल खाती है.
-
interfaceProtocol
नंबर ज़रूरी नहीं
यूएसबी इंटरफ़ेस प्रोटोकॉल, इसे सिर्फ़ तब जांचा जाता है, जब इंटरफ़ेस की सब-क्लास मेल खाती हो.
-
interfaceSubclass
नंबर ज़रूरी नहीं
यूएसबी इंटरफ़ेस सब-क्लास, सिर्फ़ इंटरफ़ेस क्लास के मेल खाने पर ही जांच की जाती है.
-
productId
नंबर ज़रूरी नहीं
डिवाइस का प्रॉडक्ट आईडी, सिर्फ़ वेंडर आईडी के मेल खाने पर ही जांचा जाता है.
-
vendorId
नंबर ज़रूरी नहीं
डिवाइस वेंडर आईडी.
DevicePromptOptions
प्रॉपर्टी
-
फ़िल्टर
DeviceFilter[] ज़रूरी नहीं है
उपयोगकर्ता को दिखाए गए डिवाइसों की सूची को फ़िल्टर करें. अगर एक से ज़्यादा फ़िल्टर दिए गए हैं, तो किसी भी फ़िल्टर से मेल खाने वाले डिवाइस दिखाए जाएंगे.
-
एक से ज़्यादा
बूलियन ज़रूरी नहीं
उपयोगकर्ता को एक से ज़्यादा डिवाइस चुनने की अनुमति दें.
Direction
दिशा-निर्देश, पाने वाले, अनुरोध टाइप, और ट्रांसफ़र टाइप सभी मैप यूएसबी से जुड़ी जानकारी में, उनके नाम के लिए दिए जाते हैं.
Enum
EndpointDescriptor
प्रॉपर्टी
-
पता
नंबर
एंडपॉइंट का पता.
-
direction
ट्रांसफ़र की दिशा.
-
extra_data
ArrayBuffer
इस एंडपॉइंट से जुड़ा अतिरिक्त डिस्क्रिप्टर डेटा.
-
maximumPacketSize
नंबर
पैकेट का ज़्यादा से ज़्यादा साइज़.
-
pollingInterval
नंबर ज़रूरी नहीं
पोलिंग इंटरवल (सिर्फ़ इंटरप्ट और आइसोक्रोनस).
-
सिंक करना
SynchronizationType ज़रूरी नहीं
डेटा ट्रांसफ़र करने के लिए, सिंक करने का मोड (सिर्फ़ आइसोक्रोन)
-
टाइप
ट्रांसफ़र का टाइप.
-
इस्तेमाल
UsageType ज़रूरी नहीं
एंडपॉइंट के इस्तेमाल से जुड़ा संकेत.
EnumerateDevicesAndRequestAccessOptions
प्रॉपर्टी
-
interfaceId
नंबर ज़रूरी नहीं
वह इंटरफ़ेस आईडी जिसके ऐक्सेस का अनुरोध करना है. यह सुविधा सिर्फ़ Chrome OS पर उपलब्ध है. दूसरे प्लैटफ़ॉर्म पर इसका कोई असर नहीं पड़ता.
-
productId
नंबर
प्रॉडक्ट आईडी.
-
vendorId
नंबर
डिवाइस का वेंडर आईडी.
EnumerateDevicesOptions
प्रॉपर्टी
-
फ़िल्टर
DeviceFilter[] ज़रूरी नहीं है
किसी भी फ़िल्टर से मिलता-जुलता डिवाइस दिखाया जाएगा. फ़िल्टर की एक खाली सूची से, वे सभी डिवाइस दिखेंगे जिनके लिए ऐप्लिकेशन को अनुमति है.
-
productId
नंबर ज़रूरी नहीं
अब सेवा में नहीं हैDeviceFilter.productId
सेटिंग के बराबर. -
vendorId
नंबर ज़रूरी नहीं
अब सेवा में नहीं हैDeviceFilter.vendorId
सेटिंग के बराबर.
GenericTransferInfo
प्रॉपर्टी
-
डेटा
arrayBuffer ज़रूरी नहीं
ट्रांसमिट किया जाने वाला डेटा (सिर्फ़ आउटपुट ट्रांसफ़र के लिए ज़रूरी है).
-
direction
ट्रांसफ़र करने की दिशा (
"in"
या"out"
). -
एंडपॉइंट
नंबर
टारगेट एंडपॉइंट का पता. इस एंडपॉइंट वाले इंटरफ़ेस पर दावा करना ज़रूरी है.
-
लंबाई
नंबर ज़रूरी नहीं
ज़्यादा से ज़्यादा कितने बाइट डेटा हासिल करना है (सिर्फ़ इनपुट ट्रांसफ़र के लिए ज़रूरी है).
-
टाइम आउट
नंबर ज़रूरी नहीं
Chrome 43+अनुरोध का समय खत्म (मिलीसेकंड में). डिफ़ॉल्ट वैल्यू
0
बताती है कि कोई टाइम आउट नहीं हुआ है.
InterfaceDescriptor
प्रॉपर्टी
-
alternateSetting
नंबर
इंटरफ़ेस का वैकल्पिक सेटिंग नंबर (डिफ़ॉल्ट रूप से
0
पर सेट होता है) -
ब्यौरा
स्ट्रिंग ज़रूरी नहीं
इंटरफ़ेस की जानकारी.
-
एंडपॉइंट
उपलब्ध एंडपॉइंट.
-
extra_data
ArrayBuffer
इस इंटरफ़ेस से जुड़ा अतिरिक्त डिस्क्रिप्टर डेटा.
-
interfaceClass
नंबर
यूएसबी इंटरफ़ेस क्लास.
-
interfaceNumber
नंबर
इंटरफ़ेस नंबर.
-
interfaceProtocol
नंबर
यूएसबी इंटरफ़ेस प्रोटोकॉल.
-
interfaceSubclass
नंबर
यूएसबी इंटरफ़ेस सब-क्लास.
IsochronousTransferInfo
प्रॉपर्टी
-
packetLength
नंबर
इस ट्रांसफ़र में पैकेट की लंबाई.
-
पैकेट
नंबर
इस ट्रांसफ़र में पैकेट की कुल संख्या.
-
transferInfo
पैरामीटर ट्रांसफ़र करें. इस पैरामीटर ब्लॉक में बताए गए ट्रांसफ़र की लंबाई या डेटा बफ़र को
packetLength
सीमाओं में बांटा जाता है, ताकि ट्रांसफ़र के अलग-अलग पैकेट बनाए जा सकें.
Recipient
Enum
"endpoint"
RequestType
Enum
SynchronizationType
रुकावट और समस्थानिक मोड के लिए, SyncType और UsageType उनके हम नामों को USB विशिष्टताओं में मैप करते हैं.
Enum
TransferResultInfo
प्रॉपर्टी
-
डेटा
arrayBuffer ज़रूरी नहीं
इनपुट ट्रांसफ़र से मिला डेटा. आउटपुट ट्रांसफ़र के लिए
undefined
. -
resultCode
नंबर ज़रूरी नहीं
0
की वैल्यू बताती है कि ट्रांसफ़र हो गया. अन्य वैल्यू से पता चलता है कि डेटा एक्सपोर्ट नहीं हो सका.
TransferType
Enum
UsageType
Enum
तरीके
bulkTransfer()
chrome.usb.bulkTransfer(
handle: ConnectionHandle,
transferInfo: GenericTransferInfo,
callback?: function,
)
बताए गए डिवाइस पर बल्क ट्रांसफ़र करता है.
पैरामीटर
-
हैंडल
डिवाइस से कनेक्ट होना.
-
transferInfo
ट्रांसफ़र पैरामीटर.
-
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
callback
पैरामीटर ऐसा दिखता है:(info: TransferResultInfo) => void
-
जानकारी
-
रिटर्न
-
Promise<TransferResultInfo>
Chrome 116 और इसके बाद के वर्शनप्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और उसके बाद के वर्शन पर काम करता है. अन्य प्लैटफ़ॉर्म के लिए कॉलबैक का इस्तेमाल करना ज़रूरी है.
claimInterface()
chrome.usb.claimInterface(
handle: ConnectionHandle,
interfaceNumber: number,
callback?: function,
)
यूएसबी डिवाइस पर किसी इंटरफ़ेस पर दावा करता है. डेटा को किसी इंटरफ़ेस या उससे जुड़े एंडपॉइंट पर ट्रांसफ़र करने से पहले, इंटरफ़ेस पर दावा किया जाना चाहिए. किसी भी समय, सिर्फ़ एक कनेक्शन हैंडल, इंटरफ़ेस पर दावा कर सकता है. अगर इंटरफ़ेस पर पहले से ही दावा किया गया है, तो यह कॉल रद्द हो जाएगा.
जब इंटरफ़ेस की ज़रूरत न हो, तब releaseInterface
को कॉल किया जाना चाहिए.
पैरामीटर
-
हैंडल
डिवाइस से कनेक्ट होना.
-
interfaceNumber
नंबर
जिस इंटरफ़ेस पर दावा किया जाना है.
-
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
callback
पैरामीटर ऐसा दिखता है:() => void
रिटर्न
-
Promise<void>
Chrome 116 और इसके बाद के वर्शनप्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और उसके बाद के वर्शन पर काम करता है. अन्य प्लैटफ़ॉर्म के लिए कॉलबैक का इस्तेमाल करना ज़रूरी है.
closeDevice()
chrome.usb.closeDevice(
handle: ConnectionHandle,
callback?: function,
)
कनेक्शन हैंडल को बंद करता है. हैंडल के बंद होने के बाद, उस पर कार्रवाई करना सुरक्षित है. हालांकि, इससे कोई कार्रवाई नहीं की जाती.
पैरामीटर
-
हैंडल
बंद करने के लिए
ConnectionHandle
. -
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
callback
पैरामीटर ऐसा दिखता है:() => void
रिटर्न
-
Promise<void>
Chrome 116 और इसके बाद के वर्शनप्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और उसके बाद के वर्शन पर काम करता है. अन्य प्लैटफ़ॉर्म के लिए कॉलबैक का इस्तेमाल करना ज़रूरी है.
controlTransfer()
chrome.usb.controlTransfer(
handle: ConnectionHandle,
transferInfo: ControlTransferInfo,
callback?: function,
)
बताए गए डिवाइस पर कंट्रोल ट्रांसफ़र करता है.
कंट्रोल ट्रांसफ़र का मतलब डिवाइस, इंटरफ़ेस या एंडपॉइंट से है. किसी इंटरफ़ेस या एंडपॉइंट पर ट्रांसफ़र करने के लिए, इंटरफ़ेस पर दावा करना ज़रूरी होता है.
पैरामीटर
-
हैंडल
डिवाइस से कनेक्ट होना.
-
transferInfo
-
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
callback
पैरामीटर ऐसा दिखता है:(info: TransferResultInfo) => void
-
जानकारी
-
रिटर्न
-
Promise<TransferResultInfo>
Chrome 116 और इसके बाद के वर्शनप्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और उसके बाद के वर्शन पर काम करता है. अन्य प्लैटफ़ॉर्म के लिए कॉलबैक का इस्तेमाल करना ज़रूरी है.
findDevices()
chrome.usb.findDevices(
options: EnumerateDevicesAndRequestAccessOptions,
callback?: function,
)
यह वेंडर, प्रॉडक्ट, और (वैकल्पिक तौर पर) इंटरफ़ेस आईडी के ज़रिए बताए गए यूएसबी डिवाइसों को ढूंढता है. साथ ही, अगर अनुमतियां देने से उन्हें इस्तेमाल करने की अनुमति मिलती है, तो उन्हें ढूंढता है.
अगर ऐक्सेस का अनुरोध अस्वीकार कर दिया जाता है या डिवाइस नहीं खोला जा सकता, तो कनेक्शन हैंडल नहीं बनाया जाएगा और न ही उसे लौटाया जाएगा.
इस तरीके से कॉल करने का विकल्प, हर डिवाइस के लिए getDevices
के बाद openDevice
को कॉल करने के बराबर है.
पैरामीटर
-
टारगेट किए गए डिवाइसों पर खोजी जाने वाली प्रॉपर्टी.
-
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
callback
पैरामीटर ऐसा दिखता है:(handles: ConnectionHandle[]) => void
-
हैंडल
-
रिटर्न
-
Promise<ConnectionHandle[]>
Chrome 116 और इसके बाद के वर्शनप्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और उसके बाद के वर्शन पर काम करता है. अन्य प्लैटफ़ॉर्म के लिए कॉलबैक का इस्तेमाल करना ज़रूरी है.
getConfiguration()
chrome.usb.getConfiguration(
handle: ConnectionHandle,
callback?: function,
)
चुने गए मौजूदा कॉन्फ़िगरेशन के लिए, कॉन्फ़िगरेशन डिस्क्रिप्टर देता है.
पैरामीटर
-
हैंडल
डिवाइस से कनेक्ट होना.
-
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
callback
पैरामीटर ऐसा दिखता है:(config: ConfigDescriptor) => void
-
कॉन्फ़िगरेशन
-
रिटर्न
-
Promise<ConfigDescriptor>
Chrome 116 और इसके बाद के वर्शनप्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और उसके बाद के वर्शन पर काम करता है. अन्य प्लैटफ़ॉर्म के लिए कॉलबैक का इस्तेमाल करना ज़रूरी है.
getConfigurations()
chrome.usb.getConfigurations(
device: Device,
callback?: function,
)
डिवाइस कॉन्फ़िगरेशन डिस्क्रिप्टर का पूरा सेट दिखाता है.
पैरामीटर
-
डिवाइस
डिस्क्रिप्टर को फ़ेच करने के लिए
Device
. -
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
callback
पैरामीटर ऐसा दिखता है:(configs: ConfigDescriptor[]) => void
-
कॉन्फ़िगरेशन
-
रिटर्न
-
Promise<ConfigDescriptor[]>
Chrome 116 और इसके बाद के वर्शनप्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और उसके बाद के वर्शन पर काम करता है. अन्य प्लैटफ़ॉर्म के लिए कॉलबैक का इस्तेमाल करना ज़रूरी है.
getDevices()
chrome.usb.getDevices(
options: EnumerateDevicesOptions,
callback?: function,
)
कनेक्ट किए गए यूएसबी डिवाइसों की गिनती करता है.
पैरामीटर
रिटर्न
-
वादा<डिवाइस[]>
Chrome 116 और इसके बाद के वर्शनप्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और उसके बाद के वर्शन पर काम करता है. अन्य प्लैटफ़ॉर्म के लिए कॉलबैक का इस्तेमाल करना ज़रूरी है.
getUserSelectedDevices()
chrome.usb.getUserSelectedDevices(
options: DevicePromptOptions,
callback?: function,
)
यह उपयोगकर्ता को डिवाइस पिकर दिखाता है और चुने गए Device
नतीजे दिखाता है. अगर उपयोगकर्ता, पिकर डिवाइस रद्द कर देता है, तो वे खाली रहेंगे. डायलॉग बॉक्स दिखने के लिए, उपयोगकर्ता के जेस्चर की ज़रूरत होती है. उपयोगकर्ता के जेस्चर के बिना, कॉलबैक इस तरह चलेगा जैसे उपयोगकर्ता रद्द कर दिया गया हो.
पैरामीटर
रिटर्न
-
वादा<डिवाइस[]>
Chrome 116 और इसके बाद के वर्शनप्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और उसके बाद के वर्शन पर काम करता है. अन्य प्लैटफ़ॉर्म के लिए कॉलबैक का इस्तेमाल करना ज़रूरी है.
interruptTransfer()
chrome.usb.interruptTransfer(
handle: ConnectionHandle,
transferInfo: GenericTransferInfo,
callback?: function,
)
इससे, बताए गए डिवाइस पर डेटा ट्रांसफ़र में रुकावट आती है.
पैरामीटर
-
हैंडल
डिवाइस से कनेक्ट होना.
-
transferInfo
ट्रांसफ़र पैरामीटर.
-
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
callback
पैरामीटर ऐसा दिखता है:(info: TransferResultInfo) => void
-
जानकारी
-
रिटर्न
-
Promise<TransferResultInfo>
Chrome 116 और इसके बाद के वर्शनप्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और उसके बाद के वर्शन पर काम करता है. अन्य प्लैटफ़ॉर्म के लिए कॉलबैक का इस्तेमाल करना ज़रूरी है.
isochronousTransfer()
chrome.usb.isochronousTransfer(
handle: ConnectionHandle,
transferInfo: IsochronousTransferInfo,
callback?: function,
)
किसी डिवाइस पर आइसोक्रोनस ट्रांसफ़र करता है.
पैरामीटर
-
हैंडल
डिवाइस से कनेक्ट होना.
-
transferInfo
-
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
callback
पैरामीटर ऐसा दिखता है:(info: TransferResultInfo) => void
-
जानकारी
-
रिटर्न
-
Promise<TransferResultInfo>
Chrome 116 और इसके बाद के वर्शनप्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और उसके बाद के वर्शन पर काम करता है. अन्य प्लैटफ़ॉर्म के लिए कॉलबैक का इस्तेमाल करना ज़रूरी है.
listInterfaces()
chrome.usb.listInterfaces(
handle: ConnectionHandle,
callback?: function,
)
यह यूएसबी डिवाइस के सभी इंटरफ़ेस की सूची बनाता है.
पैरामीटर
-
हैंडल
डिवाइस से कनेक्ट होना.
-
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
callback
पैरामीटर ऐसा दिखता है:(descriptors: InterfaceDescriptor[]) => void
-
descriptors
-
रिटर्न
-
Promise<InterfaceDescriptor[]>
Chrome 116 और इसके बाद के वर्शनप्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और उसके बाद के वर्शन पर काम करता है. अन्य प्लैटफ़ॉर्म के लिए कॉलबैक का इस्तेमाल करना ज़रूरी है.
openDevice()
chrome.usb.openDevice(
device: Device,
callback?: function,
)
getDevices
के लौटाए गए यूएसबी डिवाइस को खोलता है.
पैरामीटर
-
डिवाइस
खोलने के लिए
Device
. -
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
callback
पैरामीटर ऐसा दिखता है:(handle: ConnectionHandle) => void
-
हैंडल
-
रिटर्न
-
Promise<ConnectionHandle>
Chrome 116 और इसके बाद के वर्शनप्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और उसके बाद के वर्शन पर काम करता है. अन्य प्लैटफ़ॉर्म के लिए कॉलबैक का इस्तेमाल करना ज़रूरी है.
releaseInterface()
chrome.usb.releaseInterface(
handle: ConnectionHandle,
interfaceNumber: number,
callback?: function,
)
ऐसा इंटरफ़ेस रिलीज़ करता है जिस पर दावा किया गया है.
पैरामीटर
-
हैंडल
डिवाइस से कनेक्ट होना.
-
interfaceNumber
नंबर
रिलीज़ किया जाने वाला इंटरफ़ेस.
-
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
callback
पैरामीटर ऐसा दिखता है:() => void
रिटर्न
-
Promise<void>
Chrome 116 और इसके बाद के वर्शनप्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और उसके बाद के वर्शन पर काम करता है. अन्य प्लैटफ़ॉर्म के लिए कॉलबैक का इस्तेमाल करना ज़रूरी है.
requestAccess()
chrome.usb.requestAccess(
device: Device,
interfaceId: number,
callback?: function,
)
यह फ़ंक्शन खास तौर पर Chrome OS पर काम करता था. इसलिए, इसे अन्य प्लैटफ़ॉर्म पर कॉल नहीं किया जा सकेगा. यह कार्रवाई अब साफ़ तौर पर openDevice
के हिस्से के तौर पर की गई है. यह फ़ंक्शन सभी प्लैटफ़ॉर्म पर true
दिखाएगा.
अगर डिवाइस पर दिए गए इंटरफ़ेस पर दावा नहीं किया जाता है, तो अनुमति ब्रोकर से उस डिवाइस पर ऐक्सेस का अनुरोध करता है जिस पर Chrome OS से दावा किया गया है.
पैरामीटर
-
डिवाइस
ऐक्सेस का अनुरोध करने के लिए
Device
. -
interfaceId
नंबर
जिस इंटरफ़ेस के लिए अनुरोध किया गया.
-
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
callback
पैरामीटर ऐसा दिखता है:(success: boolean) => void
-
हो गया
boolean
-
रिटर्न
-
Promise<boolean>
Chrome 116 और इसके बाद के वर्शनप्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और उसके बाद के वर्शन पर काम करता है. अन्य प्लैटफ़ॉर्म के लिए कॉलबैक का इस्तेमाल करना ज़रूरी है.
resetDevice()
chrome.usb.resetDevice(
handle: ConnectionHandle,
callback?: function,
)
USB डिवाइस को रीसेट करने की कोशिश करता है. अगर रीसेट विफल हो जाता है, तो दिया गया कनेक्शन हैंडल बंद हो जाएगा और USB डिवाइस डिसकनेक्ट किया हुआ और फिर से कनेक्ट किया गया दिखेगा. ऐसे में, डिवाइस को हासिल करने के लिए getDevices
या findDevices
को फिर से कॉल करना होगा.
पैरामीटर
-
हैंडल
रीसेट करने के लिए कनेक्शन हैंडल.
-
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
callback
पैरामीटर ऐसा दिखता है:(success: boolean) => void
-
हो गया
boolean
-
रिटर्न
-
Promise<boolean>
Chrome 116 और इसके बाद के वर्शनप्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और उसके बाद के वर्शन पर काम करता है. अन्य प्लैटफ़ॉर्म के लिए कॉलबैक का इस्तेमाल करना ज़रूरी है.
setConfiguration()
chrome.usb.setConfiguration(
handle: ConnectionHandle,
configurationValue: number,
callback?: function,
)
कोई डिवाइस कॉन्फ़िगरेशन चुनें.
यह फ़ंक्शन डिवाइस के उपलब्ध कॉन्फ़िगरेशन में से किसी एक को चुनकर डिवाइस को असरदार ढंग से रीसेट करता है. सिर्फ़ 0
से बड़े कॉन्फ़िगरेशन वैल्यू मान्य हैं. हालांकि, कुछ गड़बड़ी वाले डिवाइसों का कॉन्फ़िगरेशन 0
काम कर रहा है. इसलिए, इस वैल्यू की अनुमति है.
पैरामीटर
-
हैंडल
डिवाइस से कनेक्ट होना.
-
configurationValue
नंबर
-
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
callback
पैरामीटर ऐसा दिखता है:() => void
रिटर्न
-
Promise<void>
Chrome 116 और इसके बाद के वर्शनप्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और उसके बाद के वर्शन पर काम करता है. अन्य प्लैटफ़ॉर्म के लिए कॉलबैक का इस्तेमाल करना ज़रूरी है.
setInterfaceAlternateSetting()
chrome.usb.setInterfaceAlternateSetting(
handle: ConnectionHandle,
interfaceNumber: number,
alternateSetting: number,
callback?: function,
)
ऐसे इंटरफ़ेस पर कोई दूसरी सेटिंग चुनता है जिस पर पहले ही दावा किया जा चुका है.
पैरामीटर
-
हैंडल
उस डिवाइस से ओपन कनेक्शन जिस पर इस इंटरफ़ेस पर दावा किया गया है.
-
interfaceNumber
नंबर
कॉन्फ़िगर करने के लिए इंटरफ़ेस.
-
alternateSetting
नंबर
कॉन्फ़िगर करने की दूसरी सेटिंग.
-
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
callback
पैरामीटर ऐसा दिखता है:() => void
रिटर्न
-
Promise<void>
Chrome 116 और इसके बाद के वर्शनप्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और उसके बाद के वर्शन पर काम करता है. अन्य प्लैटफ़ॉर्म के लिए कॉलबैक का इस्तेमाल करना ज़रूरी है.
इवेंट
onDeviceAdded
chrome.usb.onDeviceAdded.addListener(
callback: function,
)
सिस्टम में किसी डिवाइस को जोड़े जाने पर इवेंट जनरेट होता है. इवेंट सिर्फ़ उन ऐप्लिकेशन और एक्सटेंशन पर ब्रॉडकास्ट किए जाते हैं जिन्हें डिवाइस को ऐक्सेस करने की अनुमति होती है. ऐसा हो सकता है कि ऐप्लिकेशन को इंस्टॉल करते समय, उपयोगकर्ता ने वैकल्पिक अनुमति (permissions.request
देखें) या getUserSelectedDevices
की मदद से स्वीकार किया हो.
onDeviceRemoved
chrome.usb.onDeviceRemoved.addListener(
callback: function,
)
इवेंट तब जनरेट होता है, जब किसी डिवाइस को सिस्टम से हटाया जाता है. onDeviceAdded
देखें कि कौनसे इवेंट डिलीवर किए गए हैं.