chrome.bluetoothSocket

Descrição

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

Manifesto

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

"bluetooth"

Tipos

AcceptError

Enumeração

"system_error"
Ocorreu um erro no sistema, e a conexão pode não ser recuperada.

"not_listening"
O soquete não está em modo de escuta.

AcceptErrorInfo

Propriedades

  • Um código de erro que indica o que deu errado.

  • errorMessage

    string

    A mensagem de erro.

  • socketId

    number

    O identificador do socket do servidor.

AcceptInfo

Propriedades

  • clientSocketId

    number

    O identificador do soquete do cliente, ou seja, o identificador do soquete da conexão recém estabelecida. Esse identificador de soquete deve ser usado apenas com funções do namespace chrome.bluetoothSocket. O socket do cliente é pausado inicialmente e precisa ser retomado explicitamente pelo aplicativo para começar a receber dados.

  • socketId

    number

    O identificador do socket do servidor.

CreateInfo

Propriedades

  • socketId

    number

    O ID do soquete recém-criado. Os IDs de soquete criados com essa API não são compatíveis com os criados em outras APIs, como a [sockets.tcp](../sockets_tcp/).

ListenOptions

Propriedades

  • backlog

    número opcional

    Comprimento da fila de escuta do socket. O valor padrão depende do subsistema host do sistema operacional.

  • canal

    número opcional

    O canal RFCOMM usado por listenUsingRfcomm. Se especificado, esse canal não pode estar em uso anteriormente, ou a chamada de método vai falhar. Se não for especificado, um canal não utilizado será alocado automaticamente.

  • psm

    número opcional

    O PSM L2CAP usado por listenUsingL2cap. Se especificado, esse PSM não pode estar em uso anteriormente, ou a chamada de método vai falhar. Quando não especificado, um PSM não utilizado será alocado automaticamente.

ReceiveError

Enumeração

"desconectado"
A conexão foi desconectada.

"system_error"
Ocorreu um erro no sistema, e a conexão pode não ser recuperada.

"not_connected"
O soquete não foi conectado.

ReceiveErrorInfo

Propriedades

  • Um código de erro que indica o que deu errado.

  • errorMessage

    string

    A mensagem de erro.

  • socketId

    number

    O identificador do soquete.

ReceiveInfo

Propriedades

  • dados

    ArrayBuffer

    Os dados recebidos, com um tamanho máximo de bufferSize.

  • socketId

    number

    O identificador do soquete.

SocketInfo

Propriedades

  • endereço

    string opcional

    Se o socket de origem estiver conectado, conterá o endereço Bluetooth do dispositivo ao qual ele está conectado.

  • bufferSize

    número opcional

    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 os setPaused. O valor padrão é "false".

  • persistente

    booleano

    Flag que indica se o socket permanece aberto quando a página de eventos do aplicativo é descarregada (consulte SocketProperties.persistent). O valor padrão é "false".

  • socketId

    number

    O identificador do soquete.

  • uuid

    string opcional

    Se o socket de origem estiver conectado, conterá informações sobre o UUID do serviço ao qual ele está conectado. Caso contrário, se o socket de origem estiver em modo de escuta, conterá informações sobre o UUID do serviço em que ele está em modo de escuta.

SocketProperties

Propriedades

  • bufferSize

    número opcional

    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 socket é 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,
)

Desconecta e destrói o soquete. Cada soquete criado precisa ser fechado após o uso. O ID do socket deixa de ser válido assim que a função é chamada. No entanto, o socket só será fechado quando o callback for invocado.

Parâmetros

  • socketId

    number

    O identificador do soquete.

  • callback

    função opcional

    O parâmetro callback tem este formato:

    () => void

Retorna

  • Promise<void>

    Chrome 91 e versões mais recentes

    As promessas têm suporte apenas para 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,
)

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 um erro de rede ocorrer enquanto o ambiente de execução estiver recebendo pacotes, um evento onReceiveError será gerado. Nesse ponto, nenhum outro evento onReceive será gerado para esse socket até que o método setPaused(false) seja chamado.

Parâmetros

  • socketId

    number

    O identificador do soquete.

  • endereço

    string

    O endereço do dispositivo Bluetooth.

  • uuid

    string

    O UUID do serviço a que você quer se conectar.

  • callback

    função opcional

    O parâmetro callback tem este formato:

    () => void

Retorna

  • Promise<void>

    Chrome 91 e versões mais recentes

    As promessas têm suporte apenas para o Manifest V3 e versões mais recentes. Outras plataformas precisam usar callbacks.

create()

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

Cria um soquete Bluetooth.

