chrome.serial

ब्यौरा

सीरियल पोर्ट से कनेक्ट किए गए डिवाइस से डेटा पढ़ने और उसमें डेटा लिखने के लिए, chrome.serial API का इस्तेमाल करें.

अनुमतियां

serial

टाइप

ConnectionInfo

प्रॉपर्टी

  • बिटरेट

    number ज़रूरी नहीं

    ConnectionOptions.bitrate देखें. अगर किसी गैर-स्टैंडर्ड बिटरेट का इस्तेमाल किया जा रहा है या डिवाइस से क्वेरी करते समय कोई गड़बड़ी हुई है, तो हो सकता है कि इस फ़ील्ड को शामिल न किया गया हो या इसमें गलत जानकारी दी गई हो.

  • bufferSize

    संख्या

    ConnectionOptions.bufferSize देखें

  • connectionId

    संख्या

    सीरियल पोर्ट कनेक्शन का आईडी.

  • ctsFlowControl

    बूलियन ज़रूरी नहीं है

    ConnectionOptions.ctsFlowControl देखें. अगर डिवाइस से जुड़ी क्वेरी करते समय कोई गड़बड़ी हुई है, तो इस फ़ील्ड को छोड़ा जा सकता है.

  • dataBits

    DataBits ज़रूरी नहीं है

    ConnectionOptions.dataBits देखें. अगर डिवाइस से जुड़ी क्वेरी करते समय कोई गड़बड़ी हुई है, तो इस फ़ील्ड को छोड़ा जा सकता है.

  • नाम

    स्ट्रिंग

    ConnectionOptions.name देखें

  • parityBit

    ParityBit ज़रूरी नहीं है

    ConnectionOptions.parityBit देखें. अगर डिवाइस से जुड़ी क्वेरी करते समय कोई गड़बड़ी हुई है, तो इस फ़ील्ड को छोड़ा जा सकता है.

  • रोका गया

    बूलियन

    फ़्लैग से पता चलता है कि कनेक्शन को onReceive इवेंट ट्रिगर करने से ब्लॉक किया गया है या नहीं.

  • अनवरत

    बूलियन

    ConnectionOptions.persistent देखें

  • receiveTimeout

    संख्या

    ConnectionOptions.receiveTimeout देखें

  • sendTimeout

    संख्या

    ConnectionOptions.sendTimeout देखें

  • stopBits

    StopBits ज़रूरी नहीं है

    ConnectionOptions.stopBits देखें. अगर डिवाइस से जुड़ी क्वेरी करते समय कोई गड़बड़ी हुई है, तो इस फ़ील्ड को छोड़ा जा सकता है.

ConnectionOptions

प्रॉपर्टी

  • बिटरेट

    number ज़रूरी नहीं

    जिस कनेक्शन को खोलना है उसकी अनुरोध की गई बिटरेट. ज़्यादा से ज़्यादा हार्डवेयर के साथ काम करने के लिए, यह संख्या आम तौर पर उपलब्ध बिटरेट में से किसी एक से मेल खानी चाहिए. जैसे, 110, 300, 1200, 2400, 4800, 9600, 14400, 19200, 38400, 57600, 115200. हालांकि, इस बात की कोई गारंटी नहीं है कि सीरियल पोर्ट से कनेक्ट किया गया डिवाइस, अनुरोध की गई बिटरेट के साथ काम करेगा. भले ही, पोर्ट खुद उस बिटरेट के साथ काम करता हो. 9600 को डिफ़ॉल्ट रूप से पास कर दिया जाएगा.

  • bufferSize

    number ज़रूरी नहीं

    डेटा पाने के लिए इस्तेमाल किए जाने वाले बफ़र का साइज़. डिफ़ॉल्ट वैल्यू 4096 है.

  • ctsFlowControl

    बूलियन ज़रूरी नहीं है

    इस फ़्लैग से पता चलता है कि आरटीएस/सीटीएस हार्डवेयर फ़्लो कंट्रोल को चालू करना है या नहीं. डिफ़ॉल्ट रूप से, यह 'गलत' पर सेट होती है.

  • dataBits

    DataBits ज़रूरी नहीं है

    "eight" को डिफ़ॉल्ट रूप से पास कर दिया जाएगा.

  • नाम

    स्ट्रिंग ज़रूरी नहीं है

    कनेक्शन से जोड़ने के लिए, ऐप्लिकेशन से तय की गई स्ट्रिंग.

  • parityBit

    ParityBit ज़रूरी नहीं है

    "no" को डिफ़ॉल्ट रूप से पास कर दिया जाएगा.

  • अनवरत

    बूलियन ज़रूरी नहीं है

    यह फ़्लैग बताता है कि ऐप्लिकेशन निलंबित होने पर, कनेक्शन को खुला रखना चाहिए या नहीं. ज़्यादा जानकारी के लिए, ऐप्लिकेशन लाइफ़साइकल मैनेज करना लेख पढ़ें. इसकी डिफ़ॉल्ट वैल्यू "गलत" होती है. ऐप्लिकेशन लोड होने के बाद, पहले से persistent=true के साथ खोले गए किसी भी सीरियल कनेक्शन को getConnections से फ़ेच किया जा सकता है.

  • receiveTimeout

    number ज़रूरी नहीं

    "टाइम आउट" गड़बड़ी के साथ onReceiveError इवेंट को ट्रिगर करने से पहले, नए डेटा के लिए इंतज़ार करने का ज़्यादा से ज़्यादा समय (मिलीसेकंड में). अगर यह शून्य है, तो कनेक्शन के लिए टाइम आउट की गड़बड़ियां नहीं दिखेंगी. डिफ़ॉल्ट रूप से, यह वैल्यू 0 पर सेट होती है.

  • sendTimeout

    number ज़रूरी नहीं

    "समयसीमा" गड़बड़ी के साथ कॉलबैक को कॉल करने से पहले, send ऑपरेशन पूरा होने का इंतज़ार करने के लिए ज़्यादा से ज़्यादा समय (मिलीसेकंड में). अगर यह शून्य है, तो भेजने में लगने वाले समय की सीमा खत्म होने की गड़बड़ियां ट्रिगर नहीं होंगी. डिफ़ॉल्ट रूप से, यह वैल्यू 0 पर सेट होती है.

  • stopBits

    StopBits ज़रूरी नहीं है

    "one" को डिफ़ॉल्ट रूप से पास कर दिया जाएगा.

