chrome.bluetoothSocket

תיאור

אפשר להשתמש ב-API של chrome.bluetoothSocket כדי לשלוח ולקבל נתונים למכשירי Bluetooth באמצעות חיבורי RFCOMM ו-L2CAP.

מניפסט

כדי להשתמש ב-API הזה, צריך להצהיר על המפתחות הבאים במניפסט.

"bluetooth"

סוגים

AcceptError

Enum

"system_error"
אירעה שגיאת מערכת וייתכן שלא ניתן לשחזר את החיבור.

"not_listening"
ה-socket לא מאזין.

AcceptErrorInfo

מאפיינים

  • error

    קוד שגיאה שמציין מה השתבש.

  • errorMessage

    מחרוזת

    הודעת השגיאה.

  • socketId

    number

    המזהה של שקע השרת.

AcceptInfo

מאפיינים

  • clientSocketId

    number

    מזהה שקע הלקוח, כלומר מזהה השקע של החיבור החדש שנוצר. צריך להשתמש במזהה השקע הזה רק עם פונקציות ממרחב השמות chrome.bluetoothSocket. לתשומת ליבכם: שקע הלקוח מושהה בהתחלה, ויש לבטל את ההשהיה שלו באופן מפורש על ידי האפליקציה כדי להתחיל לקבל נתונים.

  • socketId

    number

    המזהה של שקע השרת.

CreateInfo

מאפיינים

  • socketId

    number

    המזהה של השקע החדש שנוצר. חשוב לשים לב שמזהי שקעים שנוצרו מה-API הזה לא תואמים למזהי שקעים שנוצרו מממשקי API אחרים, כמו ה-API [sockets.tcp](../sockets_tcp/).

ListenOptions

מאפיינים

  • עיכוב

    מספר אופציונלי

    אורך תור ההאזנה של השקע. ערך ברירת המחדל תלוי במערכת המשנה של המארח של מערכת ההפעלה.

  • ערוץ

    מספר אופציונלי

    ערוץ RFCOMM שבו listenUsingRfcomm משתמש. אם צוין, הערוץ לא יכול להיות בשימוש לפני כן, אחרת הפעלת השיטה תיכשל. אם לא מגדירים ערך, ערוץ שלא נמצא בשימוש יוקצה באופן אוטומטי.

  • psm

    מספר אופציונלי

    ערך ה-PSM L2CAP משמש את listenUsingL2cap. אם צוין, ה-PSM הזה לא יכול להיות בשימוש בעבר, או שהקריאה ל-method תיכשל. אם לא מציינים זאת, PSM שלא נמצא בשימוש יוקצה באופן אוטומטי.

ReceiveError

Enum

"מנותק"
החיבור נותק.

"system_error"
אירעה שגיאת מערכת וייתכן שלא ניתן לשחזר את החיבור.

"not_connected"
השקע לא חובר.

ReceiveErrorInfo

מאפיינים

  • error

    קוד שגיאה שמציין מה השתבש.

  • errorMessage

    מחרוזת

    הודעת השגיאה.

  • socketId

    number

    מזהה ה-socket.

ReceiveInfo

מאפיינים

  • נתונים

    ArrayBuffer

    הנתונים שהתקבלו, בגודל מקסימלי של bufferSize.

  • socketId

    number

    מזהה ה-socket.

SocketInfo

מאפיינים

  • כתובת

    מחרוזת אופציונלי

    אם השקע הבסיסי מחובר, תוצג כתובת ה-Bluetooth של המכשיר שאליו הוא מחובר.

  • bufferSize

    מספר אופציונלי

    גודל מאגר הנתונים הזמני המשמש לקבלת נתונים. אם לא צוין במפורש גודל של מאגר נתונים זמני, הערך לא יצוין.

  • מחובר

    בוליאני

    סימון שמציין אם השקע מחובר לאפליקציה מרוחקת.

  • שם

    מחרוזת אופציונלי

    מחרוזת מוגדרת אפליקציה שמשויכת לשקע.

  • מושהה

    בוליאני

    סימון שמציין אם שקע מחובר מונע מהעמית שלו לשלוח נתונים נוספים, או אם בקשות חיבור בשקע האזנה נשלחות דרך האירוע onAccept או בהמתנה לתור ההאזנה. setPaused. ערך ברירת המחדל הוא 'FALSE'.

  • מתמיד

    בוליאני

    סימון שמציין אם השקע נשאר פתוח אחרי שהטעינה של דף האירוע של האפליקציה מתבטלת (מידע נוסף זמין ב-SocketProperties.persistent). ערך ברירת המחדל הוא 'FALSE'.

  • socketId

    number

    מזהה ה-socket.

  • Uuid

    מחרוזת אופציונלי

    אם השקע הבסיסי מחובר, מכיל מידע על ה-UUID של השירות שאליו הוא מחובר. אחרת, אם השקע הבסיסי מאזין, מכיל מידע על ה-UUID של השירות שאליו הוא מאזין.

