chrome.bluetoothSocket

Descrição

Use a API chrome.bluetoothSocket para enviar e receber dados para dispositivos Bluetooth usando conexões RFCOMM e L2CAP.

Disponibilidade

Somente no ChromeOS

Manifesto

As chaves a seguir precisam ser declaradas no manifesto para usar essa API.

"bluetooth"

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

  • 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

  • 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 onAccept ou colocadas na fila de detecção. Consulte os setPaused. 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 com getSockets.

Métodos

close()

Promessa
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()

Promessa
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()

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

Cria um soquete Bluetooth.

Parâmetros

  • propriedades

    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()

Promessa
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()

Promessa
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()

Promessa
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()

Promessa
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()

Promessa
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()

Promessa
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()

Promessa
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()

Promessa
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

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

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

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