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.

Fichier manifeste

Pour utiliser cette API, vous devez déclarer les clés suivantes dans le fichier manifeste.

"bluetooth"

Types

AcceptError

Énumération

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

"not_listening"
Le socket n'écoute pas.

AcceptErrorInfo

Propriétés

  • erreur

    Code d'erreur indiquant le problème.

  • errorMessage

    chaîne

    Message d'erreur.

  • socketId

    Nombre

    Identifiant du socket du serveur.

AcceptInfo

Propriétés

  • clientSocketId

    Nombre

    Identifiant du socket client, c'est-à-dire l'identifiant du socket de la connexion nouvellement établie. Cet identifiant de socket ne doit être utilisé qu'avec les 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

    Nombre

    Identifiant du socket du serveur.

CreateInfo

Propriétés

  • socketId

    Nombre

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

ListenOptions

Propriétés

  • backlog

    number 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

    number facultatif

    Canal RFCOMM utilisé par listenUsingRfcomm. Si elle est spécifiée, ce canal ne doit pas avoir été utilisé auparavant, sinon l'appel de méthode échouera. Si vous ne spécifiez pas de canal, un canal inutilisé sera automatiquement attribué.

  • psm

    number facultatif

    PSM L2CAP utilisé par listenUsingL2cap. Si elle est spécifiée, cette PSM ne doit pas avoir été utilisée précédemment, sinon l'appel de méthode échouera. Si aucune valeur n'est spécifiée, un PSM inutilisé est automatiquement attribué.

ReceiveError

Énumération

"disconnected"
La connexion a été interrompue.

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

"not_connected"
La prise n'a pas été connectée.

ReceiveErrorInfo

Propriétés

  • erreur

    Code d'erreur indiquant le problème.

  • errorMessage

    chaîne

    Message d'erreur.

  • socketId

    Nombre

    Identifiant du socket.

ReceiveInfo

Propriétés

  • données

    ArrayBuffer

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

  • socketId

    Nombre

    Identifiant du socket.

SocketInfo

Propriétés

  • adresse

    chaîne facultatif

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

  • bufferSize

    number facultatif

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

  • connecté

    booléen

    Indicateur indiquant si le socket est connecté à un homologue distant.

  • nom

    chaîne facultatif

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

  • mis en veille

    booléen

    Indicateur indiquant si un socket connecté empêche son homologue d'envoyer d'autres 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

    booléen

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

  • socketId

    Nombre

    Identifiant du socket.

  • uuid

    chaîne facultatif

    Si le socket sous-jacent est connecté, contient des informations sur l'UUID du service auquel il est connecté. Sinon, si le socket sous-jacent est en écoute, contient des informations sur l'UUID du service sur lequel il est en écoute.

SocketProperties

Propriétés

  • bufferSize

    number facultatif

    Taille de la mémoire tampon utilisée pour recevoir des données. La valeur par défaut est 4 096.

  • nom

    chaîne facultatif

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

  • SSD

    booléen facultatif

    Indicateur indiquant si le socket est laissé ouvert lorsque la page d'événement de l'application est désinstallée (voir Gérer le cycle de vie de l'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'ID de socket n'est plus valide dès l'appel de la fonction. Toutefois, le socket n'est fermé que lorsque le rappel est appelé.

Paramètres

  • socketId

    Nombre

    Identifiant du socket.

  • rappel

    fonction facultatif

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

    () => void

Renvoie

  • Promise<void>

    Chrome 91 ou version ultérieure

    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 générés lorsque des données sont reçues de l'homologue. Si une erreur réseau se produit pendant que l'environnement d'exécution reçoit des paquets, un événement onReceiveError est généré. À ce stade, aucun autre événement onReceive ne sera généré pour ce socket tant que la méthode setPaused(false) n'est pas appelée.

Paramètres

  • socketId

    Nombre

    Identifiant du socket.

  • adresse

    chaîne

    Adresse de l'appareil Bluetooth.

  • uuid

    chaîne

    UUID du service auquel se connecter.

  • rappel

    fonction facultatif

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

    () => void

Renvoie

  • Promise<void>

    Chrome 91 ou version ultérieure

    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 facultatif

    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 ou version ultérieure

    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éconnecte la prise. L'identifiant de socket reste valide.

Paramètres

  • socketId

    Nombre

    Identifiant du socket.

  • rappel

    fonction facultatif

    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 du socket donné.

Paramètres

  • socketId

    Nombre

    Identifiant du socket.

  • rappel

    fonction facultatif

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

    (socketInfo: SocketInfo) => void

    • socketInfo

      Objet contenant les informations sur le 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 facultatif

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

    (sockets: SocketInfo[]) => void

Renvoie

  • Promise<SocketInfo[]>

    Chrome 91 ou version ultérieure

    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

    Nombre

    Identifiant du socket.

  • uuid

    chaîne

    UUID du service à écouter.

  • options

    ListenOptions facultatif

    Options supplémentaires facultatives pour le service.

  • rappel

    fonction facultatif

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

    () => void

Renvoie

  • Promise<void>

    Chrome 91 ou version ultérieure

    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

    Nombre

    Identifiant du socket.

  • uuid

    chaîne

    UUID du service à écouter.

  • options

    ListenOptions facultatif

    Options supplémentaires facultatives pour le service.

  • rappel

    fonction facultatif

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

    () => void

Renvoie

  • Promise<void>

    Chrome 91 ou version ultérieure

    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 des données sur le socket Bluetooth donné.

Paramètres

  • socketId

    Nombre

    Identifiant du socket.

  • données

    ArrayBuffer

    Données à envoyer.

  • rappel

    fonction facultatif

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

    (bytesSent: number) => void

    • bytesSent

      Nombre

      Nombre d'octets envoyés.

Renvoie

  • Promise<number>

    Chrome 91 ou version ultérieure

    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 la réception de messages par un socket connecté à son homologue ou l'acceptation de nouvelles connexions par un socket d'écoute. La valeur par défaut est "false". Une application utilise généralement la mise en pause d'un socket connecté pour limiter les données envoyées par son homologue. Lorsqu'un socket connecté est mis en pause, aucun événement onReceive n'est généré. Lorsqu'un socket est connecté et dépausé, des événements onReceive sont à nouveau générés lorsque des messages sont reçus. Lorsqu'un socket d'écoute est mis en pause, les nouvelles connexions sont acceptées jusqu'à ce que la file d'attente soit pleine, puis les requêtes de connexion supplémentaires sont refusées. Les événements onAccept ne sont déclenchés que lorsque le socket est débloqué.

Paramètres

  • socketId

    Nombre

  • mis en veille

    booléen

  • rappel

    fonction facultatif

    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

    Nombre

    Identifiant du socket.

  • du bucket

    Propriétés à mettre à jour.

  • rappel

    fonction facultatif

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

    () => void

Renvoie

  • Promise<void>

    Chrome 91 ou version ultérieure

    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 généré lorsqu'une connexion a été établie pour un socket donné.

Paramètres

  • rappel

    fonction

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

    (info: AcceptInfo) => void

onAcceptError

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

Événement généré 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 généré, le socket est défini sur paused et aucun autre événement onAccept n'est généré pour ce socket.

Paramètres

onReceive

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

Événement généré lorsque des données ont été reçues pour un socket donné.

Paramètres

  • rappel

    fonction

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

    (info: ReceiveInfo) => void

onReceiveError

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

Événement généré 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 généré, le socket est défini sur paused et aucun autre événement onReceive n'est généré pour ce socket.

Paramètres