SocketProperties

מאפיינים

  • bufferSize

    מספר אופציונלי

    גודל מאגר הנתונים הזמני המשמש לקבלת נתונים. ערך ברירת המחדל הוא 4096.

  • שם

    מחרוזת אופציונלי

    מחרוזת בהגדרת האפליקציה שמשויכת לשקע.

  • מתמיד

    ערך בוליאני אופציונלי

    סימון שמציין אם השקע נשאר פתוח אחרי שהטעינה של דף האירוע של האפליקציה מתבטלת (מידע נוסף זמין בקטע ניהול מחזור החיים של אפליקציה). ערך ברירת המחדל הוא false. כשהאפליקציה נטענת, אפשר לאחזר כל שקע (sockets) שנפתח בעבר עם persistent=true באמצעות getSockets.

שיטות

close()

הבטחה
chrome.bluetoothSocket.close(
  socketId: number,
  callback?: function,
)

מנתק את השקע והשמדת אותו. כל שקע שנוצר צריך להיסגר אחרי השימוש. מזהה ה-socket לא תקף יותר מיד לאחר הפעלת הפונקציה. עם זאת, מובטח שהשקע ייסגר רק כשתתבצע קריאה חוזרת.

פרמטרים

  • socketId

    number

    מזהה ה-socket.

  • קריאה חוזרת (callback)

    פונקציה אופציונלית

    הפרמטר callback נראה כך:

    () => void

החזרות

  • הבטחה<Empty>

    Chrome מגרסה 91 ואילך

    הבטחות נתמכות רק במניפסט מגרסה V3 ואילך, בפלטפורמות אחרות צריך להשתמש בקריאות חוזרות (callback).

connect()

הבטחה
chrome.bluetoothSocket.connect(
  socketId: number,
  address: string,
  uuid: string,
  callback?: function,
)

מחבר את השקע למכשיר Bluetooth מרוחק. כשהפעולה connect תסתיים בהצלחה, המערכת תגדיל את onReceive אירועים כשיתקבלו נתונים מהעמית. אם תתרחש שגיאת רשת בזמן שסביבת זמן הריצה מקבלת חבילות, יווצר אירוע onReceiveError. בשלב הזה לא יווצר אירוע onReceive נוסף עבור השקע הזה עד לקריאה ל-method setPaused(false).

פרמטרים

  • socketId

    number

    מזהה ה-socket.

  • כתובת

    מחרוזת

    הכתובת של מכשיר ה-Bluetooth.

  • Uuid

    מחרוזת

    המזהה הייחודי של השירות שאליו רוצים להתחבר.

  • קריאה חוזרת (callback)

    פונקציה אופציונלית

    הפרמטר callback נראה כך:

    () => void

החזרות

  • הבטחה<Empty>

    Chrome מגרסה 91 ואילך

    הבטחות נתמכות רק במניפסט מגרסה V3 ואילך, בפלטפורמות אחרות צריך להשתמש בקריאות חוזרות (callback).

create()

הבטחה
chrome.bluetoothSocket.create(
  properties?: SocketProperties,
  callback?: function,
)

יצירת שקע Bluetooth.

פרמטרים

  • נכסים

    SocketProperties אופציונלי

    מאפייני השקע (אופציונלי).

  • קריאה חוזרת (callback)

    פונקציה אופציונלית

    הפרמטר callback נראה כך:

    (createInfo: CreateInfo) => void

    • createInfo

      התוצאה של יצירת השקע.

החזרות

  • Promise&lt;CreateInfo&gt;

    Chrome מגרסה 91 ואילך

    הבטחות נתמכות רק במניפסט מגרסה V3 ואילך, בפלטפורמות אחרות צריך להשתמש בקריאות חוזרות (callback).

