chrome.sockets.tcpServer

ब्यौरा

टीसीपी कनेक्शन की मदद से सर्वर ऐप्लिकेशन बनाने के लिए, chrome.sockets.tcpServer API का इस्तेमाल करें. यह एपीआई, chrome.socket एपीआई में पहले मिले टीसीपी के फ़ंक्शन की जगह लागू होता है.

मेनिफ़ेस्ट

इस एपीआई का इस्तेमाल करने के लिए, मेनिफ़ेस्ट में इन कुंजियों का एलान करना ज़रूरी है.

"sockets"

टाइप

AcceptErrorInfo

प्रॉपर्टी

  • resultCode

    नंबर

    मौजूदा नेटवर्क कॉल से मिला नतीजा कोड.

  • socketId

    नंबर

    सर्वर के सॉकेट आइडेंटिफ़ायर.

AcceptInfo

प्रॉपर्टी

  • clientSocketId

    नंबर

    क्लाइंट सॉकेट आइडेंटिफ़ायर, यानी नए बने कनेक्शन का सॉकेट आइडेंटिफ़ायर. इस सॉकेट आइडेंटिफ़ायर का इस्तेमाल, सिर्फ़ chrome.sockets.tcp नेमस्पेस के फ़ंक्शन के साथ किया जाना चाहिए. ध्यान दें कि क्लाइंट सॉकेट को शुरुआत में रोका गया था. डेटा पाने के लिए, ऐप्लिकेशन को इसे अनब्लॉक करना होगा.

  • socketId

    नंबर

    सर्वर के सॉकेट आइडेंटिफ़ायर.

CreateInfo

प्रॉपर्टी

  • socketId

    नंबर

    नए बनाए गए सर्वर सॉकेट का आईडी. ध्यान रखें कि इस एपीआई से बनाए गए सॉकेट आईडी, अन्य एपीआई से बनाए गए सॉकेट आईडी के साथ काम नहीं करते हैं. जैसे, बंद किए गए [सॉकेट](../socket/) एपीआई.

SocketInfo

प्रॉपर्टी

  • localAddress

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

    अगर सॉकेट सुन रहा है, तो उसमें लोकल आईपीवी4/6 पता शामिल करें.

  • localPort

    नंबर ज़रूरी नहीं

    अगर सॉकेट सुन रहा है, तो उसमें लोकल पोर्ट शामिल है.

  • नाम

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

    सॉकेट से संबद्ध ऐप्लिकेशन-तय स्ट्रिंग.

  • रोका गया

    boolean

    इस फ़्लैग से पता चलता है कि लिसनिंग सॉकेट पर कनेक्शन के अनुरोध, onAccept इवेंट से भेजे जाते हैं या सुनने की सूची के बैकलॉग में जोड़े जाते हैं. setPaused देखें. डिफ़ॉल्ट वैल्यू "गलत" है.

  • अनवरत

    boolean

    इस फ़्लैग से पता चलता है कि ऐप्लिकेशन का इवेंट पेज अनलोड होने पर सॉकेट खुला रहता है या नहीं (SocketProperties.persistent देखें). डिफ़ॉल्ट वैल्यू "false" है.

  • socketId

    नंबर

    सॉकेट आइडेंटिफ़ायर.

SocketProperties

प्रॉपर्टी

  • नाम

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

    सॉकेट से जुड़ा ऐप्लिकेशन-तय स्ट्रिंग.

  • अनवरत

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

    इस फ़्लैग से पता चलता है कि ऐप्लिकेशन के इवेंट पेज के अनलोड होने के बाद, सॉकेट खुला रहता है या नहीं (ऐप्लिकेशन लाइफ़साइकल मैनेज करें देखें). डिफ़ॉल्ट वैल्यू "गलत" होती है. ऐप्लिकेशन लोड होने पर, पहले से खोली गई किसी भी पावर सॉकेट को getSockets की मदद से फ़ेच किया जा सकता है.

