Descrição
Use a API chrome.bluetoothSocket
para enviar e receber dados para dispositivos Bluetooth usando conexões RFCOMM e L2CAP.
Manifesto
Tipos
AcceptError
Enumeração
"system_error"
Ocorreu um erro no sistema, e a conexão pode ser irrecuperável.
"not_listening"
O soquete não está escutando.
AcceptErrorInfo
Propriedades
-
erro
Um código de erro que indica o que deu errado.
-
errorMessage
string
A mensagem de erro.
-
socketId
número
O identificador do soquete do servidor.
AcceptInfo
Propriedades
-
clientSocketId
número
O identificador de soquete do cliente, ou seja, o identificador de soquete da conexão recém-estabelecida. Esse identificador de soquete só deve ser usado com funções do namespace
chrome.bluetoothSocket
. O soquete do cliente é pausado inicialmente e precisa ser explicitamente retomado pelo aplicativo para começar a receber dados. -
socketId
número
O identificador do soquete do 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 criados com outras APIs, como a
[
sockets.tcp](../sockets_tcp/)
.
ListenOptions
Propriedades
-
backlog
number optional
Comprimento da fila de espera do soquete. O valor padrão depende do subsistema host do sistema operacional.
-
canal
number optional
O canal RFCOMM usado por
listenUsingRfcomm
. Se especificado, esse canal não pode estar em uso. Caso contrário, a chamada de método vai falhar. Quando não especificado, um canal não usado será alocado automaticamente. -
psm
number optional
O PSM L2CAP usado por
listenUsingL2cap
. Se especificado, esse PSM não pode estar em uso. Caso contrário, a chamada de método vai falhar. Quando não especificado, um PSM não usado será alocado automaticamente.
ReceiveError
Enumeração
"disconnected"
A conexão foi desconectada.
"system_error"
Ocorreu um erro no sistema, e a conexão pode ser irrecuperável.
"not_connected"
O soquete não foi conectado.
ReceiveErrorInfo
Propriedades
-
erro
Um código de 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 subjacente estiver conectado, vai conter o endereço Bluetooth do dispositivo a que ele está conectado.
-
bufferSize
number 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
Flag que indica se o soquete está conectado a um peer remoto.
-
nome
string opcional
String definida pelo aplicativo associada ao soquete.
-
pausado
booleano
Flag que indica se um soquete conectado impede que o peer envie mais dados ou se as solicitações de conexão em um soquete de escuta são enviadas pelo evento
onAccept
ou enfileiradas no backlog da fila de escuta. Consulte ossetPaused
. O valor padrão é "false". -
persistente
booleano
Flag 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 subjacente estiver conectado, vai conter informações sobre o UUID do serviço a que ele está conectado. Caso contrário, se o soquete subjacente estiver escutando, vai conter informações sobre o UUID do serviço em que ele está escutando.
SocketProperties
Propriedades
-
bufferSize
number 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.
-
persistente
booleano opcional
Flag que indica se o soquete fica 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 sockets 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 não é mais válido assim que a função é chamada. No entanto, o soquete só será fechado quando o callback for invocado.
Parâmetros
-
socketId
número
O identificador do soquete.
-
callback
função opcional
O parâmetro
callback
tem esta aparência:() => void
Retorna
-
Promise<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 dispositivo semelhante. Se ocorrer um erro de rede enquanto o tempo 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 a que se conectar.
-
callback
função opcional
O parâmetro
callback
tem esta aparência:() => void
Retorna
-
Promise<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
-
properties
SocketProperties opcional
As propriedades do soquete (opcional).
-
callback
função opcional
O parâmetro
callback
tem esta aparência:(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 de soquete permanece válido.
Parâmetros
-
socketId
número
O identificador do soquete.
-
callback
função opcional
O parâmetro
callback
tem esta aparência:() => void
Retorna
-
Promise<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 especificado.
Parâmetros
-
socketId
número
O identificador do soquete.
-
callback
função opcional
O parâmetro
callback
tem esta aparência:(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 sockets abertos no momento pertencentes ao aplicativo.
Parâmetros
-
callback
função opcional
O parâmetro
callback
tem esta aparência:(sockets: SocketInfo[]) => void
-
soquetes
-
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>
Ouve 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 opcionais para o serviço.
-
callback
função opcional
O parâmetro
callback
tem esta aparência:() => void
Retorna
-
Promise<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>
Aguarde 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 opcionais para o serviço.
-
callback
função opcional
O parâmetro
callback
tem esta aparência:() => void
Retorna
-
Promise<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 especificado.
Parâmetros
-
socketId
número
O identificador do soquete.
-
dados
ArrayBuffer
Os dados a serem enviados.
-
callback
função opcional
O parâmetro
callback
tem esta aparência:(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 um soquete conectado para receber mensagens do mesmo nível ou um soquete de escuta para aceitar novas conexões. O valor padrão é "false". A pausa de um soquete conectado geralmente é usada por um aplicativo para limitar os dados enviados pelo peer. 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 opcional
O parâmetro
callback
tem esta aparência:() => void
Retorna
-
Promise<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.
-
properties
As propriedades a serem atualizadas.
-
callback
função opcional
O parâmetro
callback
tem esta aparência:() => void
Retorna
-
Promise<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
tem esta aparência:(info: AcceptInfo) => void
-
informações
-
onAcceptError
chrome.bluetoothSocket.onAcceptError.addListener(
callback: function,
)
Evento gerado quando ocorre um erro de rede enquanto o tempo de execução aguarda novas conexões no soquete especificado. Depois que esse evento é gerado, o soquete é definido como paused
e nenhum outro evento onAccept
é gerado para ele.
Parâmetros
-
callback
função
O parâmetro
callback
tem esta aparência:(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
tem esta aparência:(info: ReceiveInfo) => void
-
informações
-
onReceiveError
chrome.bluetoothSocket.onReceiveError.addListener(
callback: function,
)
Evento gerado quando um erro de rede ocorreu enquanto o ambiente de execução aguardava dados no soquete. Depois que esse evento é gerado, o soquete é definido como paused
e nenhum outro evento onReceive
é gerado para ele.
Parâmetros
-
callback
função
O parâmetro
callback
tem esta aparência:(info: ReceiveErrorInfo) => void
-
informações
-