disconnect()

הבטחה
chrome.bluetoothSocket.disconnect(
  socketId: number,
  callback?: function,
)

מנתקים את השקע. מזהה ה-socket נשאר תקין.

פרמטרים

  • socketId

    number

    מזהה ה-socket.

  • קריאה חוזרת (callback)

    פונקציה אופציונלית

    הפרמטר callback נראה כך:

    () => void

החזרות

  • הבטחה<Empty>

    Chrome מגרסה 91 ואילך

    הבטחות נתמכות רק במניפסט מגרסה V3 ואילך, בפלטפורמות אחרות צריך להשתמש בקריאות חוזרות (callback).

getInfo()

הבטחה
chrome.bluetoothSocket.getInfo(
  socketId: number,
  callback?: function,
)

אחזור המצב של השקע הנתון.

פרמטרים

  • socketId

    number

    מזהה ה-socket.

  • קריאה חוזרת (callback)

    פונקציה אופציונלית

    הפרמטר callback נראה כך:

    (socketInfo: SocketInfo) => void

    • socketInfo

      אובייקט שמכיל את המידע על השקע.

החזרות

  • Promise&lt;SocketInfo&gt;

    Chrome מגרסה 91 ואילך

    הבטחות נתמכות רק במניפסט מגרסה V3 ואילך, בפלטפורמות אחרות צריך להשתמש בקריאות חוזרות (callback).

getSockets()

הבטחה
chrome.bluetoothSocket.getSockets(
  callback?: function,
)

אחזור רשימה של השקעים הפתוחים הנוכחיים שבבעלות האפליקציה.

פרמטרים

  • קריאה חוזרת (callback)

    פונקציה אופציונלית

    הפרמטר callback נראה כך:

    (sockets: SocketInfo[]) => void

החזרות

  • Promise&lt;SocketInfo[]&gt;

    Chrome מגרסה 91 ואילך

    הבטחות נתמכות רק במניפסט מגרסה V3 ואילך, בפלטפורמות אחרות צריך להשתמש בקריאות חוזרות (callback).

listenUsingL2cap()

הבטחה
chrome.bluetoothSocket.listenUsingL2cap(
  socketId: number,
  uuid: string,
  options?: ListenOptions,
  callback?: function,
)

האזנה לחיבורים באמצעות פרוטוקול L2CAP.

פרמטרים

  • socketId

    number

    מזהה ה-socket.

  • Uuid

    מחרוזת

    מזהה ייחודי אוניברסלי (UUID) של שירות להאזנה.

  • אפשרויות

    ListenOptions אופציונלי

    אפשרויות נוספות של השירות.

  • קריאה חוזרת (callback)

    פונקציה אופציונלית

    הפרמטר callback נראה כך:

    () => void

החזרות

  • הבטחה<Empty>

    Chrome מגרסה 91 ואילך

    הבטחות נתמכות רק במניפסט מגרסה V3 ואילך, בפלטפורמות אחרות צריך להשתמש בקריאות חוזרות (callback).

listenUsingRfcomm()

הבטחה
chrome.bluetoothSocket.listenUsingRfcomm(
  socketId: number,
  uuid: string,
  options?: ListenOptions,
  callback?: function,
)

זיהוי חיבורים באמצעות פרוטוקול RFCOMM.

פרמטרים

  • socketId

    number

    מזהה ה-socket.

  • Uuid

    מחרוזת

    מזהה ייחודי אוניברסלי (UUID) של שירות להאזנה.

  • אפשרויות

    ListenOptions אופציונלי

    אפשרויות נוספות של השירות.

  • קריאה חוזרת (callback)

    פונקציה אופציונלית

    הפרמטר callback נראה כך:

    () => void

החזרות

  • הבטחה<Empty>

    Chrome מגרסה 91 ואילך

    הבטחות נתמכות רק במניפסט מגרסה V3 ואילך, בפלטפורמות אחרות צריך להשתמש בקריאות חוזרות (callback).

send()

הבטחה
chrome.bluetoothSocket.send(
  socketId: number,
  data: ArrayBuffer,
  callback?: function,
)

שליחת נתונים בשקע ה-Bluetooth הנתון.