DataBits

Enum

"seven"

"eight"

DeviceControlSignals

प्रॉपर्टी

  • cts

    बूलियन

    सीटीएस (सेंड करने की अनुमति).

  • dcd

    बूलियन

    डीसीडी (डेटा कैरियर डिटेक्ट) या आरएलएसडी (रिसीव लाइन सिग्नल/ डिटेक्ट).

  • dsr

    बूलियन

    डीएसआर (डेटा सेट तैयार है).

  • ri

    बूलियन

    आरआई (रिंग इंडिकेटर).

DeviceInfo

प्रॉपर्टी

  • displayName

    स्ट्रिंग ज़रूरी नहीं है

    होस्ट ड्राइवर से क्वेरी की जा सकती है, तो डिवाइस के लिए ऐसा डिसप्ले नेम जो कोई भी व्यक्ति आसानी से पढ़ सके.

  • पाथ

    स्ट्रिंग

    डिवाइस का सिस्टम पाथ. इस डिवाइस से कनेक्ट करने के लिए, इसे chrome.serial.connect के लिए path आर्ग्युमेंट के तौर पर पास किया जाना चाहिए.

  • productId

    number ज़रूरी नहीं

    यूएसबी प्रॉडक्ट आईडी, अगर डिवाइस के लिए कोई आईडी तय किया जा सकता है.

  • vendorId

    number ज़रूरी नहीं

    अगर डिवाइस के लिए कोई पीसीआई या यूएसबी वेंडर आईडी तय किया जा सकता है, तो वह आईडी.

HostControlSignals

प्रॉपर्टी

  • dtr

    बूलियन ज़रूरी नहीं है

    डीटीआर (डेटा टर्मिनल रेडी).

  • rts

    बूलियन ज़रूरी नहीं है

    आरटीएस (रिक्वेस्ट टू सेंड).

ParityBit

Enum

"no"

"odd"

"even"

ReceiveError

Enum

"डिसकनेक्ट हो गया"
कनेक्शन डिसकनेक्ट हो गया.

"timeout"
receiveTimeout मिलीसेकंड से कोई डेटा नहीं मिला है.

"device_lost"
हो सकता है कि डिवाइस, होस्ट से डिसकनेक्ट हो गया हो.

"break"
डिवाइस को ब्रेक की स्थिति का पता चला.

"frame_error"
डिवाइस को फ़्रेमिंग से जुड़ी गड़बड़ी का पता चला.

"ओवररन"
वर्ण-बफ़र ओवररन हुआ है. अगला वर्ण नहीं सुनाई देता.

"buffer_overflow"
इनपुट बफ़र ओवरफ़्लो हुआ है. इनपुट बफ़र में जगह नहीं है या फ़ाइल के आखिर में मौजूद वर्ण (EOF) के बाद कोई वर्ण मिला.

