Descrição
Use a API chrome.bluetoothSocket para enviar e receber dados para dispositivos Bluetooth usando conexões RFCOMM e L2CAP.
Disponibilidade
Manifesto
Tipos
AcceptError
Enumeração
"system_error"
Ocorreu um erro do sistema, e talvez não seja possível recuperar a conexão.
"not_listening"
O soquete não está detectando.
AcceptErrorInfo
Propriedades
-
erro
Um código do erro que indica o que deu errado.
-
errorMessage
string
A mensagem de erro.
-
socketId
número
O identificador do soquete de servidor.
AcceptInfo
Propriedades
-
clientSocketId
número
O identificador do socket de cliente, ou seja, o identificador do socket da conexão recém-estabelecida. Esse identificador de soquete só deve ser usado com funções do namespace
chrome.bluetoothSocket. O socket de cliente é pausado inicialmente e precisa ser retomado explicitamente pelo aplicativo para começar a receber dados. -
socketId
número
O identificador do soquete de servidor.
CreateInfo
Propriedades
-
socketId
número
O ID do soquete recém-criado. Os IDs de soquete criados com essa API não são compatíveis com os IDs de soquete criados com outras APIs, como a API
[sockets.tcp](../sockets_tcp/).
ListenOptions
Propriedades
-
backlog
número optional
Comprimento da fila de escuta do soquete. O valor padrão depende do subsistema host do sistema operacional.
-
canal
número optional
O canal RFCOMM usado por
listenUsingRfcomm. Se especificado, esse canal não pode estar em uso, ou a chamada de método vai falhar. Quando não especificado, um canal não utilizado será alocado automaticamente. -
psm
número optional
O PSM do L2CAP usado por
listenUsingL2cap. Se especificado, esse PSM não pode estar em uso, ou a chamada de método vai falhar. Quando não especificado, um PSM não utilizado será alocado automaticamente.
ReceiveError
Enumeração
"disconnected"
A conexão foi desconectada.
"system_error"
Ocorreu um erro do sistema, e talvez não seja possível recuperar a conexão.
"not_connected"
O soquete não foi conectado.
ReceiveErrorInfo
Propriedades
-
erro
Um código do erro que indica o que deu errado.
-
errorMessage
string
A mensagem de erro.
-
socketId
número
O identificador do soquete.
ReceiveInfo
Propriedades
-
dados
ArrayBuffer
Os dados recebidos, com um tamanho máximo de
bufferSize. -
socketId
número
O identificador do soquete.
SocketInfo
Propriedades
-
endereço
string opcional
Se o soquete estiver conectado, vai conter o endereço Bluetooth do dispositivo ao qual está conectado.
-
bufferSize
número optional
O tamanho do buffer usado para receber dados. Se nenhum tamanho de buffer tiver sido especificado explicitamente, o valor não será fornecido.
-
conectado
booleano
Sinalização que indica se o soquete está conectado a um par remoto.
-
nome
string opcional
String definida pelo aplicativo associada ao soquete.
-
pausado
booleano
Sinalização que indica se um soquete conectado impede que o par envie mais dados ou se as solicitações de conexão em um soquete de detecção são enviadas pelo evento
onAcceptou colocadas na fila de detecção. Consulte ossetPaused. O valor padrão é "false". -
permanente
booleano
Sinalização que indica se o soquete permanece aberto quando a página de evento do aplicativo é descarregada (consulte
SocketProperties.persistent). O valor padrão é "false". -
socketId
número
O identificador do soquete.
-
uuid
string opcional
Se o soquete estiver conectado, contém informações sobre o UUID do serviço ao qual ele está conectado. Caso contrário, se o soquete estiver detectando, contém informações sobre o UUID do serviço que ele está detectando.
SocketProperties
Propriedades
-
bufferSize
número optional
O tamanho do buffer usado para receber dados. O valor padrão é 4096.
-
nome
string opcional
Uma string definida pelo aplicativo associada ao soquete.
-
permanente
booleano opcional
Sinalização que indica se o soquete é deixado aberto quando a página de eventos do aplicativo é descarregada (consulte Gerenciar o ciclo de vida do app). O valor padrão é
false.. Quando o aplicativo é carregado, todos os soquetes abertos anteriormente com persistent=true podem ser buscados comgetSockets.
Métodos
close()
chrome.bluetoothSocket.close(
socketId: number,
callback?: function,
): Promise<void>
Desconecta e destrói o soquete. Cada soquete criado precisa ser fechado após o uso. O ID do soquete deixa de ser válido assim que a função é chamada. No entanto, o soquete só é fechado quando o callback é invocado.
Parâmetros
-
socketId
número
O identificador do soquete.
-
callback
função optional
O parâmetro
callbacké semelhante a:() => void
Retorna
-
Promessa<void>
Chrome 91+As promessas só são compatíveis com o Manifest V3 e versões mais recentes. Outras plataformas precisam usar callbacks.
connect()
chrome.bluetoothSocket.connect(
socketId: number,
address: string,
uuid: string,
callback?: function,
): Promise<void>
Conecta o soquete a um dispositivo Bluetooth remoto. Quando a operação connect é concluída, os eventos onReceive são gerados quando os dados são recebidos do par. Se ocorrer um erro de rede enquanto o ambiente de execução estiver recebendo pacotes, um evento onReceiveError será gerado. Nesse momento, nenhum outro evento onReceive será gerado para esse soquete até que o método setPaused(false) seja chamado.
Parâmetros
-
socketId
número
O identificador do soquete.
-
endereço
string
O endereço do dispositivo Bluetooth.
-
uuid
string
O UUID do serviço ao qual se conectar.
-
callback
função optional
O parâmetro
callbacké semelhante a:() => void
Retorna
-
Promessa<void>
Chrome 91+As promessas só são compatíveis com o Manifest V3 e versões mais recentes. Outras plataformas precisam usar callbacks.
create()
chrome.bluetoothSocket.create(
properties?: SocketProperties,
callback?: function,
): Promise<CreateInfo>
Cria um soquete Bluetooth.
Parâmetros
-
propriedades
SocketProperties opcional
As propriedades do soquete (opcional).
-
callback
função optional
O parâmetro
callbacké semelhante a:(createInfo: CreateInfo) => void
-
createInfo
O resultado da criação do soquete.
-
Retorna
-
Promise<CreateInfo>
Chrome 91+As promessas só são compatíveis com o Manifest V3 e versões mais recentes. Outras plataformas precisam usar callbacks.
disconnect()
chrome.bluetoothSocket.disconnect(
socketId: number,
callback?: function,
): Promise<void>
Desconecta o soquete. O identificador do soquete permanece válido.
Parâmetros
-
socketId
número
O identificador do soquete.
-
callback
função optional
O parâmetro
callbacké semelhante a:() => void
Retorna
-
Promessa<void>
Chrome 91+As promessas só são compatíveis com o Manifest V3 e versões mais recentes. Outras plataformas precisam usar callbacks.
getInfo()
chrome.bluetoothSocket.getInfo(
socketId: number,
callback?: function,
): Promise<SocketInfo>
Recupera o estado do soquete fornecido.
Parâmetros
-
socketId
número
O identificador do soquete.
-
callback
função optional
O parâmetro
callbacké semelhante a:(socketInfo: SocketInfo) => void
-
socketInfo
Objeto que contém as informações do soquete.
-
Retorna
-
Promise<SocketInfo>
Chrome 91+As promessas só são compatíveis com o Manifest V3 e versões mais recentes. Outras plataformas precisam usar callbacks.
getSockets()
chrome.bluetoothSocket.getSockets(
callback?: function,
): Promise<SocketInfo[]>
Recupera a lista de soquetes abertos no momento que pertencem ao aplicativo.
Parâmetros
-
callback
função optional
O parâmetro
callbacké semelhante a:(sockets: SocketInfo[]) => void
-
soquetes
Matriz de objeto que contém informações de soquete.
-
Retorna
-
Promise<SocketInfo[]>
Chrome 91+As promessas só são compatíveis com o Manifest V3 e versões mais recentes. Outras plataformas precisam usar callbacks.
listenUsingL2cap()
chrome.bluetoothSocket.listenUsingL2cap(
socketId: number,
uuid: string,
options?: ListenOptions,
callback?: function,
): Promise<void>
Detectar conexões usando o protocolo L2CAP.
Parâmetros
-
socketId
número
O identificador do soquete.
-
uuid
string
UUID do serviço a ser detectado.
-
opções
ListenOptions opcional
Opções adicionais para o serviço.
-
callback
função optional
O parâmetro
callbacké semelhante a:() => void
Retorna
-
Promessa<void>
Chrome 91+As promessas só são compatíveis com o Manifest V3 e versões mais recentes. Outras plataformas precisam usar callbacks.
listenUsingRfcomm()
chrome.bluetoothSocket.listenUsingRfcomm(
socketId: number,
uuid: string,
options?: ListenOptions,
callback?: function,
): Promise<void>
Detectar conexões usando o protocolo RFCOMM.
Parâmetros
-
socketId
número
O identificador do soquete.
-
uuid
string
UUID do serviço a ser detectado.
-
opções
ListenOptions opcional
Opções adicionais para o serviço.
-
callback
função optional
O parâmetro
callbacké semelhante a:() => void
Retorna
-
Promessa<void>
Chrome 91+As promessas só são compatíveis com o Manifest V3 e versões mais recentes. Outras plataformas precisam usar callbacks.
send()
chrome.bluetoothSocket.send(
socketId: number,
data: ArrayBuffer,
callback?: function,
): Promise<number>
Envia dados no soquete Bluetooth fornecido.
Parâmetros
-
socketId
número
O identificador do soquete.
-
dados
ArrayBuffer
Os dados a serem enviados.
-
callback
função optional
O parâmetro
callbacké semelhante a:(bytesSent: number) => void
-
bytesSent
número
O número de bytes enviados.
-
Retorna
-
Promise<number>
Chrome 91+As promessas só são compatíveis com o Manifest V3 e versões mais recentes. Outras plataformas precisam usar callbacks.
setPaused()
chrome.bluetoothSocket.setPaused(
socketId: number,
paused: boolean,
callback?: function,
): Promise<void>
Ativa ou desativa o recebimento de mensagens de um socket conectado ou a aceitação de novas conexões por um socket de escuta. O valor padrão é "false". A pausa de um soquete conectado normalmente é usada por um aplicativo para limitar os dados enviados pelo par. Quando um soquete conectado é pausado, nenhum evento onReceive é gerado. Quando um soquete é conectado e retomado, os eventos onReceive são gerados novamente quando as mensagens são recebidas. Quando um soquete de escuta é pausado, novas conexões são aceitas até que o backlog esteja cheio. Depois disso, outras solicitações de conexão são recusadas. Os eventos onAccept são gerados apenas quando o soquete é retomado.
Parâmetros
-
socketId
número
-
pausado
booleano
-
callback
função optional
O parâmetro
callbacké semelhante a:() => void
Retorna
-
Promessa<void>
Chrome 91+As promessas só são compatíveis com o Manifest V3 e versões mais recentes. Outras plataformas precisam usar callbacks.
update()
chrome.bluetoothSocket.update(
socketId: number,
properties: SocketProperties,
callback?: function,
): Promise<void>
Atualiza as propriedades do soquete.
Parâmetros
-
socketId
número
O identificador do soquete.
-
propriedades
As propriedades a serem atualizadas.
-
callback
função optional
O parâmetro
callbacké semelhante a:() => void
Retorna
-
Promessa<void>
Chrome 91+As promessas só são compatíveis com o Manifest V3 e versões mais recentes. Outras plataformas precisam usar callbacks.
Eventos
onAccept
chrome.bluetoothSocket.onAccept.addListener(
callback: function,
)
Evento gerado quando uma conexão é estabelecida para um determinado soquete.
Parâmetros
-
callback
função
O parâmetro
callbacké semelhante a:(info: AcceptInfo) => void
-
informações
-
onAcceptError
chrome.bluetoothSocket.onAcceptError.addListener(
callback: function,
)
Evento gerado quando ocorre um erro de rede enquanto o ambiente de execução aguarda novas conexões no soquete fornecido. Depois que esse evento é gerado, o soquete é definido como paused e nenhum outro evento onAccept é gerado para esse soquete.
Parâmetros
-
callback
função
O parâmetro
callbacké semelhante a:(info: AcceptErrorInfo) => void
-
informações
-
onReceive
chrome.bluetoothSocket.onReceive.addListener(
callback: function,
)
Evento gerado quando os dados são recebidos para um determinado soquete.
Parâmetros
-
callback
função
O parâmetro
callbacké semelhante a:(info: ReceiveInfo) => void
-
informações
-
onReceiveError
chrome.bluetoothSocket.onReceiveError.addListener(
callback: function,
)
Evento gerado quando ocorre um erro de rede enquanto o ambiente de execução aguarda dados no soquete. Depois que esse evento é gerado, o soquete é definido como paused e nenhum outro evento onReceive é gerado para esse soquete.
Parâmetros
-
callback
função
O parâmetro
callbacké semelhante a:(info: ReceiveErrorInfo) => void
-
informações
-