chrome.bluetoothSocket

תיאור

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

מניפסט

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

"bluetooth"

סוגים

AcceptError

טיפוסים בני מנייה (enum)

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

"not_listening"
השקע לא מאזין.

AcceptErrorInfo

תכונות

  • error

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

  • errorMessage

    מחרוזת

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

  • socketId

    מספר

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

AcceptInfo

תכונות

  • clientSocketId

    מספר

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

  • socketId

    מספר

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

CreateInfo

תכונות

  • socketId

    מספר

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

ListenOptions

תכונות

  • עיכוב

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

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

  • ערוץ

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

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

  • .psm

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

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

ReceiveError

טיפוסים בני מנייה (enum)

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

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

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

ReceiveErrorInfo

תכונות

  • error

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

  • errorMessage

    מחרוזת

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

  • socketId

    מספר

    מזהה השקע.

ReceiveInfo

תכונות

  • נתונים

    ArrayBuffer

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

  • socketId

    מספר

    מזהה השקע.

SocketInfo

תכונות

  • כתובת

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

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

  • bufferSize

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

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

  • מחובר

    boolean

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

  • name

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

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

  • מושהה

    boolean

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

  • מתמיד

    boolean

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

  • socketId

    מספר

    מזהה השקע.

  • uuid

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

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

SocketProperties

תכונות

  • bufferSize

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

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

  • name

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

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

  • מתמיד

    בוליאני אופציונלי

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

שיטות

close()

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

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

פרמטרים

  • socketId

    מספר

    מזהה השקע.

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

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

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

    ()=>void

החזרות

  • Promise<void>

    Chrome 91 ומעלה

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

connect()

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

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

פרמטרים

  • socketId

    מספר

    מזהה השקע.

  • כתובת

    מחרוזת

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

  • uuid

    מחרוזת

    מזהה ה-UUID של השירות שאליו יש להתחבר.

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

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

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

    ()=>void

החזרות

  • Promise<void>

    Chrome 91 ומעלה

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

create()

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

יצירה של שקע Bluetooth.

פרמטרים

  • נכסים

    SocketProperties אופציונלי

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

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

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

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

    (createInfo: CreateInfo)=>void

    • createInfo

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

החזרות

  • Promise<CreateInfo>

    Chrome 91 ומעלה

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

disconnect()

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

מנתקים את השקע. מזהה השקע נשאר בתוקף.

פרמטרים

  • socketId

    מספר

    מזהה השקע.

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

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

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

    ()=>void

החזרות

  • Promise<void>

    Chrome 91 ומעלה

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

getInfo()

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

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

פרמטרים

  • socketId

    מספר

    מזהה השקע.

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

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

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

    (socketInfo: SocketInfo)=>void

    • socketInfo

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

החזרות

  • Promise<SocketInfo>

    Chrome 91 ומעלה

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

getSockets()

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

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

פרמטרים

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

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

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

    (sockets: SocketInfo[])=>void

החזרות

  • Promise<SocketInfo[]>

    Chrome 91 ומעלה

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

listenUsingL2cap()

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

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

פרמטרים

  • socketId

    מספר

    מזהה השקע.

  • uuid

    מחרוזת

    UUID של השירות שצריך להאזין לו.

  • אפשרויות

    ListenOptions אופציונלי

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

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

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

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

    ()=>void

החזרות

  • Promise<void>

    Chrome 91 ומעלה

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

listenUsingRfcomm()

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

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

פרמטרים

  • socketId

    מספר

    מזהה השקע.

  • uuid

    מחרוזת

    UUID של השירות שצריך להאזין לו.

  • אפשרויות

    ListenOptions אופציונלי

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

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

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

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

    ()=>void

החזרות

  • Promise<void>

    Chrome 91 ומעלה

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

send()

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

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

פרמטרים

  • socketId

    מספר

    מזהה השקע.

  • נתונים

    ArrayBuffer

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

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

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

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

    (bytesSent: number)=>void

    • bytesSent

      מספר

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

החזרות

  • הבטחה<number>

    Chrome 91 ומעלה

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

setPaused()

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

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

פרמטרים

  • socketId

    מספר

  • מושהה

    boolean

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

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

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

    ()=>void

החזרות

  • Promise<void>

    Chrome 91 ומעלה

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

update()

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

עדכון מאפייני השקע.

פרמטרים

  • socketId

    מספר

    מזהה השקע.

  • נכסים

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

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

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

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

    ()=>void

החזרות

  • Promise<void>

    Chrome 91 ומעלה

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

אירועים

onAccept

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

אירוע שנוצר כשנוצר חיבור לשקע נתון.

פרמטרים

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

    פונקציה

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

    (info: AcceptInfo)=>void

onAcceptError

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

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

פרמטרים

onReceive

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

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

פרמטרים

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

    פונקציה

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

    (info: ReceiveInfo)=>void

onReceiveError

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

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

פרמטרים