"parity_error"
डिवाइस में पैरिटी गड़बड़ी का पता चला.

"system_error"
सिस्टम में कोई गड़बड़ी हुई और हो सकता है कि कनेक्शन वापस न आ पाए.

ReceiveErrorInfo

प्रॉपर्टी

  • connectionId

    संख्या

    कनेक्शन आइडेंटिफ़ायर.

  • गड़बड़ी

    गड़बड़ी का कोड, जो बताता है कि क्या गड़बड़ी हुई है.

ReceiveInfo

प्रॉपर्टी

  • connectionId

    संख्या

    कनेक्शन आइडेंटिफ़ायर.

  • डेटा

    ArrayBuffer

    मिला डेटा.

SendError

Enum

"डिसकनेक्ट हो गया"
कनेक्शन डिसकनेक्ट हो गया.

"मंज़ूरी बाकी है"
पहले से ही कोई ईमेल भेजने का अनुरोध बाकी था.

"timeout"
मैसेज भेजने में टाइम आउट हुआ.

"system_error"
सिस्टम में कोई गड़बड़ी हुई और हो सकता है कि कनेक्शन वापस न आ पाए.

SendInfo

प्रॉपर्टी

  • bytesSent

    संख्या

    भेजे गए बाइट की संख्या.

  • गड़बड़ी

    SendError ज़रूरी नहीं है

    गड़बड़ी होने पर गड़बड़ी कोड.

StopBits

Enum

"one"

"two"

तरीके

clearBreak()

Promise Chrome 45 और उसके बाद के वर्शन
chrome.serial.clearBreak(
  connectionId: number,
  callback?: function,
)

किसी कनेक्शन पर वर्ण ट्रांसमिशन को फिर से चालू करें और ट्रांसमिशन लाइन को नॉन-ब्रेक स्टेटस में रखें.

पैरामीटर

  • connectionId

    संख्या

    कनेक्शन का आईडी.

  • कॉलबैक

    फ़ंक्शन ज़रूरी नहीं

    callback पैरामीटर इस तरह दिखता है:

    (result: boolean) => void

    • नतीजा

      बूलियन

रिटर्न

  • Promise<boolean>

    Chrome 117 और उसके बाद के वर्शन

    प्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और उसके बाद के वर्शन के साथ काम करते हैं. अन्य प्लैटफ़ॉर्म के लिए, कॉलबैक का इस्तेमाल करना ज़रूरी है.

connect()

वादा करना
chrome.serial.connect(
  path: string,
  options?: ConnectionOptions,
  callback?: function,
)

किसी दिए गए सीरियल पोर्ट से कनेक्ट करता है.

पैरामीटर

  • पाथ

    स्ट्रिंग

    खोले जाने वाले सीरियल पोर्ट का सिस्टम पाथ.

  • विकल्प

    ConnectionOptions ज़रूरी नहीं

    पोर्ट कॉन्फ़िगरेशन के विकल्प.

  • कॉलबैक

    फ़ंक्शन ज़रूरी नहीं

    callback पैरामीटर इस तरह दिखता है:

    (connectionInfo: ConnectionInfo) => void

रिटर्न

  • Chrome 117 और उसके बाद के वर्शन

    प्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और उसके बाद के वर्शन के साथ काम करते हैं. अन्य प्लैटफ़ॉर्म के लिए, कॉलबैक का इस्तेमाल करना ज़रूरी है.

disconnect()

वादा करना
chrome.serial.disconnect(
  connectionId: number,
  callback?: function,
)

सीरियल पोर्ट से डिसकनेक्ट करता है.

पैरामीटर

  • connectionId

    संख्या

    खोले गए कनेक्शन का आईडी.

  • कॉलबैक

    फ़ंक्शन ज़रूरी नहीं

    callback पैरामीटर इस तरह दिखता है:

    (result: boolean) => void

    • नतीजा

      बूलियन

रिटर्न

  • Promise<boolean>

    Chrome 117 और उसके बाद के वर्शन

    प्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और उसके बाद के वर्शन के साथ काम करते हैं. अन्य प्लैटफ़ॉर्म के लिए, कॉलबैक का इस्तेमाल करना ज़रूरी है.

flush()

वादा करना
chrome.serial.flush(
  connectionId: number,
  callback?: function,
)

दिए गए कनेक्शन के इनपुट और आउटपुट बफ़र में मौजूद सभी बाइट को फ़्लश करता है.

पैरामीटर

  • connectionId

    संख्या

  • कॉलबैक

    फ़ंक्शन ज़रूरी नहीं

    callback पैरामीटर इस तरह दिखता है:

    (result: boolean) => void

    • नतीजा

      बूलियन

