Deskripsi
Gunakan chrome.bluetoothSocket
API untuk mengirim dan menerima data ke perangkat Bluetooth menggunakan koneksi RFCOMM dan L2CAP.
Manifes
Jenis
AcceptError
Enum
"system_error"
Terjadi error sistem dan koneksi mungkin tidak dapat dipulihkan.
"not_listening"
Soket tidak mendeteksi.
AcceptErrorInfo
Properti
-
error
Kode error yang menunjukkan masalah yang terjadi.
-
errorMessage
string
Pesan error.
-
socketId
angka
ID soket server.
AcceptInfo
Properti
-
clientSocketId
angka
ID soket klien, yaitu ID soket dari koneksi yang baru dibuat. ID soket ini hanya boleh digunakan dengan fungsi dari namespace
chrome.bluetoothSocket
. Perhatikan bahwa soket klien awalnya dijeda dan harus dibatalkan secara eksplisit oleh aplikasi untuk mulai menerima data. -
socketId
angka
ID soket server.
CreateInfo
Properti
-
socketId
angka
ID soket yang baru dibuat. Perhatikan bahwa ID soket yang dibuat dari API ini tidak kompatibel dengan ID soket yang dibuat dari API lain, seperti API
[
sockets.tcp](../sockets_tcp/)
.
ListenOptions
Properti
-
backlog
angka opsional
Panjang antrean pemrosesan soket. Nilai defaultnya bergantung pada subsistem host sistem operasi.
-
saluran
angka opsional
Saluran RFCOMM yang digunakan oleh
listenUsingRfcomm
. Jika ditentukan, saluran ini tidak boleh digunakan sebelumnya atau panggilan metode akan gagal. Bila tidak ditetapkan, saluran yang tidak digunakan akan dialokasikan secara otomatis. -
psm
angka opsional
PSM L2CAP yang digunakan oleh
listenUsingL2cap
. Jika ditentukan, PSM ini tidak boleh digunakan sebelumnya atau panggilan metode akan gagal. Jika tidak ditentukan, PSM yang tidak digunakan akan otomatis dialokasikan.
ReceiveError
Enum
"terputus"
Koneksi terputus.
"system_error"
Terjadi error sistem dan koneksi mungkin tidak dapat dipulihkan.
"not_connection"
Soket belum terhubung.
ReceiveErrorInfo
Properti
-
error
Kode error yang menunjukkan masalah yang terjadi.
-
errorMessage
string
Pesan error.
-
socketId
angka
ID soket.
ReceiveInfo
Properti
-
data
ArrayBuffer
Data yang diterima, dengan ukuran maksimal
bufferSize
. -
socketId
angka
ID soket.
SocketInfo
Properti
-
alamat
string opsional
Jika soket yang mendasarinya terhubung, berisi alamat Bluetooth perangkat yang terhubung dengannya.
-
bufferSize
angka opsional
Ukuran buffer yang digunakan untuk menerima data. Jika tidak ada ukuran buffer yang ditentukan secara eksplisit, nilainya tidak diberikan.
-
terhubung
boolean
Tanda yang menunjukkan apakah soket terhubung ke peer jarak jauh atau tidak.
-
nama
string opsional
String yang ditentukan aplikasi yang terkait dengan soket.
-
dijeda
boolean
Tanda yang menunjukkan apakah soket yang terhubung memblokir peer-nya agar tidak mengirim lebih banyak data, atau apakah permintaan koneksi pada soket pemroses dikirim melalui peristiwa
onAccept
atau dimasukkan ke dalam antrean di backlog antrean pemrosesan. LihatsetPaused
. Nilai defaultnya adalah "false". -
persisten
boolean
Tanda yang menunjukkan apakah soket tetap terbuka saat halaman peristiwa aplikasi dihapus muatannya (lihat
SocketProperties.persistent
). Nilai defaultnya adalah "false". -
socketId
angka
ID soket.
-
uuid
string opsional
Jika soket yang mendasari terhubung, berisi informasi tentang UUID layanan yang terhubung dengannya, atau jika soket yang mendasarinya sedang memproses, berisi informasi tentang UUID layanan yang digunakannya.
SocketProperties
Properti
-
bufferSize
angka opsional
Ukuran buffer yang digunakan untuk menerima data. Nilai defaultnya adalah 4096.
-
nama
string opsional
String yang ditentukan aplikasi yang terkait dengan soket.
-
persisten
boolean opsional
Tanda yang menunjukkan apakah soket dibiarkan terbuka saat halaman peristiwa aplikasi dihapus muatannya (lihat Mengelola Siklus Proses Aplikasi). Nilai defaultnya adalah
false.
Saat aplikasi dimuat, setiap soket yang sebelumnya dibuka dengan persistent=true dapat diambil dengangetSockets
.
Metode
close()
chrome.bluetoothSocket.close(
socketId: number,
callback?: function,
)
Memutuskan dan menghancurkan soket. Setiap soket yang dibuat harus ditutup setelah digunakan. ID soket tidak lagi valid segera pada fungsi yang dipanggil. Akan tetapi, soket dijamin akan ditutup hanya ketika callback dipanggil.
Parameter
-
socketId
angka
ID soket.
-
callback
fungsi opsional
Parameter
callback
terlihat seperti ini:() => void
Hasil
-
Janji<void>
Chrome 91 dan yang lebih baruPromise hanya didukung untuk Manifes V3 dan yang lebih baru, platform lain perlu menggunakan callback.
connect()
chrome.bluetoothSocket.connect(
socketId: number,
address: string,
uuid: string,
callback?: function,
)
Menghubungkan soket ke perangkat Bluetooth jarak jauh. Saat operasi connect
berhasil diselesaikan, peristiwa onReceive
akan dimunculkan ketika data diterima dari pembanding. Jika terjadi error jaringan saat runtime menerima paket, peristiwa onReceiveError
akan dipicu, dan pada saat itu tidak ada lagi peristiwa onReceive
yang akan dimunculkan untuk soket ini sampai metode setPaused(false)
dipanggil.
Parameter
-
socketId
angka
ID soket.
-
alamat
string
Alamat perangkat Bluetooth.
-
uuid
string
UUID layanan yang akan dihubungkan.
-
callback
fungsi opsional
Parameter
callback
terlihat seperti ini:() => void
Hasil
-
Janji<void>
Chrome 91 dan yang lebih baruPromise hanya didukung untuk Manifes V3 dan yang lebih baru, platform lain perlu menggunakan callback.
create()
chrome.bluetoothSocket.create(
properties?: SocketProperties,
callback?: function,
)
Membuat soket Bluetooth.
Parameter
-
properti
SocketProperties opsional
Properti soket (opsional).
-
callback
fungsi opsional
Parameter
callback
terlihat seperti ini:(createInfo: CreateInfo) => void
-
createInfo
Hasil pembuatan soket.
-
Hasil
-
Promise<CreateInfo>
Chrome 91 dan yang lebih baruPromise hanya didukung untuk Manifes V3 dan yang lebih baru, platform lain perlu menggunakan callback.
disconnect()
chrome.bluetoothSocket.disconnect(
socketId: number,
callback?: function,
)
Putuskan sambungan soket. ID soket akan tetap valid.
Parameter
-
socketId
angka
ID soket.
-
callback
fungsi opsional
Parameter
callback
terlihat seperti ini:() => void
Hasil
-
Janji<void>
Chrome 91 dan yang lebih baruPromise hanya didukung untuk Manifes V3 dan yang lebih baru, platform lain perlu menggunakan callback.
getInfo()
chrome.bluetoothSocket.getInfo(
socketId: number,
callback?: function,
)
Mengambil status soket yang diberikan.
Parameter
-
socketId
angka
ID soket.
-
callback
fungsi opsional
Parameter
callback
terlihat seperti ini:(socketInfo: SocketInfo) => void
-
socketInfo
Objek yang berisi informasi soket.
-
Hasil
-
Promise<SocketInfo>
Chrome 91 dan yang lebih baruPromise hanya didukung untuk Manifes V3 dan yang lebih baru, platform lain perlu menggunakan callback.
getSockets()
chrome.bluetoothSocket.getSockets(
callback?: function,
)
Mengambil daftar soket yang saat ini dibuka milik aplikasi.
Parameter
-
callback
fungsi opsional
Parameter
callback
terlihat seperti ini:(sockets: SocketInfo[]) => void
-
soket
-
Hasil
-
Promise<SocketInfo[]>
Chrome 91 dan yang lebih baruPromise hanya didukung untuk Manifes V3 dan yang lebih baru, platform lain perlu menggunakan callback.
listenUsingL2cap()
chrome.bluetoothSocket.listenUsingL2cap(
socketId: number,
uuid: string,
options?: ListenOptions,
callback?: function,
)
Mendengarkan koneksi menggunakan protokol L2CAP.
Parameter
-
socketId
angka
ID soket.
-
uuid
string
UUID layanan untuk diproses.
-
opsi
ListenOptions opsional
Opsi tambahan opsional untuk layanan.
-
callback
fungsi opsional
Parameter
callback
terlihat seperti ini:() => void
Hasil
-
Janji<void>
Chrome 91 dan yang lebih baruPromise hanya didukung untuk Manifes V3 dan yang lebih baru, platform lain perlu menggunakan callback.
listenUsingRfcomm()
chrome.bluetoothSocket.listenUsingRfcomm(
socketId: number,
uuid: string,
options?: ListenOptions,
callback?: function,
)
Memproses koneksi menggunakan protokol RFCOMM.
Parameter
-
socketId
angka
ID soket.
-
uuid
string
UUID layanan untuk diproses.
-
opsi
ListenOptions opsional
Opsi tambahan opsional untuk layanan.
-
callback
fungsi opsional
Parameter
callback
terlihat seperti ini:() => void
Hasil
-
Janji<void>
Chrome 91 dan yang lebih baruPromise hanya didukung untuk Manifes V3 dan yang lebih baru, platform lain perlu menggunakan callback.
send()
chrome.bluetoothSocket.send(
socketId: number,
data: ArrayBuffer,
callback?: function,
)
Mengirim data pada soket Bluetooth yang ditentukan.
Parameter
-
socketId
angka
ID soket.
-
data
ArrayBuffer
Data yang akan dikirim.
-
callback
fungsi opsional
Parameter
callback
terlihat seperti ini:(bytesSent: number) => void
-
bytesSent
angka
Jumlah byte yang dikirim.
-
Hasil
-
Promise<number>
Chrome 91 dan yang lebih baruPromise hanya didukung untuk Manifes V3 dan yang lebih baru, platform lain perlu menggunakan callback.
setPaused()
chrome.bluetoothSocket.setPaused(
socketId: number,
paused: boolean,
callback?: function,
)
Mengaktifkan atau menonaktifkan soket yang terhubung agar tidak menerima pesan dari peer-nya, atau soket yang mendengarkan agar tidak menerima koneksi baru. Nilai defaultnya adalah "false". Menjeda soket yang terhubung biasanya digunakan oleh aplikasi untuk membatasi data yang dikirim oleh pembandingnya. Saat soket yang terhubung dijeda, tidak ada peristiwa onReceive
yang dipicu. Saat soket terhubung dan batal dijeda, peristiwa onReceive
akan dimunculkan lagi saat pesan diterima. Saat soket yang mendengarkan dijeda, koneksi baru diterima hingga backlog-nya penuh, lalu permintaan koneksi tambahan ditolak. Peristiwa onAccept
hanya dimunculkan saat soket dibatalkan jedanya.
Parameter
-
socketId
angka
-
dijeda
boolean
-
callback
fungsi opsional
Parameter
callback
terlihat seperti ini:() => void
Hasil
-
Janji<void>
Chrome 91 dan yang lebih baruPromise hanya didukung untuk Manifes V3 dan yang lebih baru, platform lain perlu menggunakan callback.
update()
chrome.bluetoothSocket.update(
socketId: number,
properties: SocketProperties,
callback?: function,
)
Memperbarui properti soket.
Parameter
-
socketId
angka
ID soket.
-
properti
Properti yang akan diperbarui.
-
callback
fungsi opsional
Parameter
callback
terlihat seperti ini:() => void
Hasil
-
Janji<void>
Chrome 91 dan yang lebih baruPromise hanya didukung untuk Manifes V3 dan yang lebih baru, platform lain perlu menggunakan callback.
Acara
onAccept
chrome.bluetoothSocket.onAccept.addListener(
callback: function,
)
Peristiwa yang dipicu saat koneksi telah dibuat untuk soket tertentu.
Parameter
-
callback
fungsi
Parameter
callback
terlihat seperti ini:(info: AcceptInfo) => void
-
info
-
onAcceptError
chrome.bluetoothSocket.onAcceptError.addListener(
callback: function,
)
Peristiwa yang timbul saat terjadi error jaringan saat runtime menunggu koneksi baru pada soket yang diberikan. Setelah peristiwa ini dipicu, soket disetel ke paused
dan tidak ada lagi peristiwa onAccept
yang dimunculkan untuk soket ini.
Parameter
-
callback
fungsi
Parameter
callback
terlihat seperti ini:(info: AcceptErrorInfo) => void
-
info
-
onReceive
chrome.bluetoothSocket.onReceive.addListener(
callback: function,
)
Peristiwa yang dimunculkan saat data telah diterima untuk soket tertentu.
Parameter
-
callback
fungsi
Parameter
callback
terlihat seperti ini:(info: ReceiveInfo) => void
-
info
-
onReceiveError
chrome.bluetoothSocket.onReceiveError.addListener(
callback: function,
)
Peristiwa muncul saat terjadi error jaringan saat runtime menunggu data di soket. Setelah peristiwa ini dipicu, soket disetel ke paused
dan tidak ada lagi peristiwa onReceive
yang dimunculkan untuk soket ini.
Parameter
-
callback
fungsi
Parameter
callback
terlihat seperti ini:(info: ReceiveErrorInfo) => void
-
info
-