chrome.bluetoothSocket

الوصف

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

مدى التوفّر

نظام التشغيل ChromeOS فقط

البيان

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

"bluetooth"

الأنواع

AcceptError

Enum

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

‫"not_listening"
المقبس لا يستمع.

AcceptErrorInfo

الخصائص

  • خطأ

    رمز خطأ يشير إلى المشكلة التي حدثت

  • errorMessage

    سلسلة

    رسالة الخطأ

  • socketId

    الرقم

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

AcceptInfo

الخصائص

  • clientSocketId

    الرقم

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

  • socketId

    الرقم

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

CreateInfo

الخصائص

  • socketId

    الرقم

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

ListenOptions

الخصائص

  • قائمة المهام

    number اختيارية

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

  • قناة

    number اختيارية

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

  • psm

    number اختيارية

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

ReceiveError

Enum

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

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

"not_connected"
لم يتم ربط المقبس.

ReceiveErrorInfo

الخصائص

  • خطأ

    رمز خطأ يشير إلى المشكلة التي حدثت

  • errorMessage

    سلسلة

    رسالة الخطأ

  • socketId

    الرقم

    معرّف المقبس

ReceiveInfo

الخصائص

  • البيانات

    ArrayBuffer

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

  • socketId

    الرقم

    معرّف المقبس

SocketInfo

الخصائص

  • معالجة

    string اختياري

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

  • bufferSize

    number اختيارية

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

  • تم الربط

    قيمة منطقية

    علامة تشير إلى ما إذا كان المقبس متصلاً بنظير عن بُعد

  • الاسم

    string اختياري

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

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

    قيمة منطقية

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

  • ثابتة

    قيمة منطقية

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

  • socketId

    الرقم

    معرّف المقبس

  • uuid

    string اختياري

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

SocketProperties

الخصائص

  • bufferSize

    number اختيارية

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

  • الاسم

    string اختياري

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

  • ثابتة

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

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

الطُرق

close()

Promise
chrome.bluetoothSocket.close(
  socketId: number,
  callback?: function,
)
: Promise<void>

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

المعلمات

  • socketId

    الرقم

    معرّف المقبس

  • callback

    function اختياري

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

    () => void

المرتجعات

  • وعد<فراغ>

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

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

connect()

Promise
chrome.bluetoothSocket.connect(
  socketId: number,
  address: string,
  uuid: string,
  callback?: function,
)
: Promise<void>

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

المعلمات

  • socketId

    الرقم

    معرّف المقبس

  • معالجة

    سلسلة

    عنوان الجهاز الذي يتضمّن بلوتوث

  • uuid

    سلسلة

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

  • callback

    function اختياري

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

    () => void

المرتجعات

  • وعد<فراغ>

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

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

create()

Promise
chrome.bluetoothSocket.create(
  properties?: SocketProperties,
  callback?: function,
)
: Promise<CreateInfo>

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

المعلمات

  • أماكن الإقامة

    SocketProperties اختيارية

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

  • callback

    function اختياري

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

    (createInfo: CreateInfo) => void

    • createInfo

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

المرتجعات

  • Promise<CreateInfo>

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

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

disconnect()

Promise
chrome.bluetoothSocket.disconnect(
  socketId: number,
  callback?: function,
)
: Promise<void>

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

المعلمات

  • socketId

    الرقم

    معرّف المقبس

  • callback

    function اختياري

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

    () => void

المرتجعات

  • وعد<فراغ>

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

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

getInfo()

Promise
chrome.bluetoothSocket.getInfo(
  socketId: number,
  callback?: function,
)
: Promise<SocketInfo>

تسترد هذه الدالة حالة المقبس المحدّد.

المعلمات

  • socketId

    الرقم

    معرّف المقبس

  • callback

    function اختياري

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

    (socketInfo: SocketInfo) => void

    • socketInfo

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

المرتجعات

  • Promise<SocketInfo>

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

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

getSockets()

Promise
chrome.bluetoothSocket.getSockets(
  callback?: function,
)
: Promise<SocketInfo[]>

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

المعلمات

  • callback

    function اختياري

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

    (sockets: SocketInfo[]) => void

    • مآخذ

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

المرتجعات

  • Promise<SocketInfo[]>

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

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

listenUsingL2cap()

Promise
chrome.bluetoothSocket.listenUsingL2cap(
  socketId: number,
  uuid: string,
  options?: ListenOptions,
  callback?: function,
)
: Promise<void>

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

المعلمات

  • socketId

    الرقم

    معرّف المقبس

  • uuid

    سلسلة

    المعرّف الفريد العالمي (UUID) للخدمة المطلوب الاستماع إليها

  • الخيارات

    ListenOptions اختياري

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

  • callback

    function اختياري

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

    () => void

المرتجعات

  • وعد<فراغ>

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

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

listenUsingRfcomm()

Promise
chrome.bluetoothSocket.listenUsingRfcomm(
  socketId: number,
  uuid: string,
  options?: ListenOptions,
  callback?: function,
)
: Promise<void>

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

المعلمات

  • socketId

    الرقم

    معرّف المقبس

  • uuid

    سلسلة

    المعرّف الفريد العالمي (UUID) للخدمة المطلوب الاستماع إليها

  • الخيارات

    ListenOptions اختياري

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

  • callback

    function اختياري

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

    () => void

المرتجعات

  • وعد<فراغ>

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

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

send()

Promise
chrome.bluetoothSocket.send(
  socketId: number,
  data: ArrayBuffer,
  callback?: function,
)
: Promise<number>

يرسل البيانات على مقبس البلوتوث المحدّد.

المعلمات

  • socketId

    الرقم

    معرّف المقبس

  • البيانات

    ArrayBuffer

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

  • callback

    function اختياري

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

    (bytesSent: number) => void

    • bytesSent

      الرقم

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

المرتجعات

  • <number>

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

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

setPaused()

Promise
chrome.bluetoothSocket.setPaused(
  socketId: number,
  paused: boolean,
  callback?: function,
)
: Promise<void>

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

المعلمات

  • socketId

    الرقم

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

    قيمة منطقية

  • callback

    function اختياري

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

    () => void

المرتجعات

  • وعد<فراغ>

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

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

update()

Promise
chrome.bluetoothSocket.update(
  socketId: number,
  properties: SocketProperties,
  callback?: function,
)
: Promise<void>

يتيح هذا الإذن تعديل خصائص المقبس.

المعلمات

  • socketId

    الرقم

    معرّف المقبس

  • أماكن الإقامة

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

  • callback

    function اختياري

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

    () => 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 أخرى لهذا المقبس.

المعلمات