ब्यौरा
RFCOMM और L2CAP कनेक्शन का इस्तेमाल करके, ब्लूटूथ डिवाइसों को डेटा भेजने और उनसे डेटा पाने के लिए, chrome.bluetoothSocket
API का इस्तेमाल करें.
मेनिफ़ेस्ट
टाइप
AcceptError
Enum
"system_error"
सिस्टम में कोई गड़बड़ी हुई है. हो सकता है कि कनेक्शन को ठीक न किया जा सके.
"not_listening"
सॉकेट पर कोई डेटा नहीं सुना जा रहा है.
AcceptErrorInfo
प्रॉपर्टी
-
गड़बड़ी
गड़बड़ी का कोड, जिससे पता चलता है कि क्या गड़बड़ी हुई है.
-
errorMessage
स्ट्रिंग
गड़बड़ी का मैसेज.
-
socketId
संख्या
सर्वर सॉकेट आइडेंटिफ़ायर.
AcceptInfo
प्रॉपर्टी
-
clientSocketId
संख्या
क्लाइंट सॉकेट आइडेंटिफ़ायर, यानी कि नए कनेक्शन का सॉकेट आइडेंटिफ़ायर. इस सॉकेट आइडेंटिफ़ायर का इस्तेमाल, सिर्फ़
chrome.bluetoothSocket
नेमस्पेस के फ़ंक्शन के साथ किया जाना चाहिए. ध्यान दें कि क्लाइंट सॉकेट को शुरू में रोक दिया जाता है. डेटा पाना शुरू करने के लिए, ऐप्लिकेशन को इसे साफ़ तौर पर अन-पॉज़ करना होगा. -
socketId
संख्या
सर्वर सॉकेट आइडेंटिफ़ायर.
CreateInfo
प्रॉपर्टी
-
socketId
संख्या
नए बनाए गए सॉकेट का आईडी. ध्यान दें कि इस एपीआई से बनाए गए सॉकेट आईडी,
[
sockets.tcp](../sockets_tcp/)
जैसे अन्य एपीआई से बनाए गए सॉकेट आईडी के साथ काम नहीं करते.
ListenOptions
प्रॉपर्टी
-
backlog
number ज़रूरी नहीं
सॉकेट की लिसन क्यू की लंबाई. डिफ़ॉल्ट वैल्यू, ऑपरेटिंग सिस्टम के होस्ट सबसिस्टम पर निर्भर करती है.
-
चैनल
number ज़रूरी नहीं
listenUsingRfcomm
ने RFCOMM चैनल का इस्तेमाल किया. अगर यह चैनल पहले से इस्तेमाल में है, तो इस तरीके का इस्तेमाल नहीं किया जा सकता. अगर कोई चैनल नहीं चुना जाता है, तो इस्तेमाल नहीं किया जा रहा कोई चैनल अपने-आप असाइन हो जाएगा. -
psm
number ज़रूरी नहीं
listenUsingL2cap
इस्तेमाल किया गया L2CAP PSM. अगर यह PSM पहले से इस्तेमाल में है, तो यह तरीका कॉल नहीं करेगा. अगर PSM के बारे में जानकारी नहीं दी जाती है, तो इस्तेमाल नहीं किया गया PSM अपने-आप असाइन हो जाएगा.
ReceiveError
Enum
"डिसकनेक्ट किया गया"
कनेक्शन डिसकनेक्ट कर दिया गया है.
"system_error"
सिस्टम में कोई गड़बड़ी हुई है. हो सकता है कि कनेक्शन को ठीक न किया जा सके.
"not_connected"
सॉकेट कनेक्ट नहीं किया गया है.
ReceiveErrorInfo
प्रॉपर्टी
-
गड़बड़ी
गड़बड़ी का कोड, जिससे पता चलता है कि क्या गड़बड़ी हुई है.
-
errorMessage
स्ट्रिंग
गड़बड़ी का मैसेज.
-
socketId
संख्या
सॉकेट आइडेंटिफ़ायर.
ReceiveInfo
प्रॉपर्टी
-
डेटा
ArrayBuffer
यह
bufferSize
के ज़्यादा से ज़्यादा साइज़ वाला, मिला हुआ डेटा होता है. -
socketId
संख्या
सॉकेट आइडेंटिफ़ायर.
SocketInfo
प्रॉपर्टी
-
पता
string ज़रूरी नहीं है
अगर सॉकेट कनेक्ट है, तो इसमें उस डिवाइस का ब्लूटूथ पता होता है जिससे यह कनेक्ट है.
-
bufferSize
number ज़रूरी नहीं
डेटा पाने के लिए इस्तेमाल किए गए बफ़र का साइज़. अगर बफ़र साइज़ के बारे में साफ़ तौर पर नहीं बताया गया है, तो वैल्यू नहीं दी जाती है.
-
कनेक्ट किया गया
बूलियन
इस फ़्लैग से पता चलता है कि सॉकेट, रिमोट पीयर से कनेक्ट है या नहीं.
-
नाम
string ज़रूरी नहीं है
ऐप्लिकेशन के हिसाब से तय की गई स्ट्रिंग, जो सॉकेट से जुड़ी होती है.
-
रोका गया
बूलियन
यह फ़्लैग दिखाता है कि कनेक्ट किया गया सॉकेट, अपने पीयर को ज़्यादा डेटा भेजने से रोकता है या नहीं. इसके अलावा, यह भी दिखाता है कि लिसनिंग सॉकेट पर कनेक्शन के अनुरोध,
onAccept
इवेंट के ज़रिए भेजे जाते हैं या लिसन क्यू बैकलॉग में कतार में लगाए जाते हैं.setPaused
देखें. डिफ़ॉल्ट वैल्यू "false" होती है. -
अनवरत
बूलियन
यह फ़्लैग दिखाता है कि ऐप्लिकेशन का इवेंट पेज अनलोड होने पर सॉकेट खुला रहता है या नहीं (
SocketProperties.persistent
देखें). डिफ़ॉल्ट वैल्यू "false" है. -
socketId
संख्या
सॉकेट आइडेंटिफ़ायर.
-
uuid
string ज़रूरी नहीं है
अगर सॉकेट कनेक्ट है, तो इसमें उस सेवा के यूयूआईडी की जानकारी होती है जिससे यह कनेक्ट है. अगर सॉकेट लिसन कर रहा है, तो इसमें उस सेवा के यूयूआईडी की जानकारी होती है जिसे यह लिसन कर रहा है.
SocketProperties
प्रॉपर्टी
-
bufferSize
number ज़रूरी नहीं
डेटा पाने के लिए इस्तेमाल किए गए बफ़र का साइज़. डिफ़ॉल्ट वैल्यू 4096 है.
-
नाम
string ज़रूरी नहीं है
ऐप्लिकेशन के हिसाब से तय की गई स्ट्रिंग, जो सॉकेट से जुड़ी होती है.
-
अनवरत
बूलियन ज़रूरी नहीं है
यह फ़्लैग दिखाता है कि ऐप्लिकेशन का इवेंट पेज अनलोड होने पर, सॉकेट खुला रहता है या नहीं. इसके बारे में जानने के लिए, ऐप्लिकेशन के लाइफ़साइकल को मैनेज करना लेख पढ़ें. डिफ़ॉल्ट वैल्यू
false.
है. ऐप्लिकेशन लोड होने पर, persistent=true के साथ पहले से खुले हुए किसी भी सॉकेट कोgetSockets
की मदद से फ़ेच किया जा सकता है.
तरीके
close()
chrome.bluetoothSocket.close(
socketId: number,
callback?: function,
): Promise<void>
यह सॉकेट को डिसकनेक्ट करता है और उसे मिटा देता है. बनाए गए हर सॉकेट का इस्तेमाल करने के बाद उसे बंद कर देना चाहिए. फ़ंक्शन को कॉल करने के तुरंत बाद, सॉकेट आईडी मान्य नहीं रहता. हालांकि, सॉकेट बंद होने की गारंटी सिर्फ़ तब दी जाती है, जब कॉलबैक शुरू हो जाता है.
पैरामीटर
-
socketId
संख्या
सॉकेट आइडेंटिफ़ायर.
-
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
callback
पैरामीटर ऐसा दिखता है:() => void
रिटर्न
-
Promise<void>
Chrome 91 या इसके बाद के वर्शनप्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और इसके बाद के वर्शन के लिए काम करते हैं. अन्य प्लैटफ़ॉर्म को कॉलबैक का इस्तेमाल करना होगा.
connect()
chrome.bluetoothSocket.connect(
socketId: number,
address: string,
uuid: string,
callback?: function,
): Promise<void>
यह सॉकेट को किसी रिमोट ब्लूटूथ डिवाइस से कनेक्ट करता है. connect
ऑपरेशन पूरा होने पर, जब पियर से डेटा मिलता है, तब onReceive
इवेंट ट्रिगर होते हैं. अगर रनटाइम को पैकेट मिलते समय कोई नेटवर्क गड़बड़ी होती है, तो onReceiveError
इवेंट ट्रिगर होता है. इसके बाद, इस सॉकेट के लिए कोई और onReceiveError
इवेंट तब तक ट्रिगर नहीं होगा, जब तक कि setPaused(false)
तरीके को कॉल नहीं किया जाता.onReceive
पैरामीटर
-
socketId
संख्या
सॉकेट आइडेंटिफ़ायर.
-
पता
स्ट्रिंग
ब्लूटूथ डिवाइस का पता.
-
uuid
स्ट्रिंग
उस सेवा का यूयूआईडी जिससे कनेक्ट करना है.
-
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
callback
पैरामीटर ऐसा दिखता है:() => void
रिटर्न
-
Promise<void>
Chrome 91 या इसके बाद के वर्शनप्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और इसके बाद के वर्शन के लिए काम करते हैं. अन्य प्लैटफ़ॉर्म को कॉलबैक का इस्तेमाल करना होगा.
create()
chrome.bluetoothSocket.create(
properties?: SocketProperties,
callback?: function,
): Promise<CreateInfo>
यह फ़ंक्शन, ब्लूटूथ सॉकेट बनाता है.
पैरामीटर
-
प्रॉपर्टी
SocketProperties optional
सॉकेट की प्रॉपर्टी (ज़रूरी नहीं).
-
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
callback
पैरामीटर ऐसा दिखता है:(createInfo: CreateInfo) => void
-
createInfo
सॉकेट बनाने का नतीजा.
-
रिटर्न
-
Promise<CreateInfo>
Chrome 91 या इसके बाद के वर्शनप्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और इसके बाद के वर्शन के लिए काम करते हैं. अन्य प्लैटफ़ॉर्म को कॉलबैक का इस्तेमाल करना होगा.
disconnect()
chrome.bluetoothSocket.disconnect(
socketId: number,
callback?: function,
): Promise<void>
यह सॉकेट को डिसकनेक्ट करता है. सॉकेट आइडेंटिफ़ायर मान्य रहता है.
पैरामीटर
-
socketId
संख्या
सॉकेट आइडेंटिफ़ायर.
-
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
callback
पैरामीटर ऐसा दिखता है:() => void
रिटर्न
-
Promise<void>
Chrome 91 या इसके बाद के वर्शनप्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और इसके बाद के वर्शन के लिए काम करते हैं. अन्य प्लैटफ़ॉर्म को कॉलबैक का इस्तेमाल करना होगा.
getInfo()
chrome.bluetoothSocket.getInfo(
socketId: number,
callback?: function,
): Promise<SocketInfo>
यह फ़ंक्शन, दिए गए सॉकेट की स्थिति को वापस लाता है.
पैरामीटर
-
socketId
संख्या
सॉकेट आइडेंटिफ़ायर.
-
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
callback
पैरामीटर ऐसा दिखता है:(socketInfo: SocketInfo) => void
-
socketInfo
सॉकेट की जानकारी देने वाला ऑब्जेक्ट.
-
रिटर्न
-
Promise<SocketInfo>
Chrome 91 या इसके बाद के वर्शनप्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और इसके बाद के वर्शन के लिए काम करते हैं. अन्य प्लैटफ़ॉर्म को कॉलबैक का इस्तेमाल करना होगा.
getSockets()
chrome.bluetoothSocket.getSockets(
callback?: function,
): Promise<SocketInfo[]>
यह ऐप्लिकेशन के मालिकाना हक वाले, फ़िलहाल खुले हुए सॉकेट की सूची को वापस लाता है.
पैरामीटर
-
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
callback
पैरामीटर ऐसा दिखता है:(sockets: SocketInfo[]) => void
-
सॉकेट
-
रिटर्न
-
Promise<SocketInfo[]>
Chrome 91 या इसके बाद के वर्शनप्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और इसके बाद के वर्शन के लिए काम करते हैं. अन्य प्लैटफ़ॉर्म को कॉलबैक का इस्तेमाल करना होगा.
listenUsingL2cap()
chrome.bluetoothSocket.listenUsingL2cap(
socketId: number,
uuid: string,
options?: ListenOptions,
callback?: function,
): Promise<void>
L2CAP प्रोटोकॉल का इस्तेमाल करके कनेक्शन के लिए सुनें.
पैरामीटर
-
socketId
संख्या
सॉकेट आइडेंटिफ़ायर.
-
uuid
स्ट्रिंग
वह सेवा UUID जिस पर सुनना है.
-
विकल्प
ListenOptions ज़रूरी नहीं है
सेवा के लिए अन्य विकल्प (ज़रूरी नहीं).
-
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
callback
पैरामीटर ऐसा दिखता है:() => void
रिटर्न
-
Promise<void>
Chrome 91 या इसके बाद के वर्शनप्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और इसके बाद के वर्शन के लिए काम करते हैं. अन्य प्लैटफ़ॉर्म को कॉलबैक का इस्तेमाल करना होगा.
listenUsingRfcomm()
chrome.bluetoothSocket.listenUsingRfcomm(
socketId: number,
uuid: string,
options?: ListenOptions,
callback?: function,
): Promise<void>
RFCOMM प्रोटोकॉल का इस्तेमाल करके कनेक्शन के लिए सुनें.
पैरामीटर
-
socketId
संख्या
सॉकेट आइडेंटिफ़ायर.
-
uuid
स्ट्रिंग
वह सेवा UUID जिस पर सुनना है.
-
विकल्प
ListenOptions ज़रूरी नहीं है
सेवा के लिए अन्य विकल्प (ज़रूरी नहीं).
-
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
callback
पैरामीटर ऐसा दिखता है:() => void
रिटर्न
-
Promise<void>
Chrome 91 या इसके बाद के वर्शनप्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और इसके बाद के वर्शन के लिए काम करते हैं. अन्य प्लैटफ़ॉर्म को कॉलबैक का इस्तेमाल करना होगा.
send()
chrome.bluetoothSocket.send(
socketId: number,
data: ArrayBuffer,
callback?: function,
): Promise<number>
यह दिए गए ब्लूटूथ सॉकेट पर डेटा भेजता है.
पैरामीटर
-
socketId
संख्या
सॉकेट आइडेंटिफ़ायर.
-
डेटा
ArrayBuffer
भेजा जाने वाला डेटा.
-
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
callback
पैरामीटर ऐसा दिखता है:(bytesSent: number) => void
-
bytesSent
संख्या
भेजे गए बाइट की संख्या.
-
रिटर्न
-
Promise<number>
Chrome 91 या इसके बाद के वर्शनप्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और इसके बाद के वर्शन के लिए काम करते हैं. अन्य प्लैटफ़ॉर्म को कॉलबैक का इस्तेमाल करना होगा.
setPaused()
chrome.bluetoothSocket.setPaused(
socketId: number,
paused: boolean,
callback?: function,
): Promise<void>
इस विकल्प की मदद से, कनेक्ट किए गए सॉकेट को उसके पीयर से मैसेज पाने की अनुमति दी जा सकती है या बंद की जा सकती है. इसके अलावा, लिसनिंग सॉकेट को नए कनेक्शन स्वीकार करने की अनुमति दी जा सकती है या बंद की जा सकती है. डिफ़ॉल्ट वैल्यू "false" होती है. कनेक्ट किए गए सॉकेट को रोकने की सुविधा का इस्तेमाल आम तौर पर कोई ऐप्लिकेशन, अपने साथी ऐप्लिकेशन से भेजे गए डेटा को थ्रॉटल करने के लिए करता है. कनेक्ट किए गए सॉकेट को रोकने पर, कोई onReceive
इवेंट ट्रिगर नहीं होता. जब कोई सॉकेट कनेक्ट होता है और उसे अन-पॉज़ किया जाता है, तो मैसेज मिलने पर onReceive
इवेंट फिर से ट्रिगर होते हैं. लिसनिंग सॉकेट के रुकने पर, नए कनेक्शन तब तक स्वीकार किए जाते हैं, जब तक उसका बैकलॉग पूरा नहीं हो जाता. इसके बाद, कनेक्शन के अतिरिक्त अनुरोधों को अस्वीकार कर दिया जाता है. onAccept
इवेंट सिर्फ़ तब ट्रिगर होते हैं, जब सॉकेट को अन-पॉज़ किया जाता है.
पैरामीटर
-
socketId
संख्या
-
रोका गया
बूलियन
-
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
callback
पैरामीटर ऐसा दिखता है:() => void
रिटर्न
-
Promise<void>
Chrome 91 या इसके बाद के वर्शनप्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और इसके बाद के वर्शन के लिए काम करते हैं. अन्य प्लैटफ़ॉर्म को कॉलबैक का इस्तेमाल करना होगा.
update()
chrome.bluetoothSocket.update(
socketId: number,
properties: SocketProperties,
callback?: function,
): Promise<void>
सॉकेट की प्रॉपर्टी अपडेट करता है.
पैरामीटर
-
socketId
संख्या
सॉकेट आइडेंटिफ़ायर.
-
प्रॉपर्टी
अपडेट की जाने वाली प्रॉपर्टी.
-
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
callback
पैरामीटर ऐसा दिखता है:() => void
रिटर्न
-
Promise<void>
Chrome 91 या इसके बाद के वर्शनप्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और इसके बाद के वर्शन के लिए काम करते हैं. अन्य प्लैटफ़ॉर्म को कॉलबैक का इस्तेमाल करना होगा.
इवेंट
onAccept
chrome.bluetoothSocket.onAccept.addListener(
callback: function,
)
किसी सॉकेट के लिए कनेक्शन बन जाने पर यह इवेंट ट्रिगर होता है.
पैरामीटर
-
कॉलबैक
फ़ंक्शन
callback
पैरामीटर ऐसा दिखता है:(info: AcceptInfo) => void
-
जानकारी
-
onAcceptError
chrome.bluetoothSocket.onAcceptError.addListener(
callback: function,
)
यह इवेंट तब ट्रिगर होता है, जब रनटाइम दिए गए सॉकेट पर नए कनेक्शन का इंतज़ार कर रहा हो और नेटवर्क में कोई गड़बड़ी हो जाए. यह इवेंट ट्रिगर होने के बाद, सॉकेट को paused
पर सेट कर दिया जाता है. साथ ही, इस सॉकेट के लिए कोई और onAccept
इवेंट ट्रिगर नहीं होता.
पैरामीटर
-
कॉलबैक
फ़ंक्शन
callback
पैरामीटर ऐसा दिखता है:(info: AcceptErrorInfo) => void
-
जानकारी
-
onReceive
chrome.bluetoothSocket.onReceive.addListener(
callback: function,
)
यह इवेंट तब ट्रिगर होता है, जब किसी सॉकेट के लिए डेटा मिल जाता है.
पैरामीटर
-
कॉलबैक
फ़ंक्शन
callback
पैरामीटर ऐसा दिखता है:(info: ReceiveInfo) => void
-
जानकारी
-
onReceiveError
chrome.bluetoothSocket.onReceiveError.addListener(
callback: function,
)
यह इवेंट तब ट्रिगर होता है, जब रनटाइम सॉकेट पर डेटा का इंतज़ार कर रहा हो और नेटवर्क की कोई गड़बड़ी हो जाए. यह इवेंट ट्रिगर होने के बाद, सॉकेट को paused
पर सेट कर दिया जाता है. साथ ही, इस सॉकेट के लिए कोई और onReceive
इवेंट ट्रिगर नहीं होता.
पैरामीटर
-
कॉलबैक
फ़ंक्शन
callback
पैरामीटर ऐसा दिखता है:(info: ReceiveErrorInfo) => void
-
जानकारी
-