तरीके

close()

वादा
chrome.sockets.tcpServer.close(
  socketId: number,
  callback?: function,
)

यह सॉकेट को डिसकनेक्ट करता है और बंद कर देता है. बनाई गई हर सॉकेट, इस्तेमाल के बाद बंद होनी चाहिए. फ़ंक्शन के कॉल होते ही, सॉकेट आईडी अब मान्य नहीं रहता. हालांकि, यह गारंटी दी जाती है कि सॉकेट सिर्फ़ तभी बंद होगा, जब कॉलबैक को शुरू किया गया हो.

पैरामीटर

  • socketId

    नंबर

    सॉकेट आइडेंटिफ़ायर.

  • कॉलबैक

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

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

    ()=>void

रिटर्न

  • Promise<void>

    Chrome 121 और इसके बाद के वर्शन

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

create()

वादा
chrome.sockets.tcpServer.create(
  properties?: SocketProperties,
  callback?: function,
)

टीसीपी सर्वर सॉकेट बनाता है.

पैरामीटर

  • प्रॉपर्टी

    SocketProperties ज़रूरी नहीं

    सॉकेट प्रॉपर्टी (ज़रूरी नहीं).

  • कॉलबैक

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

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

    (createInfo: CreateInfo)=>void

    • createInfo

      सॉकेट बनाने का नतीजा.

रिटर्न

  • Promise<CreateInfo>

    Chrome 121 और इसके बाद के वर्शन

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

disconnect()

वादा
chrome.sockets.tcpServer.disconnect(
  socketId: number,
  callback?: function,
)

लिसनिंग सॉकेट को डिसकनेक्ट कर देता है. उदाहरण के लिए, नए कनेक्शन को स्वीकार करना बंद कर देता है और उस पते/पोर्ट को रिलीज़ कर देता है जिससे सॉकेट जुड़ा होता है. सॉकेट आइडेंटिफ़ायर मान्य रहता है. उदाहरण के लिए, नए पोर्ट और पते पर कनेक्शन स्वीकार करने के लिए, listen के साथ इसका इस्तेमाल किया जा सकता है.

पैरामीटर

  • socketId

    नंबर

    सॉकेट आइडेंटिफ़ायर.

  • कॉलबैक

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

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

    ()=>void

रिटर्न

  • Promise<void>

    Chrome 121 और इसके बाद के वर्शन

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

getInfo()

वादा
chrome.sockets.tcpServer.getInfo(
  socketId: number,
  callback?: function,
)

दिए गए सॉकेट की स्थिति पता करता है.

पैरामीटर

  • socketId

    नंबर

    सॉकेट आइडेंटिफ़ायर.

  • कॉलबैक

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

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

    (socketInfo: SocketInfo)=>void

    • socketInfo

      ऑब्जेक्ट में सॉकेट की जानकारी है.

रिटर्न

  • Promise<SocketInfo>

    Chrome 121 और इसके बाद के वर्शन

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

getSockets()

वादा
chrome.sockets.tcpServer.getSockets(
  callback?: function,
)

ऐप्लिकेशन के मालिकाना हक वाली फ़िलहाल खुली हुई सॉकेट की सूची वापस लाता है.

पैरामीटर

  • कॉलबैक

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

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

    (socketInfos: SocketInfo[])=>void

    • socketInfos

      ऑब्जेक्ट का कलेक्शन, जिसमें सॉकेट की जानकारी है.

रिटर्न

  • Promise<SocketInfo[]>

    Chrome 121 और इसके बाद के वर्शन

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

listen()

chrome.sockets.tcpServer.listen(
  socketId: number,
  address: string,
  port: number,
  backlog?: number,
  callback: function,
)

बताए गए पोर्ट और पते पर कनेक्शन की जानकारी सुनता है. अगर पोर्ट/पते का इस्तेमाल किया जा रहा है, तो कॉलबैक का मतलब है कि पोर्ट नहीं हो सका.

