chrome.bluetoothSocket

Description

Utilisez l'API chrome.bluetoothSocket pour envoyer et recevoir des données vers des appareils Bluetooth à l'aide de connexions RFCOMM et L2CAP.

Manifest

Les clés suivantes doivent être déclarées dans le fichier manifeste pour utiliser cette API.

"bluetooth"

Types

AcceptError

Enum

"system_error"
Une erreur système s'est produite et la connexion pourrait être irrécupérable.

"not_listening"
Le socket n'écoute pas.

AcceptErrorInfo

Propriétés

  • error

    Un code d'erreur indiquant le problème

  • errorMessage

    chaîne

    Message d'erreur.

  • socketId

    number

    Identifiant de socket serveur.

AcceptInfo

Propriétés

  • clientSocketId

    number

    Identifiant de socket client, c'est-à-dire l'identifiant de socket de la connexion nouvellement établie. Cet identifiant de socket ne doit être utilisé qu'avec des fonctions de l'espace de noms chrome.bluetoothSocket. Notez que le socket client est initialement mis en pause et doit être explicitement réactivé par l'application pour commencer à recevoir des données.

  • socketId

    number

    Identifiant de socket serveur.

CreateInfo

Propriétés

  • socketId

    number

    Identifiant du socket nouvellement créé. Notez que les ID de socket créés à partir de cette API ne sont pas compatibles avec ceux créés à partir d'autres API, comme l'API [sockets.tcp](../sockets_tcp/).

ListenOptions

Propriétés

  • en attente

    numéro facultatif

    Longueur de la file d'attente d'écoute du socket. La valeur par défaut dépend du sous-système hôte du système d'exploitation.

  • chaîne

    numéro facultatif

    Canal RFCOMM utilisé par listenUsingRfcomm. Si ce canal est spécifié, il ne doit pas avoir été utilisé auparavant, sinon l'appel de la méthode échouera. Si vous n'indiquez aucune valeur, une chaîne inutilisée sera automatiquement allouée.

  • PSM

    numéro facultatif

    PSM L2CAP utilisé par listenUsingL2cap. S'il est spécifié, ce PSM ne doit pas être utilisé précédemment, sinon l'appel de méthode échouera. Si aucune valeur n'est spécifiée, un PSM non utilisé est automatiquement alloué.

ReceiveError

Enum

"disconnected"
La connexion a été déconnectée.

"system_error"
Une erreur système s'est produite et la connexion pourrait être irrécupérable.

"not_connected"
Le socket n'a pas été connecté.

ReceiveErrorInfo

Propriétés

  • error

    Un code d'erreur indiquant le problème

  • errorMessage

    chaîne

    Message d'erreur.

  • socketId

    number

    Identifiant de socket.

ReceiveInfo

Propriétés

  • data

    ArrayBuffer

    Données reçues, avec une taille maximale de bufferSize.

  • socketId

    number

    Identifiant de socket.

SocketInfo

Propriétés

  • adresse

    string facultatif

    Si le socket sous-jacent est connecté, contient l'adresse Bluetooth de l'appareil auquel il est connecté.

  • bufferSize

    numéro facultatif

    Taille du tampon utilisé pour recevoir des données. Si aucune taille de mémoire tampon n'a été spécifiée explicitement, la valeur n'est pas fournie.

  • connecté

    boolean

    Indique si le socket est connecté à un pair distant.

  • name

    string facultatif

    Chaîne définie par l'application associée au socket.

  • mis en veille

    boolean

    Indique si un socket connecté empêche son pair d'envoyer plus de données, ou si les requêtes de connexion sur un socket d'écoute sont distribuées via l'événement onAccept ou mises en file d'attente dans la file d'attente d'écoute. Consultez les setPaused. La valeur par défaut est "false".

  • SSD

    boolean

    Indique si le socket reste ouvert lorsque la page d'événement de l'application est déchargée (voir SocketProperties.persistent). La valeur par défaut est "false".

  • socketId

    number

    Identifiant de socket.

  • uuid

    string facultatif

    Si le socket sous-jacent est connecté, contient des informations sur l'UUID du service auquel il est connecté. Dans le cas contraire, si le socket sous-jacent écoute, contient des informations sur l'UUID du service qu'il écoute.

