chrome.bluetoothSocket

الوصف

استخدِم واجهة برمجة التطبيقات chrome.bluetoothSocket لإرسال البيانات واستلامها إلى أجهزة البلوتوث باستخدام اتصالات RFCOMM وL2CAP.

البيان

يجب الإفصاح عن المفاتيح التالية في البيان لاستخدام واجهة برمجة التطبيقات هذه.

"bluetooth"

الأنواع

AcceptError

Enum

"system_error"
حدث خطأ في النظام وقد لا يمكن استرداد الاتصال.

"not_listening"
لم يتم ضبط المقبس على وضع الاستماع.

AcceptErrorInfo

أماكن إقامة

  • خطأ

    رمز خطأ يشير إلى المشكلة

  • errorMessage

    سلسلة

    رسالة الخطأ

  • socketId

    الرقم

    معرّف مقبس الخادم

AcceptInfo

أماكن إقامة

  • clientSocketId

    الرقم

    معرّف مقبس العميل، أي معرّف المقبس للاتصال الذي تم إنشاؤه حديثًا يجب عدم استخدام معرّف المقبس هذا إلا مع الدوالّ من مساحة الاسم chrome.bluetoothSocket. يُرجى العِلم أنّ مقبس العميل يكون متوقفًا مؤقتًا في البداية، ويجب أن يُوقف التطبيق هذا التوقف صراحةً لبدء تلقّي البيانات.

  • socketId

    الرقم

    معرّف مقبس الخادم

CreateInfo

أماكن إقامة

  • socketId

    الرقم

    معرّف المقبس الذي تم إنشاؤه حديثًا. يُرجى العِلم أنّ أرقام تعريف مآخذ التوصيل التي تم إنشاؤها من واجهة برمجة التطبيقات هذه لا تتوافق مع أرقام تعريف مآخذ التوصيل التي تم إنشاؤها من واجهات برمجة تطبيقات أخرى، مثل واجهة برمجة التطبيقات [sockets.tcp](../sockets_tcp/).

ListenOptions

أماكن إقامة

  • قائمة المهام غير المكتملة

    رقم اختياري

    طول قائمة الانتظار الخاصة بوضع الاستماع في المقبس تعتمد القيمة التلقائية على النظام الفرعي المضيف لنظام التشغيل.

  • قناة

    رقم اختياري

    قناة بروتوكول RFCOMM المستخدَمة من قِبل listenUsingRfcomm في حال تحديدها، يجب ألا تكون هذه القناة قيد الاستخدام سابقًا وإلا ستتعذّر استدعاء الطريقة. في حال عدم تحديد قناة، سيتم تخصيص قناة غير مستخدَمة تلقائيًا.

  • psm

    رقم اختياري

    خدمة إدارة الطاقة في L2CAP التي يستخدمها listenUsingL2cap في حال تحديده، يجب ألا يكون هذا الإجراء قد سبق استخدامه أو ستتعذّر استدعاء الطريقة. في حال عدم تحديده، سيتم تخصيص وحدة إدارة خدمات سحابية غير مستخدَمة تلقائيًا.

ReceiveError

Enum

"disconnected"
انقطع الاتصال.

"system_error"
حدث خطأ في النظام وقد لا يمكن استرداد الاتصال.

"not_connected"
لم يتم توصيل المقبس.

ReceiveErrorInfo

أماكن إقامة

  • خطأ

    رمز خطأ يشير إلى المشكلة

  • errorMessage

    سلسلة

    رسالة الخطأ

  • socketId

    الرقم

    معرّف المقبس

ReceiveInfo

أماكن إقامة

  • البيانات

    ArrayBuffer

    البيانات التي تمّ تلقّيها، بحدّ أقصى bufferSize

  • socketId

    الرقم

    معرّف المقبس

SocketInfo

