chrome.sockets.udp

ब्यौरा

यूडीपी कनेक्शन की मदद से, नेटवर्क पर डेटा भेजने और पाने के लिए, chrome.sockets.udp एपीआई का इस्तेमाल करें. यह एपीआई, "सॉकेट" में मौजूद यूडीपी फ़ंक्शन की जगह ले लेता है एपीआई.

मेनिफ़ेस्ट

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

"sockets"

टाइप

CreateInfo

प्रॉपर्टी

  • socketId

    संख्या

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

DnsQueryType

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

डीएनएस रिज़ॉल्यूशन की प्राथमिकताएं. डिफ़ॉल्ट वैल्यू any होती है और इसमें मौजूदा ओएस कॉन्फ़िगरेशन का इस्तेमाल किया जाता है, जिससे आईपीवी4 या आईपीवी6 मिल सकता है. ipv4, IPv4 को लागू करता है और ipv6, IPv6 को बाध्य करता है.

Enum

"कोई भी"

"ipv4"

"ipv6"

ReceiveErrorInfo

प्रॉपर्टी

  • resultCode

    संख्या

    recvfrom() कॉल से मिला नतीजा कोड.

  • socketId

    संख्या

    सॉकेट आईडी.

ReceiveInfo

प्रॉपर्टी

  • डेटा

    अरेबफ़र

    यूडीपी पैकेट का कॉन्टेंट (इसे मौजूदा बफ़र साइज़ के हिसाब से काटकर छोटा किया गया है).

  • remoteAddress

    स्ट्रिंग

    पैकेट के होस्ट का पता, जिससे पैकेट मिलता है.

  • remotePort

    संख्या

    पैकेट, होस्ट का पोर्ट होता है.

  • socketId

    संख्या

    सॉकेट आईडी.

SendInfo

प्रॉपर्टी

  • bytesSent

    नंबर वैकल्पिक

    भेजे गए बाइट की संख्या (अगर नतीजा == 0 है)

  • resultCode

    संख्या

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

SocketInfo

प्रॉपर्टी

  • bufferSize

    नंबर वैकल्पिक

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

  • localAddress

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

    अगर सॉकेट बाउंड है, तो उसका लोकल आईपीवी4/6 पता होता है.

  • localPort

    नंबर वैकल्पिक

    अगर सॉकेट बाउंड है, तो उसका लोकल पोर्ट होता है.

  • नाम

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

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

  • रोका गया

    बूलियन

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

  • अनवरत

    बूलियन

    यह बताता है कि ऐप्लिकेशन के निलंबित होने पर सॉकेट को खुला छोड़ दिया गया है या नहीं (SocketProperties.persistent देखें).

  • socketId

    संख्या

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

SocketProperties

प्रॉपर्टी

  • bufferSize

    नंबर वैकल्पिक

    डेटा पाने के लिए इस्तेमाल किए गए बफ़र का साइज़. अगर बफ़र यूडीपी पैकेट पाने के लिए बहुत छोटा है, तो डेटा मिट जाता है. डिफ़ॉल्ट तौर पर, यह वैल्यू 4096 है.

  • नाम

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

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

  • अनवरत

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

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

तरीके

bind()

chrome.sockets.udp.bind(
  socketId: number,
  address: string,
  port: number,
  callback: function,
)

सॉकेट के लिए स्थानीय पता और पोर्ट को बाइंड करता है. क्लाइंट सॉकेट के लिए, हमारा सुझाव है कि पोर्ट 0 का इस्तेमाल करें, ताकि प्लैटफ़ॉर्म बिना किसी शुल्क के पोर्ट को चुन सके.

bind की कार्रवाई पूरी होने के बाद, तय किए गए पते/पोर्ट पर यूडीपी पैकेट के आने पर onReceive इवेंट शुरू हो जाते हैं -- जब तक कि सॉकेट को रोका न जाए.

पैरामीटर

  • socketId

    संख्या

    सॉकेट आईडी.

  • पता

    स्ट्रिंग

    लोकल मशीन का पता. डीएनएस नेम, आईपीवी4, और आईपीवी6 फ़ॉर्मैट काम करते हैं. "0.0.0.0" का इस्तेमाल करें का इस्तेमाल करें.

  • पोर्ट

    संख्या

    लोकल मशीन का पोर्ट. "0" का इस्तेमाल करें पर जाएं.

  • कॉलबैक

    फ़ंक्शन

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

    (result: number) => void

    • नतीजा

      संख्या

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

close()

प्रॉमिस
chrome.sockets.udp.close(
  socketId: number,
  callback?: function,
)

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

पैरामीटर

  • socketId

    संख्या

    सॉकेट आईडी.

  • कॉलबैक

    फ़ंक्शन वैकल्पिक

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

    () => void

