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 lessetPaused
. 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 avecgetSockets
.
Méthodes
close()
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érieuresLes promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.
connect()
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érieuresLes promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.
create()
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érieuresLes promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.
disconnect()
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érieuresLes promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.
getInfo()
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érieuresLes promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.
getSockets()
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
-
prises
-
Renvoie
-
Promise<SocketInfo[]>
Chrome 91 et versions ultérieuresLes promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.
listenUsingL2cap()
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érieuresLes promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.
listenUsingRfcomm()
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érieuresLes promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.
send()
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érieuresLes promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.
setPaused()
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érieuresLes promesses ne sont compatibles qu'avec Manifest V3 et versions ultérieures. Les autres plates-formes doivent utiliser des rappels.
update()
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érieuresLes 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
-
infos
-
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
-
rappel
function
Le paramètre
callback
se présente comme suit :(info: AcceptErrorInfo)=>void
-
infos
-
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
-
infos
-
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
-
rappel
function
Le paramètre
callback
se présente comme suit :(info: ReceiveErrorInfo)=>void
-
infos
-