أماكن إقامة

  • معالجة

    سلسلة اختيارية

    إذا كان المقبس الأساسي متصلاً، يحتوي على عنوان البلوتوث للجهاز المتصل به.

  • bufferSize

    رقم اختياري

    حجم المخزن المؤقت المستخدَم لتلقّي البيانات إذا لم يتم تحديد حجم المخزن المؤقت صراحةً، لن يتم تقديم القيمة.

  • تم الربط

    قيمة منطقية

    علامة تشير إلى ما إذا كان المقبس متصلاً بجهاز كمبيوتر تابع لشخص آخر.

  • الاسم

    سلسلة اختيارية

    سلسلة تحدّدها التطبيقات وترتبط بمقبس التوصيل

  • متوقفة مؤقتًا

    قيمة منطقية

    علامة تشير إلى ما إذا كان مقبس متّصل يحظر على نظيره إرسال المزيد من البيانات، أو ما إذا كانت طلبات الاتصال على مقبس استماع يتم إرسالها من خلال الحدث onAccept أو يتم وضعها في قائمة الانتظار في قائمة انتظار الاستماع. يمكنك الاطّلاع على setPaused. القيمة التلقائية هي "false".

  • دائمة

    قيمة منطقية

    علامة تشير إلى ما إذا كان المقبس يظل مفتوحًا عند إزالة تحميل صفحة الأحداث في التطبيق (راجِع SocketProperties.persistent). القيمة التلقائية هي "false".

  • socketId

    الرقم

    معرّف المقبس

  • uuid

    سلسلة اختيارية

    إذا كان المقبس الأساسي متصلاً، يحتوي على معلومات عن معرّف UUID للخدمة التي يتصل بها، وإذا كان المقبس الأساسي يستمع، يحتوي على معلومات عن معرّف UUID للخدمة التي يستمع إليها.

SocketProperties

أماكن إقامة

  • bufferSize

    رقم اختياري

    حجم المخزن المؤقت المستخدَم لتلقّي البيانات القيمة التلقائية هي 4096.

  • الاسم

    سلسلة اختيارية

    سلسلة يحدّدها التطبيق وترتبط بمقبس التوصيل

  • دائمة

    منطقي اختياري

    علامة تشير إلى ما إذا كان مقبس الشبكة سيظل مفتوحًا عند إزالة تحميل صفحة الأحداث في التطبيق (راجِع إدارة دورة حياة التطبيق). القيمة التلقائية هي false.. عند تحميل التطبيق، يمكن جلب أيّ مقابس تم فتحها سابقًا باستخدام persistent=true باستخدام getSockets.

الطُرق

close()

الوعد
chrome.bluetoothSocket.close(
  socketId: number,
  callback?: function,
)

تؤدي هذه العملية إلى قطع اتصال المقبس وإزالته. يجب إغلاق كل مقبس تم إنشاؤه بعد استخدامه. لم يعُد رقم تعريف المقبس صالحًا بعد استدعاء الدالة. ومع ذلك، لا يتم ضمان إغلاق المقبس إلا عند استدعاء دالة الاستدعاء.

المعلمات

  • socketId

    الرقم

    معرّف المقبس

  • ردّ الاتصال

    الدالة اختيارية

    تظهر المَعلمة callback على النحو التالي:

    () => void

المرتجعات

  • Promise<void>

    Chrome 91 والإصدارات الأحدث

    لا تتوفّر الوعود إلا في الإصدار Manifest V3 والإصدارات الأحدث، ويجب أن تستخدم المنصات الأخرى طلبات الاستدعاء.

connect()

الوعد
chrome.bluetoothSocket.connect(
  socketId: number,
  address: string,
  uuid: string,
  callback?: function,
)

يربط المقبس بجهاز بلوتوث عن بُعد. عند اكتمال عملية connect بنجاح، يتمّ رفع أحداث onReceive عند تلقّي البيانات من المثيّر. إذا حدث خطأ في الشبكة أثناء تلقّي وقت التشغيل للحِزم، يتمّ تنشيط حدث onReceiveError، وعند هذه المرحلة، لن يتمّ تنشيط حدث onReceive بعد ذلك لهذا المقبس إلى أن يتمّ استدعاء طريقة setPaused(false).

المعلمات

  • socketId

    الرقم

    معرّف المقبس

  • معالجة

    سلسلة

    عنوان جهاز البلوتوث

  • uuid

    سلسلة

    معرّف UUID للخدمة المطلوب الاتصال بها

  • ردّ الاتصال

    الدالة اختيارية

    تظهر المَعلمة callback على النحو التالي:

    () => void