रिटर्न

  • प्रॉमिस<void>

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

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

create()

प्रॉमिस
chrome.sockets.udp.create(
  properties?: SocketProperties,
  callback?: function,
)

दी गई प्रॉपर्टी के साथ यूडीपी सॉकेट बनाता है.

पैरामीटर

  • प्रॉपर्टी

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

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

  • कॉलबैक

    फ़ंक्शन वैकल्पिक

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

    (createInfo: CreateInfo) => void

    • createInfo

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

रिटर्न

  • Promise&lt;CreateInfo&gt;

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

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

getInfo()

प्रॉमिस
chrome.sockets.udp.getInfo(
  socketId: number,
  callback?: function,
)

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

पैरामीटर

  • socketId

    संख्या

    सॉकेट आईडी.

  • कॉलबैक

    फ़ंक्शन वैकल्पिक

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

    (socketInfo: SocketInfo) => void

    • socketInfo

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

रिटर्न

  • Promise&lt;SocketInfo&gt;

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

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

getJoinedGroups()

प्रॉमिस
chrome.sockets.udp.getJoinedGroups(
  socketId: number,
  callback?: function,
)

यह मल्टीकास्ट ग्रुप के उन पतों को फ़ेच करता है जिनसे सॉकेट अभी जुड़ा है.

पैरामीटर

  • socketId

    संख्या

    सॉकेट आईडी.

  • कॉलबैक

    फ़ंक्शन वैकल्पिक

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

    (groups: string[]) => void

    • समूह

      स्ट्रिंग[]

      उन ग्रुप की संख्या जिन्हें सॉकेट से जोड़ा गया है.

रिटर्न

  • Promise&lt;string[]&gt;

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

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

getSockets()

प्रॉमिस
chrome.sockets.udp.getSockets(
  callback?: function,
)

ऐप्लिकेशन के मालिकाना हक वाले हाल ही में खोले गए सॉकेट की सूची लाता है.

पैरामीटर

  • कॉलबैक

    फ़ंक्शन वैकल्पिक

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

    (socketInfos: SocketInfo[]) => void

    • socketInfos

      सॉकेट की जानकारी वाले ऑब्जेक्ट की कैटगरी.

रिटर्न

  • Promise&lt;SocketInfo[]&gt;

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

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

joinGroup()

chrome.sockets.udp.joinGroup(
  socketId: number,
  address: string,
  callback: function,
)

मल्टीकास्ट ग्रुप में शामिल हो जाता है और उस ग्रुप से पैकेट पाना शुरू हो जाता है. इस पद्धति को कॉल करने से पहले सॉकेट को स्थानीय पोर्ट से संबद्ध होना चाहिए.

पैरामीटर

  • socketId

    संख्या

    सॉकेट आईडी.

  • पता

    स्ट्रिंग

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

  • कॉलबैक

    फ़ंक्शन

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

    (result: number) => void

    • नतीजा

      संख्या

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

leaveGroup()

chrome.sockets.udp.leaveGroup(
  socketId: number,
  address: string,
  callback: function,
)

यह विकल्प, joinGroup का इस्तेमाल करके मल्टीकास्ट ग्रुप में पहले शामिल होने वाले लोगों को छोड़ देता है. यह केवल तभी कॉल करना आवश्यक है जब आप सॉकेट का उपयोग जारी रखने की योजना बना रहे हों, क्योंकि सॉकेट बंद होने पर यह OS द्वारा अपने आप किया जा सकता है.

ग्रुप छोड़ने पर, राऊटर स्थानीय होस्ट को मल्टीकास्ट डेटाग्राम नहीं भेज पाएगा. ऐसा होने पर, यह मानकर चलें कि होस्ट की कोई दूसरी प्रोसेस अब भी ग्रुप में शामिल नहीं है.

पैरामीटर

  • socketId

    संख्या

    सॉकेट आईडी.

  • पता

    स्ट्रिंग

    छोड़ने के लिए ग्रुप का पता. डोमेन नाम समर्थित नहीं हैं.

  • कॉलबैक

    फ़ंक्शन

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

    (result: number) => void

    • नतीजा

      संख्या

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

send()

chrome.sockets.udp.send(
  socketId: number,
  data: ArrayBuffer,
  address: string,
  port: number,
  dnsQueryType?: DnsQueryType,
  callback: function,
)

दिए गए सॉकेट पर डेटा को दिए गए पते और पोर्ट पर भेजता है. इस पद्धति को कॉल करने से पहले सॉकेट को स्थानीय पोर्ट से संबद्ध होना चाहिए.