Parâmetros

  • properties

    As propriedades do soquete (opcional).

  • callback

    função opcional

    O parâmetro callback tem este formato:

    (createInfo: CreateInfo) => void

    • createInfo

      O resultado da criação do soquete.

Retorna

  • Promise<CreateInfo>

    Chrome 91 e versões mais recentes

    As promessas têm suporte apenas para o Manifest V3 e versões mais recentes. Outras plataformas precisam usar callbacks.

disconnect()

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

Desconecta o soquete. O identificador do socket continua válido.

Parâmetros

  • socketId

    number

    O identificador do soquete.

  • callback

    função opcional

    O parâmetro callback tem este formato:

    () => void

Retorna

  • Promise<void>

    Chrome 91 e versões mais recentes

    As promessas têm suporte apenas para o Manifest V3 e versões mais recentes. Outras plataformas precisam usar callbacks.

getInfo()

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

Recupera o estado do soquete fornecido.

Parâmetros

  • socketId

    number

    O identificador do soquete.

  • callback

    função opcional

    O parâmetro callback tem este formato:

    (socketInfo: SocketInfo) => void

    • socketInfo

      Objeto que contém as informações do soquete.

Retorna

  • Promessa<SocketInfo>

    Chrome 91 e versões mais recentes

    As promessas têm suporte apenas para o Manifest V3 e versões mais recentes. Outras plataformas precisam usar callbacks.

getSockets()

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

Recupera a lista de soquetes abertos atualmente que pertencem ao aplicativo.

Parâmetros

  • callback

    função opcional

    O parâmetro callback tem este formato:

    (sockets: SocketInfo[]) => void

Retorna

  • Promise<SocketInfo[]>

    Chrome 91 e versões mais recentes

    As promessas têm suporte apenas para 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,
)

Detectar conexões usando o protocolo L2CAP.

Parâmetros

  • socketId

    number

    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 este formato:

    () => void

Retorna

  • Promise<void>

    Chrome 91 e versões mais recentes

    As promessas têm suporte apenas para 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,
)

Detectar conexões usando o protocolo RFCOMM.

Parâmetros

  • socketId

    number

    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 este formato:

    () => void

Retorna

  • Promise<void>

    Chrome 91 e versões mais recentes

    As promessas têm suporte apenas para o Manifest V3 e versões mais recentes. Outras plataformas precisam usar callbacks.

send()

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

Envia dados no soquete Bluetooth fornecido.

Parâmetros

  • socketId

    number

    O identificador do soquete.

  • dados

    ArrayBuffer

    Os dados a serem enviados.

  • callback

    função opcional

    O parâmetro callback tem este formato:

    (bytesSent: number) => void

    • bytesSent

      number

      O número de bytes enviados.

Retorna

  • Promise<number>

    Chrome 91 e versões mais recentes

    As promessas têm suporte apenas para o Manifest V3 e versões mais recentes. Outras plataformas precisam usar callbacks.

setPaused()

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

Permite ou desativa que um soquete conectado receba mensagens do par ou que um soquete de escuta aceite novas conexões. O valor padrão é "false". A pausa de um socket conectado é normalmente usada por um aplicativo para limitar os dados enviados pelo peer. Quando um soquete conectado é pausado, nenhum evento onReceive é acionado. Quando um soquete é conectado e retirado da pausa, 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 e outras solicitações de conexão sejam recusadas. Os eventos onAccept são gerados somente quando o soquete é retomado.

Parâmetros

  • socketId

    number

  • pausado

    booleano

  • callback

    função opcional

    O parâmetro callback tem este formato:

    () => void

Retorna

  • Promise<void>

    Chrome 91 e versões mais recentes

    As promessas têm suporte apenas para o Manifest V3 e versões mais recentes. Outras plataformas precisam usar callbacks.

update()

Promessa
chrome.bluetoothSocket.update(
  socketId: number,
  properties: SocketProperties,
  callback?: function,
)

Atualiza as propriedades do soquete.

Parâmetros

  • socketId

    number

    O identificador do soquete.

  • properties

    As propriedades a serem atualizadas.

  • callback

    função opcional

    O parâmetro callback tem este formato:

    () => void

Retorna

  • Promise<void>

    Chrome 91 e versões mais recentes

    As promessas têm suporte apenas para 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 este formato:

    (info: AcceptInfo) => void

onAcceptError

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

Evento gerado quando um erro de rede ocorreu enquanto o ambiente de execução aguardava novas conexões no soquete fornecido. Quando 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 tem este formato:

    (info: ReceiveInfo) => void

onReceiveError

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

Evento gerado quando um erro de rede ocorreu enquanto o ambiente de execução aguardava dados no socket. Quando esse evento é gerado, o socket é definido como paused, e nenhum outro evento onReceive é gerado para esse socket.

Parâmetros