chrome.bluetoothSocket

Deskripsi

Gunakan chrome.bluetoothSocket API untuk mengirim dan menerima data ke perangkat Bluetooth menggunakan koneksi RFCOMM dan L2CAP.

Manifes

Kunci berikut harus dideklarasikan dalam manifes untuk menggunakan API ini.

"bluetooth"

Jenis

AcceptError

Enum

"system_error"
Terjadi error sistem dan koneksi mungkin tidak dapat dipulihkan.

"not_listening"
Socket tidak memproses.

AcceptErrorInfo

Properti

  • error

    Kode error yang menunjukkan apa yang salah.

  • 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 diaktifkan 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

    nomor opsional

    Panjang antrean pendengar soket. Nilai default bergantung pada subsistem host sistem operasi.

  • saluran

    nomor opsional

    Saluran RFCOMM yang digunakan oleh listenUsingRfcomm. Jika ditentukan, saluran ini tidak boleh digunakan sebelumnya atau panggilan metode akan gagal. Jika tidak ditentukan, saluran yang tidak digunakan akan dialokasikan secara otomatis.

  • psm

    nomor 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 dialokasikan secara otomatis.

ReceiveError

Enum

"disconnected"
Koneksi terputus.

"system_error"
Terjadi error sistem dan koneksi mungkin tidak dapat dipulihkan.

"not_connected"
Soket belum terhubung.

ReceiveErrorInfo

Properti

  • error

    Kode error yang menunjukkan apa yang salah.

  • errorMessage

    string

    Pesan error.

  • socketId

    angka

    ID soket.

ReceiveInfo

Properti

  • data

    ArrayBuffer

    Data yang diterima, dengan ukuran maksimum bufferSize.

  • socketId

    angka

    ID soket.

SocketInfo

Properti

  • alamat

    string opsional

    Jika soket yang mendasarinya terhubung, berisi alamat Bluetooth perangkat yang terhubung dengannya.

  • bufferSize

    nomor opsional

    Ukuran buffer yang digunakan untuk menerima data. Jika ukuran buffer tidak ditentukan secara eksplisit, nilai tidak akan diberikan.

  • terhubung

    boolean

    Tanda yang menunjukkan apakah soket terhubung ke peer jarak jauh.

  • nama

    string opsional

    String yang ditentukan aplikasi yang terkait dengan soket.

  • dijeda

    boolean

    Flag yang menunjukkan apakah soket terhubung memblokir peer-nya untuk mengirimkan lebih banyak data, atau apakah permintaan koneksi pada soket pendengar dikirim melalui peristiwa onAccept atau diantrekan dalam backlog antrean pendengar. Lihat setPaused. Nilai defaultnya adalah "false".

  • persisten

    boolean

    Flag yang menunjukkan apakah soket tetap terbuka saat halaman peristiwa aplikasi dibatalkan pemuatannya (lihat SocketProperties.persistent). Nilai defaultnya adalah "false".

  • socketId

    angka

    ID soket.

  • uuid

    string opsional

    Jika soket yang mendasarinya terhubung, berisi informasi tentang UUID layanan yang terhubung, atau jika soket yang mendasarinya sedang memproses permintaan, berisi informasi tentang UUID layanan yang sedang diproses.

SocketProperties

Properti

  • bufferSize

    nomor 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

    Flag yang menunjukkan apakah soket dibiarkan terbuka saat halaman acara aplikasi dibatalkan pemuatannya (lihat Mengelola Siklus Proses Aplikasi). Nilai defaultnya adalah false. Saat aplikasi dimuat, soket yang sebelumnya dibuka dengan persistent=true dapat diambil dengan getSockets.

Metode

close()

Janji
chrome.bluetoothSocket.close(
  socketId: number,
  callback?: function,
)
: Promise<void>

Memutuskan koneksi dan menghancurkan soket. Setiap soket yang dibuat harus ditutup setelah digunakan. ID soket tidak lagi valid segera setelah fungsi dipanggil. Namun, soket dijamin hanya akan ditutup saat callback dipanggil.

