תיאור
משתמשים ב-chrome.bluetoothSocket
API כדי לשלוח ולקבל נתונים למכשירי Bluetooth באמצעות חיבורי RFCOMM ו-L2CAP.
מניפסט
סוגים
AcceptError
Enum
"system_error"
אירעה שגיאת מערכת, ויכול להיות שלא ניתן יהיה לשחזר את החיבור.
"not_listening"
השקע לא מקשיב.
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
מספר אופציונלי
ה-L2CAP PSM שמשמש את
listenUsingL2cap
. אם מציינים את ה-PSM, אסור שהיה בשימוש בעבר, אחרת קריאת השיטה תיכשל. אם לא מציינים את הפרמטר הזה, המערכת תקצה באופן אוטומטי PSM שלא בשימוש.
ReceiveError
Enum
"disconnected"
החיבור התנתק.
"system_error"
אירעה שגיאת מערכת, ויכול להיות שלא ניתן יהיה לשחזר את החיבור.
"not_connected"
השקע לא חובר.
ReceiveErrorInfo
מאפיינים
-
error
קוד שגיאה שמציין מה השתבש.
-
errorMessage
מחרוזת
הודעת השגיאה.
-
socketId
number
מזהה השקע.
ReceiveInfo
מאפיינים
-
נתונים
ArrayBuffer
הנתונים שהתקבלו, בגודל מקסימלי של
bufferSize
. -
socketId
number
מזהה השקע.
SocketInfo
מאפיינים
-
כתובת
מחרוזת אופציונלי
אם השקע הבסיסי מחובר, הוא מכיל את כתובת ה-Bluetooth של המכשיר שאליו הוא מחובר.
-
bufferSize
מספר אופציונלי
הגודל של מאגר הנתונים הזמני שמשמש לקבלת נתונים. אם לא צוין גודל מאגר באופן מפורש, לא יסופק ערך.
-
מחובר
בוליאני
סימון שמציין אם השקע מחובר לשותף מרוחק.
-
שם
מחרוזת אופציונלי
מחרוזת שהוגדרה על ידי האפליקציה שמשויכת לשקע.
-
מושהה
בוליאני
דגל שמציין אם שקע מחובר חוסם את השותף שלו מלשלוח נתונים נוספים, או אם בקשות החיבור בשקע שמאזין נשלחות דרך האירוע
onAccept
או נכנסות לתור ברשימה האחורה של יציאות החיפוש.setPaused
. ערך ברירת המחדל הוא 'false'. -
קבוע
בוליאני
דגל שמציין אם השקע נשאר פתוח כשדף האירועים של האפליקציה פורק (ראו
SocketProperties.persistent
). ערך ברירת המחדל הוא 'false'. -
socketId
number
מזהה השקע.
-
uuid
מחרוזת אופציונלי
אם השקע הבסיסי מחובר, הוא מכיל מידע על מזהה ה-UUID של השירות שאליו הוא מחובר. אחרת, אם השקע הבסיסי מקשיב, הוא מכיל מידע על מזהה ה-UUID של השירות שאליו הוא מקשיב.
SocketProperties
מאפיינים
-
bufferSize
מספר אופציונלי
הגודל של מאגר הנתונים הזמני שמשמש לקבלת נתונים. ערך ברירת המחדל הוא 4096.
-
שם
מחרוזת אופציונלי
מחרוזת שהוגדרה על ידי האפליקציה שמשויכת לשקע.
-
קבוע
boolean אופציונלי
דגל שמציין אם השקע נשאר פתוח כשדף האירוע של האפליקציה פורק (ראו ניהול מחזור החיים של האפליקציה). ערך ברירת המחדל הוא
false.
. כשהאפליקציה נטענת, אפשר לאחזר את כל השקעים שנפתחו בעבר עם persistent=true באמצעותgetSockets
.
Methods
close()
chrome.bluetoothSocket.close(
socketId: number,
callback?: function,
)
ניתוק וביטול של השקע. צריך לסגור כל שקע שנוצר אחרי השימוש בו. מזהה השקע כבר לא בתוקף ברגע שמפעילים את הפונקציה. עם זאת, אפשר להבטיח שהשקע ייסגר רק כשפונקציית הקריאה החוזרת תופעל.
פרמטרים
-
socketId
number
מזהה השקע.
-
קריאה חוזרת (callback)
פונקציה אופציונלי
הפרמטר
callback
נראה כך:() => void
החזרות
-
Promise<void>
Chrome מגרסה 91 ואילךיש תמיכה ב-Promises רק ב-Manifest V3 ואילך. בפלטפורמות אחרות צריך להשתמש ב-callbacks.
connect()
chrome.bluetoothSocket.connect(
socketId: number,
address: string,
uuid: string,
callback?: function,
)
חיבור השקע למכשיר Bluetooth מרוחק. כשהפעולה connect
מסתיימת בהצלחה, מתרחשים אירועים מסוג onReceive
כשמתקבלים נתונים מהצירוף. אם מתרחשת שגיאת רשת בזמן שסביבת זמן הריצה מקבלת חבילות, מתרחש אירוע onReceiveError
. בשלב הזה לא יתרחש אירוע onReceive
נוסף בשקע הזה עד שיתבצע קריאה לשיטה setPaused(false)
.
פרמטרים
-
socketId
number
מזהה השקע.
-
כתובת
מחרוזת
הכתובת של מכשיר ה-Bluetooth.
-
uuid
מחרוזת
מזהה ה-UUID של השירות שאליו רוצים להתחבר.
-
קריאה חוזרת (callback)
פונקציה אופציונלי
הפרמטר
callback
נראה כך:() => void
החזרות
-
Promise<void>
Chrome מגרסה 91 ואילךיש תמיכה ב-Promises רק ב-Manifest V3 ואילך. בפלטפורמות אחרות צריך להשתמש ב-callbacks.
create()
chrome.bluetoothSocket.create(
properties?: SocketProperties,
callback?: function,
)
יצירת שקע Bluetooth.
פרמטרים
-
נכסים
SocketProperties אופציונלי
מאפייני השקע (אופציונלי).
-
קריאה חוזרת (callback)
פונקציה אופציונלי
הפרמטר
callback
נראה כך:(createInfo: CreateInfo) => void
-
createInfo
התוצאה של יצירת השקע.
-
החזרות
-
Promise<CreateInfo>
Chrome מגרסה 91 ואילךיש תמיכה ב-Promises רק ב-Manifest V3 ואילך. בפלטפורמות אחרות צריך להשתמש ב-callbacks.
disconnect()
chrome.bluetoothSocket.disconnect(
socketId: number,
callback?: function,
)
מנתקים את השקע. מזהה השקע נשאר בתוקף.
פרמטרים
-
socketId
number
מזהה השקע.
-
קריאה חוזרת (callback)
פונקציה אופציונלי
הפרמטר
callback
נראה כך:() => void
החזרות
-
Promise<void>
Chrome מגרסה 91 ואילךיש תמיכה ב-Promises רק ב-Manifest V3 ואילך. בפלטפורמות אחרות צריך להשתמש ב-callbacks.
getInfo()
chrome.bluetoothSocket.getInfo(
socketId: number,
callback?: function,
)
אחזור המצב של השקע הנתון.
פרמטרים
-
socketId
number
מזהה השקע.
-
קריאה חוזרת (callback)
פונקציה אופציונלי
הפרמטר
callback
נראה כך:(socketInfo: SocketInfo) => void
-
socketInfo
אובייקט שמכיל את פרטי השקע.
-
החזרות
-
Promise<SocketInfo>
Chrome מגרסה 91 ואילךיש תמיכה ב-Promises רק ב-Manifest V3 ואילך. בפלטפורמות אחרות צריך להשתמש ב-callbacks.
getSockets()
chrome.bluetoothSocket.getSockets(
callback?: function,
)
אחזור רשימת השקעים הפתוחים הנוכחיים שבבעלות האפליקציה.
פרמטרים
-
קריאה חוזרת (callback)
פונקציה אופציונלי
הפרמטר
callback
נראה כך:(sockets: SocketInfo[]) => void
-
שקעים
-
החזרות
-
Promise<SocketInfo[]>
Chrome מגרסה 91 ואילךיש תמיכה ב-Promises רק ב-Manifest V3 ואילך. בפלטפורמות אחרות צריך להשתמש ב-callbacks.
listenUsingL2cap()
chrome.bluetoothSocket.listenUsingL2cap(
socketId: number,
uuid: string,
options?: ListenOptions,
callback?: function,
)
האזנה לחיבורים באמצעות פרוטוקול L2CAP.
פרמטרים
-
socketId
number
מזהה השקע.
-
uuid
מחרוזת
ה-UUID של השירות להאזנה.
-
אפשרויות
ListenOptions אופציונלי
אפשרויות נוספות אופציונליות לשירות.
-
קריאה חוזרת (callback)
פונקציה אופציונלי
הפרמטר
callback
נראה כך:() => void
החזרות
-
Promise<void>
Chrome מגרסה 91 ואילךיש תמיכה ב-Promises רק ב-Manifest V3 ואילך. בפלטפורמות אחרות צריך להשתמש ב-callbacks.
listenUsingRfcomm()
chrome.bluetoothSocket.listenUsingRfcomm(
socketId: number,
uuid: string,
options?: ListenOptions,
callback?: function,
)
האזנה לחיבורים באמצעות פרוטוקול RFCOMM.
פרמטרים
-
socketId
number
מזהה השקע.
-
uuid
מחרוזת
ה-UUID של השירות להאזנה.
-
אפשרויות
ListenOptions אופציונלי
אפשרויות נוספות אופציונליות לשירות.
-
קריאה חוזרת (callback)
פונקציה אופציונלי
הפרמטר
callback
נראה כך:() => void
החזרות
-
Promise<void>
Chrome מגרסה 91 ואילךיש תמיכה ב-Promises רק ב-Manifest V3 ואילך. בפלטפורמות אחרות צריך להשתמש ב-callbacks.
send()
chrome.bluetoothSocket.send(
socketId: number,
data: ArrayBuffer,
callback?: function,
)
שליחת נתונים ביציאת ה-Bluetooth שצוינה.
פרמטרים
-
socketId
number
מזהה השקע.
-
נתונים
ArrayBuffer
הנתונים שרוצים לשלוח.
-
קריאה חוזרת (callback)
פונקציה אופציונלי
הפרמטר
callback
נראה כך:(bytesSent: number) => void
-
bytesSent
number
מספר הבייטים שנשלחו.
-
החזרות
-
Promise<number>
Chrome מגרסה 91 ואילךיש תמיכה ב-Promises רק ב-Manifest V3 ואילך. בפלטפורמות אחרות צריך להשתמש ב-callbacks.
setPaused()
chrome.bluetoothSocket.setPaused(
socketId: number,
paused: boolean,
callback?: function,
)
הפונקציה מאפשרת או משביתה את היכולת של שקע מחובר לקבל הודעות מהצינור המקביל, או את היכולת של שקע שמאזין לקבל חיבורים חדשים. ערך ברירת המחדל הוא 'false'. בדרך כלל, אפליקציה משתמשת בהשהיה של שקע מחובר כדי לצמצם את נפח הנתונים שנשלחים על ידי השותף שלה. כששקע מחובר מושהה, לא מתרחש אירוע onReceive
. כשהשקע מחובר ולא מושהה, אירועי onReceive
מתרחשים שוב כשמתקבלות הודעות. כששקע הקשבה מושהה, חיבורים חדשים מתקבלים עד שהתור שלהם מתמלא, ואז בקשות חיבור נוספות נדחות. אירועי onAccept
מתרחשים רק כשה-socket מופעל מחדש.
פרמטרים
-
socketId
number
-
מושהה
בוליאני
-
קריאה חוזרת (callback)
פונקציה אופציונלי
הפרמטר
callback
נראה כך:() => void
החזרות
-
Promise<void>
Chrome מגרסה 91 ואילךיש תמיכה ב-Promises רק ב-Manifest V3 ואילך. בפלטפורמות אחרות צריך להשתמש ב-callbacks.
update()
chrome.bluetoothSocket.update(
socketId: number,
properties: SocketProperties,
callback?: function,
)
עדכון מאפייני השקע.
פרמטרים
-
socketId
number
מזהה השקע.
-
נכסים
המאפיינים שרוצים לעדכן.
-
קריאה חוזרת (callback)
פונקציה אופציונלי
הפרמטר
callback
נראה כך:() => void
החזרות
-
Promise<void>
Chrome מגרסה 91 ואילךיש תמיכה ב-Promises רק ב-Manifest V3 ואילך. בפלטפורמות אחרות צריך להשתמש ב-callbacks.
אירועים
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
-
מידע
-