रिटर्न

  • Promise<boolean>

    Chrome 117 और उसके बाद के वर्शन

    प्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और उसके बाद के वर्शन के साथ काम करते हैं. अन्य प्लैटफ़ॉर्म के लिए, कॉलबैक का इस्तेमाल करना ज़रूरी है.

getConnections()

वादा करना
chrome.serial.getConnections(
  callback?: function,
)

ऐप्लिकेशन के मालिकाना हक वाले, फ़िलहाल खुले हुए सीरियल पोर्ट कनेक्शन की सूची दिखाता है.

पैरामीटर

  • कॉलबैक

    फ़ंक्शन ज़रूरी नहीं

    callback पैरामीटर इस तरह दिखता है:

    (connectionInfos: ConnectionInfo[]) => void

रिटर्न

  • Promise<ConnectionInfo[]>

    Chrome 117 और उसके बाद के वर्शन

    प्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और उसके बाद के वर्शन के साथ काम करते हैं. अन्य प्लैटफ़ॉर्म के लिए, कॉलबैक का इस्तेमाल करना ज़रूरी है.

getControlSignals()

वादा करना
chrome.serial.getControlSignals(
  connectionId: number,
  callback?: function,
)

किसी कनेक्शन पर कंट्रोल सिग्नल की स्थिति दिखाता है.

पैरामीटर

  • connectionId

    संख्या

    कनेक्शन का आईडी.

  • कॉलबैक

    फ़ंक्शन ज़रूरी नहीं

    callback पैरामीटर इस तरह दिखता है:

    (signals: DeviceControlSignals) => void

रिटर्न

  • Chrome 117 और उसके बाद के वर्शन

    प्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और उसके बाद के वर्शन के साथ काम करते हैं. अन्य प्लैटफ़ॉर्म के लिए, कॉलबैक का इस्तेमाल करना ज़रूरी है.

getDevices()

वादा करना
chrome.serial.getDevices(
  callback?: function,
)

सिस्टम पर उपलब्ध सीरियल डिवाइसों के बारे में जानकारी दिखाता है. इस तरीके को हर बार कॉल करने पर, सूची फिर से जनरेट हो जाती है.

पैरामीटर

  • कॉलबैक

    फ़ंक्शन ज़रूरी नहीं

    callback पैरामीटर इस तरह दिखता है:

    (ports: DeviceInfo[]) => void

रिटर्न

  • Promise<DeviceInfo[]>

    Chrome 117 और उसके बाद के वर्शन

    प्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और उसके बाद के वर्शन के साथ काम करते हैं. अन्य प्लैटफ़ॉर्म के लिए, कॉलबैक का इस्तेमाल करना ज़रूरी है.

getInfo()

वादा करना
chrome.serial.getInfo(
  connectionId: number,
  callback?: function,
)

किसी कनेक्शन की स्थिति दिखाता है.

पैरामीटर

  • connectionId

    संख्या

    खोले गए कनेक्शन का आईडी.

  • कॉलबैक

    फ़ंक्शन ज़रूरी नहीं

    callback पैरामीटर इस तरह दिखता है:

    (connectionInfo: ConnectionInfo) => void

रिटर्न

  • Chrome 117 और उसके बाद के वर्शन

    प्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और उसके बाद के वर्शन के साथ काम करते हैं. अन्य प्लैटफ़ॉर्म के लिए, कॉलबैक का इस्तेमाल करना ज़रूरी है.

send()

वादा करना
chrome.serial.send(
  connectionId: number,
  data: ArrayBuffer,
  callback?: function,
)

दिए गए कनेक्शन में डेटा लिखता है.

पैरामीटर

  • connectionId

    संख्या

    कनेक्शन का आईडी.

  • डेटा

    ArrayBuffer

    भेजा जाने वाला डेटा.

  • कॉलबैक

    फ़ंक्शन ज़रूरी नहीं

    callback पैरामीटर इस तरह दिखता है:

    (sendInfo: SendInfo) => void

रिटर्न

  • Promise<SendInfo>

    Chrome 117 और उसके बाद के वर्शन

    प्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और उसके बाद के वर्शन के साथ काम करते हैं. अन्य प्लैटफ़ॉर्म के लिए, कॉलबैक का इस्तेमाल करना ज़रूरी है.

setBreak()

Promise Chrome 45 और उसके बाद के वर्शन
chrome.serial.setBreak(
  connectionId: number,
  callback?: function,
)