פרמטרים

  • socketId

    number

    מזהה ה-socket.

  • נתונים

    ArrayBuffer

    הנתונים לשליחה.

  • קריאה חוזרת (callback)

    פונקציה אופציונלית

    הפרמטר callback נראה כך:

    (bytesSent: number) => void

    • bytesSent

      number

      מספר הבייטים שנשלחו.

החזרות

  • Promise&lt;number&gt;

    Chrome מגרסה 91 ואילך

    הבטחות נתמכות רק במניפסט מגרסה V3 ואילך, בפלטפורמות אחרות צריך להשתמש בקריאות חוזרות (callback).

setPaused()

הבטחה
chrome.bluetoothSocket.setPaused(
  socketId: number,
  paused: boolean,
  callback?: function,
)

המדיניות מפעילה או משביתה שקע מחובר כך שלא יקבל הודעות מהעמית שלו, או משקע האזנה שלא יקבל חיבורים חדשים. ערך ברירת המחדל הוא 'FALSE'. לרוב, אפליקציה משתמשת בהשהיה של שקע מחובר כדי לווסת נתונים שנשלחים על ידי אפליקציה להשוואה. כששקע מחובר במצב השהיה, לא מתבצעת הפעלה של onReceiveאירוע. כאשר מחברים ומבטלים את ההשהיה של שקע, אירועי onReceive יושמעו שוב כאשר מתקבלות הודעות. כאשר שקע האזנה מושהה, חיבורים חדשים מתקבלים עד שהעיכוב יתמלא ולאחר מכן יידחו בקשות חיבור נוספות. אירועי onAccept מוגברים רק כשמבטלים את השהיה של השקע.

פרמטרים

  • socketId

    number

  • מושהה

    בוליאני

  • קריאה חוזרת (callback)

    פונקציה אופציונלית

    הפרמטר callback נראה כך:

    () => void

החזרות

  • הבטחה<Empty>

    Chrome מגרסה 91 ואילך

    הבטחות נתמכות רק במניפסט מגרסה V3 ואילך, בפלטפורמות אחרות צריך להשתמש בקריאות חוזרות (callback).

update()

הבטחה
chrome.bluetoothSocket.update(
  socketId: number,
  properties: SocketProperties,
  callback?: function,
)

עדכון המאפיינים של ה-socket.

פרמטרים

  • socketId

    number

    מזהה ה-socket.

  • נכסים

    המאפיינים שצריך לעדכן.

  • קריאה חוזרת (callback)

    פונקציה אופציונלית

    הפרמטר callback נראה כך:

    () => void

החזרות

  • הבטחה<Empty>

    Chrome מגרסה 91 ואילך

    הבטחות נתמכות רק במניפסט מגרסה V3 ואילך, בפלטפורמות אחרות צריך להשתמש בקריאות חוזרות (callback).

אירועים

onAccept

chrome.bluetoothSocket.onAccept.addListener(
  callback: function,
)

האירוע שהתרחש כשנוצר חיבור לשקע מסוים.

פרמטרים

  • קריאה חוזרת (callback)

    פונקציה

    הפרמטר callback נראה כך:

    (info: AcceptInfo) => void

onAcceptError

chrome.bluetoothSocket.onAcceptError.addListener(
  callback: function,
)

האירוע שהתרחש כשאירעה שגיאת רשת בזמן שזמן הריצה חיכה לחיבורים חדשים בשקע הנתון. אחרי הגדרת האירוע, ה-socket יוגדר לערך paused ולא יתווספו עוד אירועים מסוג onAccept ל-socket הזה.

פרמטרים

onReceive

chrome.bluetoothSocket.onReceive.addListener(
  callback: function,
)

אירוע שמתרחש לאחר שהתקבלו נתונים של שקע מסוים.

פרמטרים

  • קריאה חוזרת (callback)

    פונקציה

    הפרמטר callback נראה כך:

    (info: ReceiveInfo) => void

onReceiveError

chrome.bluetoothSocket.onReceiveError.addListener(
  callback: function,
)

האירוע התרחש כשאירעה שגיאת רשת בזמן שזמן הריצה חיכה לנתונים בשקע. אחרי הגדרת האירוע, ה-socket יוגדר לערך paused ולא יתווספו עוד אירועים מסוג onReceive ל-socket הזה.

פרמטרים