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 pada sistem dan koneksi mungkin tidak dapat dipulihkan.

"not_listening"
Soket tidak mendengarkan.

AcceptErrorInfo

Properti

  • error

    Kode error yang menunjukkan masalah.

  • 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 secara eksplisit berhenti dijeda 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 pemrosesan soket. Nilai defaultnya 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 otomatis dialokasikan.

  • psm

    nomor opsional

    PSM L2CAP yang digunakan oleh listenUsingL2cap. Jika ditentukan, PSM ini tidak boleh digunakan sebelumnya atau panggilan metode dengan kegagalan. Jika tidak ditentukan, PSM yang tidak digunakan akan otomatis dialokasikan.

ReceiveError

Enum

"terputus"
Koneksi terputus.

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

"not_connection"
Soket belum tersambung.

ReceiveErrorInfo

Properti

  • error

    Kode error yang menunjukkan masalah.

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

  • bufferSize

    nomor opsional

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

  • terhubung

    boolean

    Flag yang menunjukkan apakah soket terhubung ke peer jarak jauh.

  • name

    string opsional

    String yang ditentukan aplikasi yang terkait dengan soket.

  • dijeda

    boolean

    Tanda yang menunjukkan apakah soket yang terhubung akan memblokir peer-nya agar tidak mengirim lebih banyak data, atau apakah permintaan koneksi pada soket pemroses dikirim melalui peristiwa onAccept atau ada dalam antrean di backlog antrean pemrosesan. Lihat setPaused. 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, jika tidak, jika soket yang mendasarinya mendengarkan, akan berisi informasi tentang UUID layanan yang didengarkan.

SocketProperties

Properti

  • bufferSize

    nomor opsional

    Ukuran buffer yang digunakan untuk menerima data. Nilai defaultnya adalah 4096.

  • name

    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 dengan getSockets.

Metode

close()

Promise
chrome.bluetoothSocket.close(
  socketId: number,
  callback?: function,
)

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

Parameter

  • socketId

    angka

    ID soket.

  • callback

    fungsi opsional

    Parameter callback terlihat seperti:

    ()=>void

Hasil

  • Promise<void>

    Chrome 91 dan yang lebih baru

    Promise hanya didukung untuk Manifes V3 dan yang lebih baru, platform lain perlu menggunakan callback.

connect()

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

Menyambungkan soket ke perangkat Bluetooth jarak jauh. Saat operasi connect berhasil diselesaikan, peristiwa onReceive akan dipicu saat data diterima dari peer. Jika terjadi error jaringan saat runtime menerima paket, peristiwa onReceiveError akan muncul, dan setelah itu tidak ada lagi peristiwa onReceive yang akan dipicu 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 dan yang lebih baru

    Promise hanya didukung untuk Manifes V3 dan yang lebih baru, platform lain perlu menggunakan callback.

create()

Promise
chrome.bluetoothSocket.create(
  properties?: SocketProperties,
  callback?: function,
)

Membuat soket Bluetooth.

Parameter

  • properti

    Properti soket (opsional).

  • callback

    fungsi opsional

    Parameter callback terlihat seperti:

    (createInfo: CreateInfo)=>void

Hasil

  • Promise<CreateInfo>

    Chrome 91 dan yang lebih baru

    Promise hanya didukung untuk Manifes V3 dan yang lebih baru, platform lain perlu menggunakan callback.

disconnect()

Promise
chrome.bluetoothSocket.disconnect(
  socketId: number,
  callback?: function,
)

Memutuskan sambungan soket. ID soket tetap valid.

Parameter

  • socketId

    angka

    ID soket.

  • callback

    fungsi opsional

    Parameter callback terlihat seperti:

    ()=>void

Hasil

  • Promise<void>

    Chrome 91 dan yang lebih baru

    Promise hanya didukung untuk Manifes V3 dan yang lebih baru, platform lain perlu menggunakan callback.

getInfo()

Promise
chrome.bluetoothSocket.getInfo(
  socketId: number,
  callback?: function,
)

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 dan yang lebih baru

    Promise hanya didukung untuk Manifes V3 dan yang lebih baru, platform lain perlu menggunakan callback.

getSockets()

Promise
chrome.bluetoothSocket.getSockets(
  callback?: function,
)

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

Parameter

  • callback

    fungsi opsional

    Parameter callback terlihat seperti:

    (sockets: SocketInfo[])=>void

Hasil

  • Promise<SocketInfo[]>

    Chrome 91 dan yang lebih baru

    Promise hanya didukung untuk Manifes V3 dan yang lebih baru, platform lain perlu menggunakan callback.

listenUsingL2cap()

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

Memproses koneksi menggunakan protokol L2CAP.

Parameter

  • socketId

    angka

    ID soket.

  • uuid

    string

    UUID layanan yang akan didengarkan.

  • opsi

    ListenOptions opsional

    Opsi tambahan opsional untuk layanan.

  • callback

    fungsi opsional

    Parameter callback terlihat seperti:

    ()=>void

Hasil

  • Promise<void>

    Chrome 91 dan yang lebih baru

    Promise hanya didukung untuk Manifes V3 dan yang lebih baru, platform lain perlu menggunakan callback.

listenUsingRfcomm()

Promise
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 yang akan didengarkan.

  • opsi

    ListenOptions opsional

    Opsi tambahan opsional untuk layanan.

  • callback

    fungsi opsional

    Parameter callback terlihat seperti:

    ()=>void

Hasil

  • Promise<void>

    Chrome 91 dan yang lebih baru

    Promise hanya didukung untuk Manifes V3 dan yang lebih baru, platform lain perlu menggunakan callback.

send()

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

Mengirim data pada soket Bluetooth yang diberikan.

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 dan yang lebih baru

    Promise hanya didukung untuk Manifes V3 dan yang lebih baru, platform lain perlu menggunakan callback.

setPaused()

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

Mengaktifkan atau menonaktifkan soket yang terhubung agar tidak menerima pesan dari pembandingnya, atau soket yang memproses agar tidak menerima koneksi baru. Nilai defaultnya adalah "false". Menjeda soket yang tersambung biasanya digunakan oleh aplikasi untuk membatasi data yang dikirim oleh peer-nya. Saat soket yang terhubung dijeda, tidak ada peristiwa onReceive yang dipicu. Saat soket terhubung dan berhenti dijeda, peristiwa onReceive akan muncul lagi saat pesan diterima. Saat soket pemroses dijeda, koneksi baru diterima hingga backlog-nya penuh, lalu permintaan koneksi tambahan 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 dan yang lebih baru

    Promise hanya didukung untuk Manifes V3 dan yang lebih baru, platform lain perlu menggunakan callback.

update()

Promise
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:

    ()=>void

Hasil

  • Promise<void>

    Chrome 91 dan yang lebih baru

    Promise hanya didukung untuk Manifes V3 dan yang lebih baru, platform lain perlu menggunakan callback.

Peristiwa

onAccept

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

Peristiwa muncul saat koneksi telah dibuat untuk soket tertentu.

Parameter

onAcceptError

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

Peristiwa muncul ketika terjadi error jaringan saat runtime sedang 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

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 dipicu saat terjadi error jaringan saat runtime sedang menunggu data pada soket. Setelah peristiwa ini dipicu, soket disetel ke paused dan tidak ada lagi peristiwa onReceive yang dimunculkan untuk soket ini.

Parameter