المرتجعات

  • Promise<void>

    Chrome 91 والإصدارات الأحدث

    لا تتوفّر الوعود إلا في الإصدار Manifest V3 والإصدارات الأحدث، ويجب أن تستخدم المنصات الأخرى طلبات الاستدعاء.

create()

الوعد
chrome.bluetoothSocket.create(
  properties?: SocketProperties,
  callback?: function,
)

لإنشاء مقبس بلوتوث

المعلمات

  • المواقع

    SocketProperties اختيارية

    خصائص المقبس (اختيارية)

  • ردّ الاتصال

    الدالة اختيارية

    تظهر المَعلمة callback على النحو التالي:

    (createInfo: CreateInfo) => void

    • createInfo

      نتيجة إنشاء المقبس

المرتجعات

  • Promise<CreateInfo>

    Chrome 91 والإصدارات الأحدث

    لا تتوفّر الوعود إلا في الإصدار Manifest V3 والإصدارات الأحدث، ويجب أن تستخدم المنصات الأخرى طلبات الاستدعاء.

disconnect()

الوعد
chrome.bluetoothSocket.disconnect(
  socketId: number,
  callback?: function,
)

يقطع الاتصال بالمقبس. يظل معرّف المقبس صالحًا.

المعلمات

  • socketId

    الرقم

    معرّف المقبس

  • ردّ الاتصال

    الدالة اختيارية

    تظهر المَعلمة callback على النحو التالي:

    () => void

المرتجعات

  • Promise<void>

    Chrome 91 والإصدارات الأحدث

    لا تتوفّر الوعود إلا في الإصدار Manifest V3 والإصدارات الأحدث، ويجب أن تستخدم المنصات الأخرى طلبات الاستدعاء.

getInfo()

الوعد
chrome.bluetoothSocket.getInfo(
  socketId: number,
  callback?: function,
)

يسترجع حالة المقبس المحدّد.

المعلمات

  • socketId

    الرقم

    معرّف المقبس

  • ردّ الاتصال

    الدالة اختيارية

    تظهر المَعلمة callback على النحو التالي:

    (socketInfo: SocketInfo) => void

    • socketInfo

      عنصر يحتوي على معلومات المقبس

المرتجعات

  • Promise<SocketInfo>

    Chrome 91 والإصدارات الأحدث

    لا تتوفّر الوعود إلا في الإصدار Manifest V3 والإصدارات الأحدث، ويجب أن تستخدم المنصات الأخرى طلبات الاستدعاء.

getSockets()

الوعد
chrome.bluetoothSocket.getSockets(
  callback?: function,
)

يسترجع قائمة المقابس المفتوحة حاليًا التي يملكها التطبيق.

المعلمات

  • ردّ الاتصال

    الدالة اختيارية

    تظهر المَعلمة callback على النحو التالي:

    (sockets: SocketInfo[]) => void

المرتجعات

  • Promise<SocketInfo[]>

    Chrome 91 والإصدارات الأحدث

    لا تتوفّر الوعود إلا في الإصدار Manifest V3 والإصدارات الأحدث، ويجب أن تستخدم المنصات الأخرى طلبات الاستدعاء.

listenUsingL2cap()

الوعد
chrome.bluetoothSocket.listenUsingL2cap(
  socketId: number,
  uuid: string,
  options?: ListenOptions,
  callback?: function,
)

الاستماع إلى عمليات الاتصال باستخدام بروتوكول L2CAP

المعلمات

  • socketId

    الرقم

    معرّف المقبس

  • uuid

    سلسلة

    رقم تعريف الخدمة UUID للاستماع إليها

  • الخيارات

    ListenOptions اختياري

    خيارات إضافية اختيارية للخدمة

  • ردّ الاتصال

    الدالة اختيارية

    تظهر المَعلمة callback على النحو التالي:

    () => void

المرتجعات

  • Promise<void>

    Chrome 91 والإصدارات الأحدث

    لا تتوفّر الوعود إلا في الإصدار Manifest V3 والإصدارات الأحدث، ويجب أن تستخدم المنصات الأخرى طلبات الاستدعاء.