Parameter

  • socketId

    angka

    ID soket.

  • callback

    fungsi opsional

    Parameter callback terlihat seperti:

    () => void

Hasil

  • Promise<void>

    Chrome 91+

    Promise hanya didukung untuk Manifest V3 dan yang lebih baru, platform lain harus menggunakan callback.

connect()

Janji
chrome.bluetoothSocket.connect(
  socketId: number,
  address: string,
  uuid: string,
  callback?: function,
)
: Promise<void>

Menghubungkan soket ke perangkat Bluetooth jarak jauh. Saat operasi connect berhasil diselesaikan, peristiwa onReceive akan muncul saat data diterima dari peer. Jika terjadi error jaringan saat runtime menerima paket, peristiwa onReceiveError akan muncul, dan tidak ada lagi peristiwa onReceive yang akan muncul untuk soket ini hingga 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:

    () => void

Hasil

  • Promise<void>

    Chrome 91+

    Promise hanya didukung untuk Manifest V3 dan yang lebih baru, platform lain harus menggunakan callback.

create()

Janji
chrome.bluetoothSocket.create(
  properties?: SocketProperties,
  callback?: function,
)
: Promise<CreateInfo>

Membuat soket Bluetooth.

Parameter

  • properti

    Properti soket (opsional).

  • callback

    fungsi opsional

    Parameter callback terlihat seperti:

    (createInfo: CreateInfo) => void

Hasil

  • Promise<CreateInfo>

    Chrome 91+

    Promise hanya didukung untuk Manifest V3 dan yang lebih baru, platform lain harus menggunakan callback.

disconnect()

Janji
chrome.bluetoothSocket.disconnect(
  socketId: number,
  callback?: function,
)
: Promise<void>

Memutuskan koneksi soket. ID soket tetap valid.

Parameter

  • socketId

    angka

    ID soket.

  • callback

    fungsi opsional

    Parameter callback terlihat seperti:

    () => void

Hasil

  • Promise<void>

    Chrome 91+

    Promise hanya didukung untuk Manifest V3 dan yang lebih baru, platform lain harus menggunakan callback.

getInfo()

Janji
chrome.bluetoothSocket.getInfo(
  socketId: number,
  callback?: function,
)
: Promise<SocketInfo>

Mengambil status soket yang diberikan.

Parameter

  • socketId

    angka

    ID soket.

  • callback

    fungsi opsional

    Parameter callback terlihat seperti:

    (socketInfo: SocketInfo) => void

    • socketInfo

      Objek yang berisi informasi soket.

Hasil

  • Promise<SocketInfo>

    Chrome 91+

    Promise hanya didukung untuk Manifest V3 dan yang lebih baru, platform lain harus menggunakan callback.

getSockets()

Janji
chrome.bluetoothSocket.getSockets(
  callback?: function,
)
: Promise<SocketInfo[]>

Mengambil daftar soket yang saat ini terbuka dan dimiliki oleh aplikasi.

Parameter

  • callback

    fungsi opsional

    Parameter callback terlihat seperti:

    (sockets: SocketInfo[]) => void

Hasil

  • Promise<SocketInfo[]>

    Chrome 91+

    Promise hanya didukung untuk Manifest V3 dan yang lebih baru, platform lain harus menggunakan callback.

listenUsingL2cap()

Janji
chrome.bluetoothSocket.listenUsingL2cap(
  socketId: number,
  uuid: string,
  options?: ListenOptions,
  callback?: function,
)
: Promise<void>

Mendengarkan koneksi menggunakan protokol L2CAP.

Parameter

  • socketId

    angka

    ID soket.

  • uuid

    string

    UUID layanan yang akan diproses.

  • opsi

    ListenOptions opsional

    Opsi tambahan opsional untuk layanan.

  • callback

    fungsi opsional

    Parameter callback terlihat seperti:

    () => void

Hasil

  • Promise<void>

    Chrome 91+

    Promise hanya didukung untuk Manifest V3 dan yang lebih baru, platform lain harus menggunakan callback.