SocketProperties

Propriétés

  • bufferSize

    numéro facultatif

    Taille du tampon utilisé pour recevoir des données. La valeur par défaut est 4096.

  • name

    string facultatif

    Chaîne définie par l'application et associée au socket.

  • SSD

    Booléen facultatif

    Indique si le socket est laissé ouvert lorsque la page d'événements de l'application est déchargée (voir Gérer le cycle de vie d'une application). La valeur par défaut est false.. Lorsque l'application est chargée, tous les sockets précédemment ouverts avec persistent=true peuvent être récupérés avec getSockets.

Méthodes

close()

Promesse
chrome.bluetoothSocket.close(
  socketId: number,
  callback?: function,
)

Déconnecte et détruit le socket. Chaque socket créé doit être fermé après utilisation. L'identifiant de socket n'est plus valide au moment où la fonction est appelée. Toutefois, la fermeture du socket est garantie uniquement lorsque le rappel est invoqué.

Paramètres

  • socketId

    number

    Identifiant de socket.

  • rappel

    fonction facultative

    Le paramètre callback se présente comme suit :

    ()=>void

Renvoie

  • Promise<void>

    Chrome 91 et versions ultérieures

    Les promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.

connect()

Promesse
chrome.bluetoothSocket.connect(
  socketId: number,
  address: string,
  uuid: string,
  callback?: function,
)

Connecte la prise à un appareil Bluetooth distant. Lorsque l'opération connect aboutit, des événements onReceive sont déclenchés lorsque des données sont reçues du pair. Si une erreur réseau se produit lorsque l'environnement d'exécution reçoit des paquets, un événement onReceiveError est déclenché. À ce stade, aucun autre événement onReceive n'est déclenché pour ce socket tant que la méthode setPaused(false) n'est pas appelée.

Paramètres

  • socketId

    number

    Identifiant de socket.

  • adresse

    chaîne

    Adresse de l'appareil Bluetooth.

  • uuid

    chaîne

    UUID du service auquel se connecter.

  • rappel

    fonction facultative

    Le paramètre callback se présente comme suit :

    ()=>void

Renvoie

  • Promise<void>

    Chrome 91 et versions ultérieures

    Les promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.

create()

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

Crée un socket Bluetooth.

Paramètres

  • du bucket

    SocketProperties facultatif

    Propriétés du socket (facultatif).

  • rappel

    fonction facultative

    Le paramètre callback se présente comme suit :

    (createInfo: CreateInfo)=>void

    • createInfo

      Résultat de la création du socket.

Renvoie

  • Promise<CreateInfo>

    Chrome 91 et versions ultérieures

    Les promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.

disconnect()

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

Débranche le support. L'identifiant de socket reste valide.

Paramètres

  • socketId

    number

    Identifiant de socket.

  • rappel

    fonction facultative

    Le paramètre callback se présente comme suit :

    ()=>void

Renvoie

  • Promise<void>

    Chrome 91 et versions ultérieures

    Les promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.

getInfo()

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

Récupère l'état d'un socket donné.

Paramètres

  • socketId

    number

    Identifiant de socket.

  • rappel

    fonction facultative

    Le paramètre callback se présente comme suit :

    (socketInfo: SocketInfo)=>void

    • socketInfo

      Objet contenant les informations de socket.

Renvoie

  • Promise<SocketInfo>

    Chrome 91 et versions ultérieures

    Les promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.

getSockets()

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

Récupère la liste des sockets actuellement ouverts appartenant à l'application.

Paramètres

  • rappel

    fonction facultative

    Le paramètre callback se présente comme suit :

    (sockets: SocketInfo[])=>void

Renvoie

  • Promise<SocketInfo[]>

    Chrome 91 et versions ultérieures

    Les promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.

listenUsingL2cap()

Promesse
chrome.bluetoothSocket.listenUsingL2cap(
  socketId: number,
  uuid: string,
  options?: ListenOptions,
  callback?: function,
)

Écoutez les connexions à l'aide du protocole L2CAP.

Paramètres

  • socketId

    number

    Identifiant de socket.

  • uuid

    chaîne

    UUID du service à écouter.

  • options

    ListenOptions facultatif

    Options supplémentaires facultatives pour le service.

  • rappel

    fonction facultative

    Le paramètre callback se présente comme suit :

    ()=>void

Renvoie

  • Promise<void>

    Chrome 91 et versions ultérieures

    Les promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.

listenUsingRfcomm()

Promesse
chrome.bluetoothSocket.listenUsingRfcomm(
  socketId: number,
  uuid: string,
  options?: ListenOptions,
  callback?: function,
)

Écoutez les connexions à l'aide du protocole RFCOMM.

Paramètres

  • socketId

    number

    Identifiant de socket.

  • uuid

    chaîne

    UUID du service à écouter.

  • options

    ListenOptions facultatif

    Options supplémentaires facultatives pour le service.

  • rappel

    fonction facultative

    Le paramètre callback se présente comme suit :

    ()=>void

Renvoie

  • Promise<void>

    Chrome 91 et versions ultérieures

    Les promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.

send()

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

Envoie les données sur le socket Bluetooth donné.

Paramètres

  • socketId

    number

    Identifiant de socket.

  • data

    ArrayBuffer

    Données à envoyer.

  • rappel

    fonction facultative

    Le paramètre callback se présente comme suit :

    (bytesSent: number)=>void

    • bytesSent

      number

      Nombre d'octets envoyés.

Renvoie

  • Promesse<number>

    Chrome 91 et versions ultérieures

    Les promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.

setPaused()

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

Active ou désactive un socket connecté pour recevoir des messages de son pair, ou un socket d'écoute d'accepter de nouvelles connexions. La valeur par défaut est "false". La mise en pause d'un socket connecté est généralement utilisée par une application pour limiter les données envoyées par son pair. Lorsqu'un socket connecté est suspendu, aucun événement onReceive n'est déclenché. Lorsqu'un socket est connecté et réactivé, des événements onReceive sont à nouveau déclenchés lors de la réception de messages. Lorsqu'un socket d'écoute est suspendu, les nouvelles connexions sont acceptées jusqu'à ce que les tâches en attente soient remplies, puis les demandes de connexion supplémentaires sont refusées. Les événements onAccept ne sont déclenchés que lorsque le socket est réactivé.

Paramètres

  • socketId

    number

  • mis en veille

    boolean

  • rappel

    fonction facultative

    Le paramètre callback se présente comme suit :

    ()=>void

Renvoie

  • Promise<void>

    Chrome 91 et versions ultérieures

    Les promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.

update()

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

Met à jour les propriétés du socket.

Paramètres

  • socketId

    number

    Identifiant de socket.

  • du bucket

    Propriétés à mettre à jour.

  • rappel

    fonction facultative

    Le paramètre callback se présente comme suit :

    ()=>void

Renvoie

  • Promise<void>

    Chrome 91 et versions ultérieures

    Les promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.

Événements

onAccept

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

Événement déclenché lorsqu'une connexion a été établie pour un socket donné.

Paramètres

  • rappel

    function

    Le paramètre callback se présente comme suit :

    (info: AcceptInfo)=>void

onAcceptError

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

Événement déclenché lorsqu'une erreur réseau s'est produite alors que l'environnement d'exécution attendait de nouvelles connexions sur le socket donné. Une fois cet événement déclenché, le socket est défini sur paused et aucun autre événement onAccept n'est déclenché pour ce socket.

Paramètres

onReceive

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

Événement déclenché lorsque des données ont été reçues pour un socket donné.

Paramètres

  • rappel

    function

    Le paramètre callback se présente comme suit :

    (info: ReceiveInfo)=>void

onReceiveError

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

Événement déclenché lorsqu'une erreur réseau s'est produite alors que l'environnement d'exécution attendait des données sur le socket. Une fois cet événement déclenché, le socket est défini sur paused et aucun autre événement onReceive n'est déclenché pour ce socket.

Paramètres