Descripción
Usa la API de chrome.bluetoothSocket
para enviar y recibir datos a dispositivos Bluetooth mediante conexiones RFCOMM y L2CAP.
Manifiesto
Tipos
AcceptError
Enum
"system_error"
Se produjo un error del sistema y es posible que no se pueda recuperar la conexión.
"not_listening"
El socket no está escuchando.
AcceptErrorInfo
Propiedades
-
error
Un código de error que indica qué salió mal.
-
errorMessage
string
Mensaje de error.
-
socketId
número
El identificador del socket del servidor.
AcceptInfo
Propiedades
-
clientSocketId
número
Es el identificador de socket del cliente, es decir, el identificador de socket de la conexión establecida recientemente. Este identificador de socket solo debe usarse con funciones del espacio de nombres
chrome.bluetoothSocket
. Ten en cuenta que el socket del cliente se detiene inicialmente y la aplicación debe desactivarlo de forma explícita para comenzar a recibir datos. -
socketId
número
El identificador del socket del servidor.
CreateInfo
Propiedades
-
socketId
número
El ID del socket recién creado. Ten en cuenta que los IDs de socket creados a partir de esta API no son compatibles con los IDs de socket creados a partir de otras APIs, como la API de
[
sockets.tcp](../sockets_tcp/)
.
ListenOptions
Propiedades
-
lista
número opcional
Es la longitud de la cola de escucha del socket. El valor predeterminado depende del subsistema host del sistema operativo.
-
canal
número opcional
Es el canal RFCOMM que usa
listenUsingRfcomm
. Si se especifica, este canal no debe estar en uso, o la llamada al método fallará. Si no se especifica, se asignará automáticamente un canal sin usar. -
psm
número opcional
El PSM de L2CAP que usa
listenUsingL2cap
Si se especifica, este PSM no debe estar en uso anteriormente, o la llamada al método fallará. Si no se especifica, se asignará automáticamente un PSM sin usar.
ReceiveError
Enum
"disconnected"
La conexión se desconectó.
"system_error"
Se produjo un error del sistema y es posible que no se pueda recuperar la conexión.
"not_connected"
El enchufe no se conectó.
ReceiveErrorInfo
Propiedades
-
error
Un código de error que indica qué salió mal.
-
errorMessage
string
Mensaje de error.
-
socketId
número
El identificador del socket.
ReceiveInfo
Propiedades
-
datos
ArrayBuffer
Los datos recibidos, con un tamaño máximo de
bufferSize
. -
socketId
número
El identificador del socket.
SocketInfo
Propiedades
-
dirección
cadena opcional
Si el socket subyacente está conectado, contiene la dirección Bluetooth del dispositivo al que está conectado.
-
bufferSize
número opcional
Es el tamaño del búfer que se usa para recibir datos. Si no se especificó explícitamente un tamaño de búfer, no se proporciona el valor.
-
Conectado
booleano
Marca que indica si el socket está conectado a un par remoto.
-
nombre
cadena opcional
Es la cadena definida por la aplicación asociada con el socket.
-
detenido
booleano
Marca que indica si un socket conectado bloquea a su par para que no envíe más datos, o si las solicitudes de conexión en un socket de escucha se envían a través del evento
onAccept
o se ponen en cola en la lista de tareas pendientes de la cola de escucha. Consulta lossetPaused
. El valor predeterminado es "false". -
persistentes
booleano
Marca que indica si el socket permanece abierto cuando se descarga la página de eventos de la aplicación (consulta
SocketProperties.persistent
). El valor predeterminado es "false". -
socketId
número
El identificador del socket.
-
uuid
cadena opcional
Si el socket subyacente está conectado, contiene información sobre el UUID del servicio al que está conectado. De lo contrario, si el socket subyacente está escuchando, contiene información sobre el UUID del servicio al que está escuchando.
SocketProperties
Propiedades
-
bufferSize
número opcional
Es el tamaño del búfer que se usa para recibir datos. El valor predeterminado es 4096.
-
nombre
cadena opcional
Es una cadena definida por la aplicación asociada con el socket.
-
persistentes
booleano opcional
Marca que indica si el socket se deja abierto cuando se descarga la página de eventos de la aplicación (consulta Cómo administrar el ciclo de vida de la app). El valor predeterminado es
false.
. Cuando se carga la aplicación, cualquier socket abierto anteriormente con persistent=true se puede recuperar congetSockets
.
Métodos
close()
chrome.bluetoothSocket.close(
socketId: number,
callback?: function,
)
Desconecta y destruye el socket. Cada socket creado debe cerrarse después de usarlo. El ID del socket ya no es válido en cuanto se llama a la función. Sin embargo, se garantiza que el socket se cierre solo cuando se invoque la devolución de llamada.
Parámetros
-
socketId
número
El identificador del socket.
-
callback
función opcional
El parámetro
callback
se ve de la siguiente manera:() => void
Muestra
-
Promise<void>
Chrome 91 y versiones posterioresLas promesas solo se admiten para Manifest V3 y versiones posteriores. Otras plataformas deben usar devoluciones de llamada.
connect()
chrome.bluetoothSocket.connect(
socketId: number,
address: string,
uuid: string,
callback?: function,
)
Conecta el enchufe a un dispositivo Bluetooth remoto. Cuando la operación connect
se completa correctamente, se generan eventos onReceive
cuando se reciben datos del par. Si se produce un error de red mientras el entorno de ejecución recibe paquetes, se genera un evento onReceiveError
. En ese momento, no se generarán más eventos onReceive
para este socket hasta que se llame al método setPaused(false)
.
Parámetros
-
socketId
número
El identificador del socket.
-
dirección
string
Es la dirección del dispositivo Bluetooth.
-
uuid
string
El UUID del servicio al que te conectarás.
-
callback
función opcional
El parámetro
callback
se ve de la siguiente manera:() => void
Muestra
-
Promise<void>
Chrome 91 y versiones posterioresLas promesas solo se admiten para Manifest V3 y versiones posteriores. Otras plataformas deben usar devoluciones de llamada.
create()
chrome.bluetoothSocket.create(
properties?: SocketProperties,
callback?: function,
)
Crea un socket Bluetooth.
Parámetros
-
properties
SocketProperties opcional
Las propiedades del socket (opcional).
-
callback
función opcional
El parámetro
callback
se ve de la siguiente manera:(createInfo: CreateInfo) => void
-
createInfo
Es el resultado de la creación del socket.
-
Muestra
-
Promise<CreateInfo>
Chrome 91 y versiones posterioresLas promesas solo se admiten para Manifest V3 y versiones posteriores. Otras plataformas deben usar devoluciones de llamada.
disconnect()
chrome.bluetoothSocket.disconnect(
socketId: number,
callback?: function,
)
Desconecta el enchufe. El identificador de socket sigue siendo válido.
Parámetros
-
socketId
número
El identificador del socket.
-
callback
función opcional
El parámetro
callback
se ve de la siguiente manera:() => void
Muestra
-
Promise<void>
Chrome 91 y versiones posterioresLas promesas solo se admiten para Manifest V3 y versiones posteriores. Otras plataformas deben usar devoluciones de llamada.
getInfo()
chrome.bluetoothSocket.getInfo(
socketId: number,
callback?: function,
)
Recupera el estado del socket determinado.
Parámetros
-
socketId
número
El identificador del socket.
-
callback
función opcional
El parámetro
callback
se ve de la siguiente manera:(socketInfo: SocketInfo) => void
-
socketInfo
Objeto que contiene la información del socket.
-
Muestra
-
Promise<SocketInfo>
Chrome 91 y versiones posterioresLas promesas solo se admiten para Manifest V3 y versiones posteriores. Otras plataformas deben usar devoluciones de llamada.
getSockets()
chrome.bluetoothSocket.getSockets(
callback?: function,
)
Recupera la lista de los sockets abiertos actualmente que pertenecen a la aplicación.
Parámetros
-
callback
función opcional
El parámetro
callback
se ve de la siguiente manera:(sockets: SocketInfo[]) => void
-
sockets
-
Muestra
-
Promise<SocketInfo[]>
Chrome 91 y versiones posterioresLas promesas solo se admiten para Manifest V3 y versiones posteriores. Otras plataformas deben usar devoluciones de llamada.
listenUsingL2cap()
chrome.bluetoothSocket.listenUsingL2cap(
socketId: number,
uuid: string,
options?: ListenOptions,
callback?: function,
)
Escucha las conexiones con el protocolo L2CAP.
Parámetros
-
socketId
número
El identificador del socket.
-
uuid
string
UUID del servicio en el que se escuchará.
-
opciones
ListenOptions opcional
Son opciones adicionales opcionales para el servicio.
-
callback
función opcional
El parámetro
callback
se ve de la siguiente manera:() => void
Muestra
-
Promise<void>
Chrome 91 y versiones posterioresLas promesas solo se admiten para Manifest V3 y versiones posteriores. Otras plataformas deben usar devoluciones de llamada.
listenUsingRfcomm()
chrome.bluetoothSocket.listenUsingRfcomm(
socketId: number,
uuid: string,
options?: ListenOptions,
callback?: function,
)
Escucha las conexiones con el protocolo RFCOMM.
Parámetros
-
socketId
número
El identificador del socket.
-
uuid
string
UUID del servicio en el que se escuchará.
-
opciones
ListenOptions opcional
Son opciones adicionales opcionales para el servicio.
-
callback
función opcional
El parámetro
callback
se ve de la siguiente manera:() => void
Muestra
-
Promise<void>
Chrome 91 y versiones posterioresLas promesas solo se admiten para Manifest V3 y versiones posteriores. Otras plataformas deben usar devoluciones de llamada.
send()
chrome.bluetoothSocket.send(
socketId: number,
data: ArrayBuffer,
callback?: function,
)
Envía datos en el socket Bluetooth determinado.
Parámetros
-
socketId
número
El identificador del socket.
-
datos
ArrayBuffer
Los datos que se enviarán
-
callback
función opcional
El parámetro
callback
se ve de la siguiente manera:(bytesSent: number) => void
-
bytesSent
número
Es la cantidad de bytes enviados.
-
Muestra
-
Promise<number>
Chrome 91 y versiones posterioresLas promesas solo se admiten para Manifest V3 y versiones posteriores. Otras plataformas deben usar devoluciones de llamada.
setPaused()
chrome.bluetoothSocket.setPaused(
socketId: number,
paused: boolean,
callback?: function,
)
Habilita o inhabilita que un socket conectado reciba mensajes de su par o que un socket de escucha acepte conexiones nuevas. El valor predeterminado es "false". Por lo general, una aplicación usa la pausa de un socket conectado para reducir la velocidad de los datos que envía su par. Cuando se pausa un socket conectado, no se genera ningún evento onReceive
. Cuando se conecta un socket y se reanuda, los eventos onReceive
se vuelven a generar cuando se reciben mensajes. Cuando se pausa un socket de escucha, se aceptan conexiones nuevas hasta que su lista de tareas pendientes esté completa y, luego, se rechazan las solicitudes de conexión adicionales. Los eventos onAccept
se generan solo cuando se reanuda el socket.
Parámetros
-
socketId
número
-
detenido
booleano
-
callback
función opcional
El parámetro
callback
se ve de la siguiente manera:() => void
Muestra
-
Promise<void>
Chrome 91 y versiones posterioresLas promesas solo se admiten para Manifest V3 y versiones posteriores. Otras plataformas deben usar devoluciones de llamada.
update()
chrome.bluetoothSocket.update(
socketId: number,
properties: SocketProperties,
callback?: function,
)
Actualiza las propiedades del socket.
Parámetros
-
socketId
número
El identificador del socket.
-
properties
Las propiedades que se actualizarán.
-
callback
función opcional
El parámetro
callback
se ve de la siguiente manera:() => void
Muestra
-
Promise<void>
Chrome 91 y versiones posterioresLas promesas solo se admiten para Manifest V3 y versiones posteriores. Otras plataformas deben usar devoluciones de llamada.
Eventos
onAccept
chrome.bluetoothSocket.onAccept.addListener(
callback: function,
)
Es un evento que se genera cuando se establece una conexión para un socket determinado.
Parámetros
-
callback
función
El parámetro
callback
se ve de la siguiente manera:(info: AcceptInfo) => void
-
información
-
onAcceptError
chrome.bluetoothSocket.onAcceptError.addListener(
callback: function,
)
Se genera un evento cuando se produce un error de red mientras el entorno de ejecución espera conexiones nuevas en el socket determinado. Una vez que se genera este evento, el socket se establece en paused
y no se generan más eventos onAccept
para este socket.
Parámetros
-
callback
función
El parámetro
callback
se ve de la siguiente manera:(info: AcceptErrorInfo) => void
-
información
-
onReceive
chrome.bluetoothSocket.onReceive.addListener(
callback: function,
)
Se genera un evento cuando se reciben datos para un socket determinado.
Parámetros
-
callback
función
El parámetro
callback
se ve de la siguiente manera:(info: ReceiveInfo) => void
-
información
-
onReceiveError
chrome.bluetoothSocket.onReceiveError.addListener(
callback: function,
)
Se genera un evento cuando se produce un error de red mientras el entorno de ejecución espera datos en el socket. Una vez que se genera este evento, el socket se establece en paused
y no se generan más eventos onReceive
para este socket.
Parámetros
-
callback
función
El parámetro
callback
se ve de la siguiente manera:(info: ReceiveErrorInfo) => void
-
información
-