الوصف
استخدِم واجهة برمجة التطبيقات chrome.bluetoothSocket
لإرسال البيانات واستلامها إلى أجهزة البلوتوث باستخدام اتصالات RFCOMM وL2CAP.
البيان
الأنواع
AcceptError
Enum
"system_error"
حدث خطأ في النظام وقد يتعذّر استعادة الاتصال.
"not_listening"
المقبس لا يستمع.
AcceptErrorInfo
الخصائص
-
خطأ
رمز خطأ يشير إلى المشكلة التي حدثت.
-
errorMessage
سلسلة
رسالة الخطأ
-
socketId
الرقم
معرّف مقبس الخادم
AcceptInfo
الخصائص
-
clientSocketId
الرقم
معرّف مقبس العميل، أي معرّف مقبس الاتصال الذي تم إنشاؤه حديثًا. يجب استخدام معرّف المقبس هذا فقط مع الدوال من مساحة الاسم
chrome.bluetoothSocket
. يُرجى العِلم أنّه يتم إيقاف مقبس العميل مؤقتًا في البداية، ويجب أن يزيل التطبيق الإيقاف المؤقت بشكل صريح لبدء تلقّي البيانات. -
socketId
الرقم
معرّف مقبس الخادم
CreateInfo
الخصائص
-
socketId
الرقم
معرّف المقبس الذي تم إنشاؤه حديثًا. يُرجى العِلم أنّ معرّفات المقابس التي يتم إنشاؤها من واجهة برمجة التطبيقات هذه غير متوافقة مع معرّفات المقابس التي يتم إنشاؤها من واجهات برمجة تطبيقات أخرى، مثل واجهة برمجة التطبيقات
[
sockets.tcp](../sockets_tcp/)
.
ListenOptions
الخصائص
-
backlog
number اختياري
طول قائمة انتظار الاستماع الخاصة بالمقبس تعتمد القيمة التلقائية على النظام الفرعي المضيف لنظام التشغيل.
-
قناة
number اختياري
قناة RFCOMM التي يستخدمها
listenUsingRfcomm
في حال تحديدها، يجب ألا تكون هذه القناة مستخدَمة من قبل، وإلا سيتعذّر تنفيذ طلب الطريقة. في حال عدم تحديد قناة، سيتم تخصيص قناة غير مستخدَمة تلقائيًا. -
psm
number اختياري
رقم منفذ بروتوكول L2CAP المستخدم من قِبل
listenUsingL2cap
في حال تحديدها، يجب ألا تكون وحدة PSM هذه مستخدَمة من قبل، وإلا سيتعذّر تنفيذ طلب الطريقة. في حال عدم تحديدها، سيتم تخصيص PSM غير مستخدَم تلقائيًا.
ReceiveError
Enum
"تم قطع الاتصال"
تم قطع الاتصال.
"system_error"
حدث خطأ في النظام وقد يتعذّر استعادة الاتصال.
"not_connected"
لم يتم ربط المقبس.
ReceiveErrorInfo
الخصائص
-
خطأ
رمز خطأ يشير إلى المشكلة التي حدثت.
-
errorMessage
سلسلة
رسالة الخطأ
-
socketId
الرقم
معرّف المقبس
ReceiveInfo
الخصائص
-
البيانات
ArrayBuffer
البيانات المستلَمة، ويبلغ حجمها الأقصى
bufferSize
. -
socketId
الرقم
معرّف المقبس
SocketInfo
الخصائص
-
معالجة
سلسلة اختيارية
إذا كان المقبس الأساسي متصلاً، يحتوي على عنوان البلوتوث للجهاز المتصل به.
-
bufferSize
number اختياري
حجم المخزن المؤقت المستخدَم لتلقّي البيانات إذا لم يتم تحديد حجم المخزن المؤقت بشكل صريح، لن يتم تقديم القيمة.
-
متصل
قيمة منطقية
علامة تشير إلى ما إذا كان المقبس متصلاً بجهاز بعيد.
-
الاسم
سلسلة اختيارية
سلسلة يحدّدها التطبيق مرتبطة بالمقبس.
-
متوقفة مؤقتًا
قيمة منطقية
علامة تشير إلى ما إذا كان المقبس المتصل يمنع نظيره من إرسال المزيد من البيانات، أو ما إذا كانت طلبات الاتصال على مقبس الاستماع يتم إرسالها من خلال حدث
onAccept
أو وضعها في قائمة انتظار في قائمة انتظار الاستماع. يمكنك الاطّلاع علىsetPaused
. القيمة التلقائية هي "false". -
مستمر
قيمة منطقية
علامة تشير إلى ما إذا كان المقبس يظل مفتوحًا عند إلغاء تحميل صفحة حدث التطبيق (راجِع
SocketProperties.persistent
). القيمة التلقائية هي "false". -
socketId
الرقم
معرّف المقبس
-
uuid
سلسلة اختيارية
إذا كان المقبس الأساسي متصلاً، يحتوي على معلومات حول المعرّف الفريد العالمي للخدمة التي يتصل بها، وإذا كان المقبس الأساسي يستمع، يحتوي على معلومات حول المعرّف الفريد العالمي للخدمة التي يستمع إليها.
SocketProperties
الخصائص
-
bufferSize
number اختياري
حجم المخزن المؤقت المستخدَم لتلقّي البيانات القيمة التلقائية هي 4096.
-
الاسم
سلسلة اختيارية
سلسلة يحدّدها التطبيق ومرتبطة بالمقبس
-
مستمر
boolean اختياري
علامة تشير إلى ما إذا كان سيتم إبقاء المقبس مفتوحًا عند إلغاء تحميل صفحة حدث التطبيق (راجِع إدارة دورة حياة التطبيق). القيمة التلقائية هي
false.
عند تحميل التطبيق، يمكن استرداد أي مقابس تم فتحها سابقًا باستخدام persistent=true من خلالgetSockets
.
الطُرق
close()
chrome.bluetoothSocket.close(
socketId: number,
callback?: function,
): Promise<void>
يؤدي هذا الإجراء إلى قطع الاتصال وإيقاف المقبس. يجب إغلاق كل مقبس تم إنشاؤه بعد استخدامه. لم يعُد معرّف المقبس صالحًا بمجرد استدعاء الدالة. ومع ذلك، لا يمكن ضمان إغلاق المقبس إلا عند استدعاء دالة الرجوع.
المعلمات
-
socketId
الرقم
معرّف المقبس
-
callback
الدالة اختيارية
تظهر المَعلمة
callback
على النحو التالي:() => void
المرتجعات
-
Promise<void>
الإصدار 91 من Chrome والإصدارات الأحدثلا تتوافق الوعود إلا مع الإصدار Manifest V3 والإصدارات الأحدث، ويجب أن تستخدم المنصات الأخرى عمليات رد الاتصال.
connect()
chrome.bluetoothSocket.connect(
socketId: number,
address: string,
uuid: string,
callback?: function,
): Promise<void>
يربط المقبس بجهاز بلوتوث بعيد. عند اكتمال عملية connect
بنجاح، يتم إنشاء أحداث onReceive
عند تلقّي البيانات من الجهاز الآخر. في حال حدوث خطأ في الشبكة أثناء تلقّي وقت التشغيل للحِزم، سيتم إنشاء حدث onReceiveError
، ولن يتم إنشاء أي حدث onReceive
آخر لهذا المقبس إلى أن يتم استدعاء الطريقة setPaused(false)
.
المعلمات
-
socketId
الرقم
معرّف المقبس
-
معالجة
سلسلة
عنوان جهاز البلوتوث
-
uuid
سلسلة
تمثّل هذه السمة المعرّف الفريد العالمي (UUID) للخدمة التي سيتم الاتصال بها.
-
callback
الدالة اختيارية
تظهر المَعلمة
callback
على النحو التالي:() => void
المرتجعات
-
Promise<void>
الإصدار 91 من Chrome والإصدارات الأحدثلا تتوافق الوعود إلا مع الإصدار Manifest V3 والإصدارات الأحدث، ويجب أن تستخدم المنصات الأخرى عمليات رد الاتصال.
create()
chrome.bluetoothSocket.create(
properties?: SocketProperties,
callback?: function,
): Promise<CreateInfo>
تنشئ هذه الطريقة مقبس Bluetooth.
المعلمات
-
مواقع
SocketProperties اختيارية
خصائص المقبس (اختيارية)
-
callback
الدالة اختيارية
تظهر المَعلمة
callback
على النحو التالي:(createInfo: CreateInfo) => void
-
createInfo
نتيجة إنشاء المقبس
-
المرتجعات
-
Promise<CreateInfo>
الإصدار 91 من Chrome والإصدارات الأحدثلا تتوافق الوعود إلا مع الإصدار Manifest V3 والإصدارات الأحدث، ويجب أن تستخدم المنصات الأخرى عمليات رد الاتصال.
disconnect()
chrome.bluetoothSocket.disconnect(
socketId: number,
callback?: function,
): Promise<void>
يؤدي إلى قطع اتصال المقبس. يظل معرّف المقبس صالحًا.
المعلمات
-
socketId
الرقم
معرّف المقبس
-
callback
الدالة اختيارية
تظهر المَعلمة
callback
على النحو التالي:() => void
المرتجعات
-
Promise<void>
الإصدار 91 من Chrome والإصدارات الأحدثلا تتوافق الوعود إلا مع الإصدار Manifest V3 والإصدارات الأحدث، ويجب أن تستخدم المنصات الأخرى عمليات رد الاتصال.
getInfo()
chrome.bluetoothSocket.getInfo(
socketId: number,
callback?: function,
): Promise<SocketInfo>
تعرض هذه الدالة حالة المقبس المحدّد.
المعلمات
-
socketId
الرقم
معرّف المقبس
-
callback
الدالة اختيارية
تظهر المَعلمة
callback
على النحو التالي:(socketInfo: SocketInfo) => void
-
socketInfo
عنصر يحتوي على معلومات المقبس.
-
المرتجعات
-
Promise<SocketInfo>
الإصدار 91 من Chrome والإصدارات الأحدثلا تتوافق الوعود إلا مع الإصدار Manifest V3 والإصدارات الأحدث، ويجب أن تستخدم المنصات الأخرى عمليات رد الاتصال.
getSockets()
chrome.bluetoothSocket.getSockets(
callback?: function,
): Promise<SocketInfo[]>
يسترد هذا الإجراء قائمة المقابس المفتوحة حاليًا والتي يملكها التطبيق.
المعلمات
-
callback
الدالة اختيارية
تظهر المَعلمة
callback
على النحو التالي:(sockets: SocketInfo[]) => void
-
المقابس
-
المرتجعات
-
Promise<SocketInfo[]>
الإصدار 91 من Chrome والإصدارات الأحدثلا تتوافق الوعود إلا مع الإصدار Manifest V3 والإصدارات الأحدث، ويجب أن تستخدم المنصات الأخرى عمليات رد الاتصال.
listenUsingL2cap()
chrome.bluetoothSocket.listenUsingL2cap(
socketId: number,
uuid: string,
options?: ListenOptions,
callback?: function,
): Promise<void>
الاستماع إلى عمليات الاتصال باستخدام بروتوكول L2CAP
المعلمات
-
socketId
الرقم
معرّف المقبس
-
uuid
سلسلة
المعرّف الفريد العالمي (UUID) للخدمة التي سيتم الاستماع إليها
-
الخيارات
ListenOptions اختياري
خيارات إضافية اختيارية للخدمة
-
callback
الدالة اختيارية
تظهر المَعلمة
callback
على النحو التالي:() => void
المرتجعات
-
Promise<void>
الإصدار 91 من Chrome والإصدارات الأحدثلا تتوافق الوعود إلا مع الإصدار Manifest V3 والإصدارات الأحدث، ويجب أن تستخدم المنصات الأخرى عمليات رد الاتصال.
listenUsingRfcomm()
chrome.bluetoothSocket.listenUsingRfcomm(
socketId: number,
uuid: string,
options?: ListenOptions,
callback?: function,
): Promise<void>
الاستماع إلى الاتصالات باستخدام بروتوكول RFCOMM
المعلمات
-
socketId
الرقم
معرّف المقبس
-
uuid
سلسلة
المعرّف الفريد العالمي (UUID) للخدمة التي سيتم الاستماع إليها
-
الخيارات
ListenOptions اختياري
خيارات إضافية اختيارية للخدمة
-
callback
الدالة اختيارية
تظهر المَعلمة
callback
على النحو التالي:() => void
المرتجعات
-
Promise<void>
الإصدار 91 من Chrome والإصدارات الأحدثلا تتوافق الوعود إلا مع الإصدار Manifest V3 والإصدارات الأحدث، ويجب أن تستخدم المنصات الأخرى عمليات رد الاتصال.
send()
chrome.bluetoothSocket.send(
socketId: number,
data: ArrayBuffer,
callback?: function,
): Promise<number>
يرسل البيانات إلى مقبس Bluetooth المحدّد.
المعلمات
-
socketId
الرقم
معرّف المقبس
-
البيانات
ArrayBuffer
البيانات المطلوب إرسالها
-
callback
الدالة اختيارية
تظهر المَعلمة
callback
على النحو التالي:(bytesSent: number) => void
-
bytesSent
الرقم
عدد وحدات البايت المُرسَلة.
-
المرتجعات
-
Promise<number>
الإصدار 91 من Chrome والإصدارات الأحدثلا تتوافق الوعود إلا مع الإصدار Manifest V3 والإصدارات الأحدث، ويجب أن تستخدم المنصات الأخرى عمليات رد الاتصال.
setPaused()
chrome.bluetoothSocket.setPaused(
socketId: number,
paused: boolean,
callback?: function,
): Promise<void>
تتيح هذه السمة أو تحظر على مقبس متصل تلقّي رسائل من نظيره، أو على مقبس استماع قبول اتصالات جديدة. القيمة التلقائية هي "false". يتم عادةً استخدام إيقاف مقبس متصل مؤقتًا من قِبل تطبيق للحدّ من البيانات التي يرسلها الجهاز النظير. عند إيقاف مقبس متصل مؤقتًا، لن يتم إنشاء أي onReceive
حدث. عندما يتم ربط مقبس وإلغاء الإيقاف المؤقت، يتم إطلاق أحداث onReceive
مرة أخرى عند تلقّي الرسائل. عند إيقاف مقبس الاستماع مؤقتًا، يتم قبول الاتصالات الجديدة إلى أن يمتلئ المخزن المؤقت، ثم يتم رفض طلبات الاتصال الإضافية. لا يتم إنشاء أحداث onAccept
إلا عندما يكون المقبس غير متوقف مؤقتًا.
المعلمات
-
socketId
الرقم
-
متوقفة مؤقتًا
قيمة منطقية
-
callback
الدالة اختيارية
تظهر المَعلمة
callback
على النحو التالي:() => void
المرتجعات
-
Promise<void>
الإصدار 91 من Chrome والإصدارات الأحدثلا تتوافق الوعود إلا مع الإصدار Manifest V3 والإصدارات الأحدث، ويجب أن تستخدم المنصات الأخرى عمليات رد الاتصال.
update()
chrome.bluetoothSocket.update(
socketId: number,
properties: SocketProperties,
callback?: function,
): Promise<void>
تعديل خصائص المقبس
المعلمات
-
socketId
الرقم
معرّف المقبس
-
مواقع
الخصائص المطلوب تعديلها
-
callback
الدالة اختيارية
تظهر المَعلمة
callback
على النحو التالي:() => void
المرتجعات
-
Promise<void>
الإصدار 91 من Chrome والإصدارات الأحدثلا تتوافق الوعود إلا مع الإصدار Manifest V3 والإصدارات الأحدث، ويجب أن تستخدم المنصات الأخرى عمليات رد الاتصال.
الفعاليات
onAccept
chrome.bluetoothSocket.onAccept.addListener(
callback: function,
)
يتم بدء الحدث عند إنشاء اتصال لمقبس معيّن.
المعلمات
-
callback
دالة
تظهر المَعلمة
callback
على النحو التالي:(info: AcceptInfo) => void
-
معلومات
-
onAcceptError
chrome.bluetoothSocket.onAcceptError.addListener(
callback: function,
)
حدث يتم إطلاقه عند حدوث خطأ في الشبكة أثناء انتظار وقت التشغيل لاتصالات جديدة على المقبس المحدّد. بعد إطلاق هذا الحدث، يتم ضبط المقبس على paused
ولن يتم إطلاق المزيد من أحداث onAccept
لهذا المقبس.
المعلمات
-
callback
دالة
تظهر المَعلمة
callback
على النحو التالي:(info: AcceptErrorInfo) => void
-
معلومات
-
onReceive
chrome.bluetoothSocket.onReceive.addListener(
callback: function,
)
الحدث الذي يتم تنشيطه عند تلقّي البيانات لمقبس معيّن
المعلمات
-
callback
دالة
تظهر المَعلمة
callback
على النحو التالي:(info: ReceiveInfo) => void
-
معلومات
-
onReceiveError
chrome.bluetoothSocket.onReceiveError.addListener(
callback: function,
)
يتم إنشاء هذا الحدث عند حدوث خطأ في الشبكة أثناء انتظار وقت التشغيل للبيانات على المقبس. بعد إطلاق هذا الحدث، يتم ضبط المقبس على paused
ولن يتم إطلاق المزيد من أحداث onReceive
لهذا المقبس.
المعلمات
-
callback
دالة
تظهر المَعلمة
callback
على النحو التالي:(info: ReceiveErrorInfo) => void
-
معلومات
-