यह किसी कनेक्शन पर वर्ण ट्रांसमिशन को निलंबित करता है और ट्रांसमिशन लाइन को ब्रेक स्टेटस में रखता है. ऐसा तब तक होता है, जब तक clearBreak को कॉल नहीं किया जाता.

पैरामीटर

  • connectionId

    संख्या

    कनेक्शन का आईडी.

  • कॉलबैक

    फ़ंक्शन ज़रूरी नहीं

    callback पैरामीटर इस तरह दिखता है:

    (result: boolean) => void

    • नतीजा

      बूलियन

रिटर्न

  • Promise<boolean>

    Chrome 117 और उसके बाद के वर्शन

    प्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और उसके बाद के वर्शन के साथ काम करते हैं. अन्य प्लैटफ़ॉर्म के लिए, कॉलबैक का इस्तेमाल करना ज़रूरी है.

setControlSignals()

वादा करना
chrome.serial.setControlSignals(
  connectionId: number,
  signals: HostControlSignals,
  callback?: function,
)

किसी कनेक्शन पर कंट्रोल सिग्नल की स्थिति सेट करता है.

पैरामीटर

  • connectionId

    संख्या

    कनेक्शन का आईडी.

  • सिग्नल

    डिवाइस पर भेजे जाने वाले सिग्नल में बदलावों का सेट.

  • कॉलबैक

    फ़ंक्शन ज़रूरी नहीं

    callback पैरामीटर इस तरह दिखता है:

    (result: boolean) => void

    • नतीजा

      बूलियन

रिटर्न

  • Promise<boolean>

    Chrome 117 और उसके बाद के वर्शन

    प्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और उसके बाद के वर्शन के साथ काम करते हैं. अन्य प्लैटफ़ॉर्म के लिए, कॉलबैक का इस्तेमाल करना ज़रूरी है.

setPaused()

वादा करना
chrome.serial.setPaused(
  connectionId: number,
  paused: boolean,
  callback?: function,
)

किसी चालू कनेक्शन को रोकता है या फिर से चालू करता है.

पैरामीटर

  • connectionId

    संख्या

    खोले गए कनेक्शन का आईडी.

  • रोका गया

    बूलियन

    यह फ़्लैग बताता है कि वीडियो को रोकना है या फिर से चलाना है.

  • कॉलबैक

    फ़ंक्शन ज़रूरी नहीं

    callback पैरामीटर इस तरह दिखता है:

    () => void

रिटर्न

  • Promise<void>

    Chrome 117 और उसके बाद के वर्शन

    प्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और उसके बाद के वर्शन के साथ काम करते हैं. अन्य प्लैटफ़ॉर्म के लिए, कॉलबैक का इस्तेमाल करना ज़रूरी है.

update()

वादा करना
chrome.serial.update(
  connectionId: number,
  options: ConnectionOptions,
  callback?: function,
)

किसी ओपन सीरियल पोर्ट कनेक्शन पर, विकल्प की सेटिंग अपडेट करें.

पैरामीटर

  • connectionId

    संख्या

    खोले गए कनेक्शन का आईडी.

  • विकल्प

    पोर्ट कॉन्फ़िगरेशन के विकल्प.

  • कॉलबैक

    फ़ंक्शन ज़रूरी नहीं

    callback पैरामीटर इस तरह दिखता है:

    (result: boolean) => void

    • नतीजा

      बूलियन

रिटर्न

  • Promise<boolean>

    Chrome 117 और उसके बाद के वर्शन

    प्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और उसके बाद के वर्शन के साथ काम करते हैं. अन्य प्लैटफ़ॉर्म के लिए, कॉलबैक का इस्तेमाल करना ज़रूरी है.

इवेंट

onReceive

chrome.serial.onReceive.addListener(
  callback: function,
)

कनेक्शन से डेटा पढ़े जाने पर इवेंट ट्रिगर होता है.

पैरामीटर

  • कॉलबैक

    फ़ंक्शन

    callback पैरामीटर इस तरह दिखता है:

    (info: ReceiveInfo) => void

onReceiveError

chrome.serial.onReceiveError.addListener(
  callback: function,
)

जब रनटाइम, सीरियल पोर्ट पर डेटा का इंतज़ार कर रहा था, तब गड़बड़ी होने पर यह इवेंट ट्रिगर होता है. यह इवेंट होने के बाद, कनेक्शन को paused पर सेट किया जा सकता है. "timeout" गड़बड़ी होने पर, कनेक्शन रुक नहीं जाता.

पैरामीटर

  • कॉलबैक

    फ़ंक्शन

    callback पैरामीटर इस तरह दिखता है:

    (info: ReceiveErrorInfo) => void