पैरामीटर

  • socketId

    नंबर

    सॉकेट आइडेंटिफ़ायर.

  • पता

    स्ट्रिंग

    लोकल मशीन का पता.

  • पोर्ट

    नंबर

    लोकल मशीन का पोर्ट. 0 पर सेट होने पर, फ़्री पोर्ट को डाइनैमिक तौर पर चुना जाता है. getInfo पर कॉल करके, डाइनैमिक तौर पर असाइन किए गए पोर्ट को ढूंढा जा सकता है.

  • बैकलॉग

    नंबर ज़रूरी नहीं

    सॉकेट की सुनने की सूची की लंबाई. डिफ़ॉल्ट वैल्यू, ऑपरेटिंग सिस्टम (SOMAXCONN) पर निर्भर करती है. इससे यह पक्का होता है कि ज़्यादातर ऐप्लिकेशन के लिए, सूची की लंबाई सही है.

  • कॉलबैक

    फ़ंक्शन

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

    (result: number)=>void

    • नतीजा

      नंबर

      मौजूदा नेटवर्क कॉल से मिला नतीजा कोड. नेगेटिव वैल्यू किसी गड़बड़ी को दिखाती है.

setPaused()

वादा
chrome.sockets.tcpServer.setPaused(
  socketId: number,
  paused: boolean,
  callback?: function,
)

इससे नए कनेक्शन स्वीकार करने वाले लिसनिंग सॉकेट को चालू या बंद किया जाता है. रोकने पर, लिसनिंग सॉकेट नए कनेक्शन को तब तक स्वीकार करता है, जब तक उसका बैकलॉग (listen फ़ंक्शन देखें) पूरा नहीं हो जाता. इसके बाद, कनेक्शन के दूसरे अनुरोधों को अस्वीकार कर दिया जाता है. onAccept इवेंट तब ही जनरेट होते हैं, जब सॉकेट को फिर से चालू किया जाता है.

पैरामीटर

  • socketId

    नंबर

  • रोका गया

    boolean

  • कॉलबैक

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

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

    ()=>void

रिटर्न

  • Promise<void>

    Chrome 121 और इसके बाद के वर्शन

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

update()

वादा
chrome.sockets.tcpServer.update(
  socketId: number,
  properties: SocketProperties,
  callback?: function,
)

सॉकेट की प्रॉपर्टी को अपडेट करता है.

पैरामीटर

  • socketId

    नंबर

    सॉकेट आइडेंटिफ़ायर.

  • प्रॉपर्टी

    अपडेट की जाने वाली प्रॉपर्टी.

  • कॉलबैक

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

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

    ()=>void

रिटर्न

  • Promise<void>

    Chrome 121 और इसके बाद के वर्शन

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

इवेंट

onAccept

chrome.sockets.tcpServer.onAccept.addListener(
  callback: function,
)

सर्वर सॉकेट से कनेक्शन बनाए जाने पर इवेंट की जानकारी दी जाती है.

पैरामीटर

  • कॉलबैक

    फ़ंक्शन

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

    (info: AcceptInfo)=>void

onAcceptError

chrome.sockets.tcpServer.onAcceptError.addListener(
  callback: function,
)

सॉकेट पता और पोर्ट पर नए कनेक्शन का इंतज़ार करते समय, रनटाइम के दौरान नेटवर्क की कोई गड़बड़ी होने पर इवेंट की जानकारी दी गई. यह इवेंट बढ़ जाने के बाद, सॉकेट paused पर सेट हो जाता है और सॉकेट को फिर से शुरू किए जाने तक इस सॉकेट के लिए और कोई onAccept इवेंट नहीं बढ़ाए जाते.

पैरामीटर

  • कॉलबैक

    फ़ंक्शन

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

    (info: AcceptErrorInfo)=>void