listenUsingRfcomm()

Janji
chrome.bluetoothSocket.listenUsingRfcomm(
  socketId: number,
  uuid: string,
  options?: ListenOptions,
  callback?: function,
)
: Promise<void>

Mendengarkan koneksi menggunakan protokol RFCOMM.

Parameter

  • socketId

    angka

    ID soket.

  • uuid

    string

    UUID layanan yang akan diproses.

  • opsi

    ListenOptions opsional

    Opsi tambahan opsional untuk layanan.

  • callback

    fungsi opsional

    Parameter callback terlihat seperti:

    () => void

Hasil

  • Promise<void>

    Chrome 91+

    Promise hanya didukung untuk Manifest V3 dan yang lebih baru, platform lain harus menggunakan callback.

send()

Janji
chrome.bluetoothSocket.send(
  socketId: number,
  data: ArrayBuffer,
  callback?: function,
)
: Promise<number>

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:

    (bytesSent: number) => void

    • bytesSent

      angka

      Jumlah byte yang dikirim.

Hasil

  • Promise<number>

    Chrome 91+

    Promise hanya didukung untuk Manifest V3 dan yang lebih baru, platform lain harus menggunakan callback.

setPaused()

Janji
chrome.bluetoothSocket.setPaused(
  socketId: number,
  paused: boolean,
  callback?: function,
)
: Promise<void>

Mengaktifkan atau menonaktifkan soket yang terhubung agar dapat menerima pesan dari peer-nya, atau soket pendengar agar dapat menerima koneksi baru. Nilai defaultnya adalah "false". Menghentikan sementara soket yang terhubung biasanya digunakan oleh aplikasi untuk membatasi data yang dikirim oleh peer-nya. Saat soket yang terhubung dijeda, tidak ada peristiwa onReceiveyang muncul. Saat soket terhubung dan tidak dijeda, peristiwa onReceive akan muncul lagi saat pesan diterima. Saat soket pendengar dijeda, koneksi baru akan diterima hingga backlog-nya penuh, lalu permintaan koneksi tambahan akan ditolak. Peristiwa onAccept hanya dipicu saat soket tidak dijeda.

Parameter

  • socketId

    angka

  • dijeda

    boolean

  • callback

    fungsi opsional

    Parameter callback terlihat seperti:

    () => void

Hasil

  • Promise<void>

    Chrome 91+

    Promise hanya didukung untuk Manifest V3 dan yang lebih baru, platform lain harus menggunakan callback.

update()

Janji
chrome.bluetoothSocket.update(
  socketId: number,
  properties: SocketProperties,
  callback?: function,
)
: Promise<void>

Memperbarui properti socket.

Parameter

  • socketId

    angka

    ID soket.

  • properti

    Properti yang akan diperbarui.

  • callback

    fungsi opsional

    Parameter callback terlihat seperti:

    () => void

Hasil

  • Promise<void>

    Chrome 91+

    Promise hanya didukung untuk Manifest V3 dan yang lebih baru, platform lain harus menggunakan callback.

Acara

onAccept

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

Peristiwa dipicu saat koneksi telah dibuat untuk soket tertentu.

Parameter

  • callback

    fungsi

    Parameter callback terlihat seperti:

    (info: AcceptInfo) => void

onAcceptError

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

Peristiwa yang muncul saat terjadi error jaringan ketika runtime menunggu koneksi baru pada soket tertentu. Setelah peristiwa ini dimunculkan, soket akan disetel ke paused dan tidak ada lagi peristiwa onAccept yang dimunculkan untuk soket ini.

Parameter

onReceive

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

Peristiwa dipicu saat data telah diterima untuk soket tertentu.

Parameter

onReceiveError

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

Peristiwa yang muncul saat terjadi error jaringan ketika runtime sedang menunggu data di soket. Setelah peristiwa ini dimunculkan, soket akan disetel ke paused dan tidak ada lagi peristiwa onReceive yang dimunculkan untuk soket ini.

Parameter