पैरामीटर

  • socketId

    संख्या

    सॉकेट आईडी.

  • डेटा

    अरेबफ़र

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

  • पता

    स्ट्रिंग

    रिमोट मशीन का पता.

  • पोर्ट

    संख्या

    रिमोट मशीन का पोर्ट.

  • dnsQueryType

    DnsQueryType ज़रूरी नहीं

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

    पते का समाधान करने की प्राथमिकता.

  • कॉलबैक

    फ़ंक्शन

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

    (sendInfo: SendInfo) => void

    • sendInfo

      send तरीके का नतीजा.

setBroadcast()

Chrome 44 और उसके बाद वाले वर्शन के लिए
chrome.sockets.udp.setBroadcast(
  socketId: number,
  enabled: boolean,
  callback: function,
)

इस सॉकेट पर ब्रॉडकास्ट पैकेट को चालू या बंद करता है.

पैरामीटर

  • socketId

    संख्या

    सॉकेट आईडी.

  • चालू किया गया

    बूलियन

    ब्रॉडकास्ट पैकेट चालू करने के लिए true, उन्हें बंद करने के लिए false.

  • कॉलबैक

    फ़ंक्शन

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

    (result: number) => void

    • नतीजा

      संख्या

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

setMulticastLoopbackMode()

chrome.sockets.udp.setMulticastLoopbackMode(
  socketId: number,
  enabled: boolean,
  callback: function,
)

यह सेट करता है कि होस्ट से मल्टीकास्ट ग्रुप को भेजे गए मल्टीकास्ट पैकेट, होस्ट पर वापस लूप में जाएंगे या नहीं.

ध्यान दें: Windows और Unix जैसे सिस्टम के लिए setMulticastLoopbackMode के काम करने का तरीका थोड़ा अलग होता है. यह गड़बड़ी सिर्फ़ तब होती है, जब एक होस्ट पर एक से ज़्यादा ऐप्लिकेशन एक ही मल्टीकास्ट ग्रुप में शामिल होते हैं. साथ ही, मल्टीकास्ट लूपबैक मोड में अलग-अलग सेटिंग होती हैं. Windows पर, लूपबैक बंद वाले ऐप्लिकेशन लूपबैक पैकेट नहीं पा सकेंगे; यूनिक्स-जैसे सिस्टम पर होने पर, लूपबैक बंद वाले ऐप्लिकेशन, एक ही होस्ट पर मौजूद अन्य ऐप्लिकेशन को लूपबैक पैकेट नहीं भेजेंगे. एमएसडीएन देखें: http://goo.gl/6vqbj

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

पैरामीटर

  • socketId

    संख्या

    सॉकेट आईडी.

  • चालू किया गया

    बूलियन

    बताएं कि लूपबैक मोड चालू करना है या नहीं.

  • कॉलबैक

    फ़ंक्शन

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

    (result: number) => void

    • नतीजा

      संख्या

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

setMulticastTimeToLive()

chrome.sockets.udp.setMulticastTimeToLive(
  socketId: number,
  ttl: number,
  callback: function,
)

यह नीति, मल्टीकास्ट ग्रुप को भेजे गए मल्टीकास्ट पैकेट के लाइव होने का समय सेट करती है.

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

पैरामीटर

  • socketId

    संख्या

    सॉकेट आईडी.

  • टीटीएल

    संख्या

    लाइव जाने के कुल समय की वैल्यू.

  • कॉलबैक

    फ़ंक्शन

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

    (result: number) => void

    • नतीजा

      संख्या

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

setPaused()

प्रॉमिस
chrome.sockets.udp.setPaused(
  socketId: number,
  paused: boolean,
  callback?: function,
)

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

पैरामीटर

  • socketId

    संख्या

  • रोका गया

    बूलियन

    रोकने या फिर से शुरू करने के बारे में बताने के लिए फ़्लैग करें.

  • कॉलबैक

    फ़ंक्शन वैकल्पिक

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

    () => void

रिटर्न

  • प्रॉमिस<void>

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

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

update()

प्रॉमिस
chrome.sockets.udp.update(
  socketId: number,
  properties: SocketProperties,
  callback?: function,
)

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

पैरामीटर

  • socketId

    संख्या

    सॉकेट आईडी.

  • प्रॉपर्टी

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

  • कॉलबैक

    फ़ंक्शन वैकल्पिक

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

    () => void

रिटर्न

  • प्रॉमिस<void>

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

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

इवेंट

onReceive

chrome.sockets.udp.onReceive.addListener(
  callback: function,
)

किसी दिए गए सॉकेट के लिए यूडीपी पैकेट मिलने पर इवेंट की जानकारी दी गई.

पैरामीटर

  • कॉलबैक

    फ़ंक्शन

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

    (info: ReceiveInfo) => void

onReceiveError

chrome.sockets.udp.onReceiveError.addListener(
  callback: function,
)

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

पैरामीटर

  • कॉलबैक

    फ़ंक्शन

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

    (info: ReceiveErrorInfo) => void