תיאור
אפשר להשתמש ב-API של chrome.bluetoothSocket
כדי לשלוח ולקבל נתונים למכשירי Bluetooth באמצעות חיבורי RFCOMM ו-L2CAP.
מניפסט
סוגים
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<CreateInfo>
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<SocketInfo>
Chrome מגרסה 91 ואילךהבטחות נתמכות רק במניפסט מגרסה V3 ואילך, בפלטפורמות אחרות צריך להשתמש בקריאות חוזרות (callback).
getSockets()
chrome.bluetoothSocket.getSockets(
callback?: function,
)
אחזור רשימה של השקעים הפתוחים הנוכחיים שבבעלות האפליקציה.
פרמטרים
-
קריאה חוזרת (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
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<number>
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 הזה.
פרמטרים
-
קריאה חוזרת (callback)
פונקציה
הפרמטר
callback
נראה כך:(info: AcceptErrorInfo) => void
-
מידע
-
onReceive
chrome.bluetoothSocket.onReceive.addListener(
callback: function,
)
אירוע שמתרחש לאחר שהתקבלו נתונים של שקע מסוים.
פרמטרים
-
קריאה חוזרת (callback)
פונקציה
הפרמטר
callback
נראה כך:(info: ReceiveInfo) => void
-
מידע
-
onReceiveError
chrome.bluetoothSocket.onReceiveError.addListener(
callback: function,
)
האירוע התרחש כשאירעה שגיאת רשת בזמן שזמן הריצה חיכה לנתונים בשקע. אחרי הגדרת האירוע, ה-socket יוגדר לערך paused
ולא יתווספו עוד אירועים מסוג onReceive
ל-socket הזה.
פרמטרים
-
קריאה חוזרת (callback)
פונקציה
הפרמטר
callback
נראה כך:(info: ReceiveErrorInfo) => void
-
מידע
-