listenUsingRfcomm()

الوعد
chrome.bluetoothSocket.listenUsingRfcomm(
  socketId: number,
  uuid: string,
  options?: ListenOptions,
  callback?: function,
)

الاستماع إلى عمليات الربط باستخدام بروتوكول RFCOMM

المعلمات

  • socketId

    الرقم

    معرّف المقبس

  • uuid

    سلسلة

    رقم تعريف الخدمة UUID للاستماع إليها

  • الخيارات

    ListenOptions اختياري

    خيارات إضافية اختيارية للخدمة

  • ردّ الاتصال

    الدالة اختيارية

    تظهر المَعلمة callback على النحو التالي:

    () => void

المرتجعات

  • Promise<void>

    Chrome 91 والإصدارات الأحدث

    لا تتوفّر الوعود إلا في الإصدار Manifest V3 والإصدارات الأحدث، ويجب أن تستخدم المنصات الأخرى طلبات الاستدعاء.

send()

الوعد
chrome.bluetoothSocket.send(
  socketId: number,
  data: ArrayBuffer,
  callback?: function,
)

تُرسِل البيانات على مقبس Bluetooth المحدّد.

المعلمات

  • socketId

    الرقم

    معرّف المقبس

  • البيانات

    ArrayBuffer

    البيانات المطلوب إرسالها

  • ردّ الاتصال

    الدالة اختيارية

    تظهر المَعلمة callback على النحو التالي:

    (bytesSent: number) => void

    • bytesSent

      الرقم

      عدد وحدات البايت المُرسَلة.

المرتجعات

  • Promise<number>

    Chrome 91 والإصدارات الأحدث

    لا تتوفّر الوعود إلا في الإصدار Manifest V3 والإصدارات الأحدث، ويجب أن تستخدم المنصات الأخرى طلبات الاستدعاء.

setPaused()

الوعد
chrome.bluetoothSocket.setPaused(
  socketId: number,
  paused: boolean,
  callback?: function,
)

تفعِّل أو تُوقِف مقبسًا متّصلاً عن تلقّي الرسائل من نظيره، أو مقبس استماع عن قبول اتصالات جديدة. القيمة التلقائية هي "false". يستخدم التطبيق عادةً إيقاف مقبس متصل مؤقتًا لتقليل سرعة البيانات التي يرسلها نظيره. عند إيقاف مقبس متصل مؤقتًا، لا يتمّ بدء أيّ onReceiveحدث. عند اتصال مقبس وإلغاء إيقافه مؤقتًا، يتمّ رفع أحداث onReceive مرة أخرى عند استلام الرسائل. عند إيقاف مقبس الاستماع مؤقتًا، يتم قبول طلبات الاتصال الجديدة إلى أن تمتلئ قائمة الطلبات غير المنجزة، ثم يتم رفض طلبات الاتصال الإضافية. لا يتمّ رفع أحداث onAccept إلا عند إيقاف وضع الإيقاف المؤقت للمقبس.

المعلمات

  • socketId

    الرقم

  • متوقفة مؤقتًا

    قيمة منطقية

  • ردّ الاتصال

    الدالة اختيارية

    تظهر المَعلمة callback على النحو التالي:

    () => void

المرتجعات

  • Promise<void>

    Chrome 91 والإصدارات الأحدث

    لا تتوفّر الوعود إلا في الإصدار Manifest V3 والإصدارات الأحدث، ويجب أن تستخدم المنصات الأخرى طلبات الاستدعاء.

update()

الوعد
chrome.bluetoothSocket.update(
  socketId: number,
  properties: SocketProperties,
  callback?: function,
)

تعديل خصائص المقبس

المعلمات

  • socketId

    الرقم

    معرّف المقبس

  • المواقع

    السمات المطلوب تعديلها

  • ردّ الاتصال

    الدالة اختيارية

    تظهر المَعلمة callback على النحو التالي:

    () => void

المرتجعات

  • Promise<void>

    Chrome 91 والإصدارات الأحدث

    لا تتوفّر الوعود إلا في الإصدار Manifest 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