Descrizione
Utilizza l'API chrome.bluetoothSocket
per inviare e ricevere dati ai dispositivi Bluetooth utilizzando le connessioni RFCOMM e L2CAP.
Manifest
Tipi
AcceptError
Enum
"system_error"
Si è verificato un errore di sistema e la connessione potrebbe essere irrecuperabile.
"not_listening"
Il socket non è in ascolto.
AcceptErrorInfo
Proprietà
-
errore
Un codice di errore che indica cosa è andato storto.
-
errorMessage
stringa
Il messaggio di errore.
-
socketId
numero
L'identificatore del socket server.
AcceptInfo
Proprietà
-
clientSocketId
numero
L'identificatore del socket client, ovvero l'identificatore del socket della connessione appena stabilita. Questo identificatore di socket deve essere utilizzato solo con le funzioni dello spazio dei nomi
chrome.bluetoothSocket
. Tieni presente che il socket client è inizialmente in pausa e deve essere riattivato esplicitamente dall'applicazione per iniziare a ricevere dati. -
socketId
numero
L'identificatore del socket server.
CreateInfo
Proprietà
-
socketId
numero
L'ID del socket appena creato. Tieni presente che gli ID socket creati da questa API non sono compatibili con gli ID socket creati da altre API, ad esempio l'API
[
sockets.tcp](../sockets_tcp/)
.
ListenOptions
Proprietà
-
backlog
number (facoltativo)
Lunghezza della coda di ascolto del socket. Il valore predefinito dipende dal sottosistema host del sistema operativo.
-
canale
number (facoltativo)
Il canale RFCOMM utilizzato da
listenUsingRfcomm
. Se specificato, questo canale non deve essere in uso in precedenza, altrimenti la chiamata al metodo non andrà a buon fine. Se non specificato, verrà allocato automaticamente un canale inutilizzato. -
psm
number (facoltativo)
Il PSM L2CAP utilizzato da
listenUsingL2cap
. Se specificato, questo PSM non deve essere stato utilizzato in precedenza, altrimenti la chiamata al metodo non andrà a buon fine. Se non specificato, verrà allocato automaticamente un PSM inutilizzato.
ReceiveError
Enum
"disconnesso"
La connessione è stata disconnessa.
"system_error"
Si è verificato un errore di sistema e la connessione potrebbe essere irrecuperabile.
"not_connected"
La presa non è stata collegata.
ReceiveErrorInfo
Proprietà
-
errore
Un codice di errore che indica cosa è andato storto.
-
errorMessage
stringa
Il messaggio di errore.
-
socketId
numero
L'identificatore del socket.
ReceiveInfo
Proprietà
-
dati
ArrayBuffer
I dati ricevuti, con una dimensione massima di
bufferSize
. -
socketId
numero
L'identificatore del socket.
SocketInfo
Proprietà
-
indirizzo
stringa facoltativa
Se il socket sottostante è connesso, contiene l'indirizzo Bluetooth del dispositivo a cui è connesso.
-
bufferSize
number (facoltativo)
La dimensione del buffer utilizzato per ricevere i dati. Se non è stata specificata esplicitamente alcuna dimensione del buffer, il valore non viene fornito.
-
connesso
booleano
Contrassegno che indica se il socket è connesso a un peer remoto.
-
nome
stringa facoltativa
Stringa definita dall'applicazione associata al socket.
-
in pausa
booleano
Flag che indica se un socket connesso impedisce al peer di inviare altri dati o se le richieste di connessione su un socket in ascolto vengono inviate tramite l'evento
onAccept
o accodate nel backlog della coda di ascolto. Leggi isetPaused
. Il valore predefinito è "false". -
persistente
booleano
Flag che indica se il socket rimane aperto quando la pagina eventi dell'applicazione viene scaricata (vedi
SocketProperties.persistent
). Il valore predefinito è "false". -
socketId
numero
L'identificatore del socket.
-
uuid
stringa facoltativa
Se il socket sottostante è connesso, contiene informazioni sull'UUID del servizio a cui è connesso. In caso contrario, se il socket sottostante è in ascolto, contiene informazioni sull'UUID del servizio su cui è in ascolto.
SocketProperties
Proprietà
-
bufferSize
number (facoltativo)
La dimensione del buffer utilizzato per ricevere i dati. Il valore predefinito è 4096.
-
nome
stringa facoltativa
Una stringa definita dall'applicazione associata al socket.
-
persistente
booleano facoltativo
Flag che indica se il socket viene lasciato aperto quando viene scaricata la pagina dell'evento dell'applicazione (vedi Gestire il ciclo di vita dell'app). Il valore predefinito è
false.
. Quando l'applicazione viene caricata, tutti i socket aperti in precedenza con persistent=true possono essere recuperati congetSockets
.
Metodi
close()
chrome.bluetoothSocket.close(
socketId: number,
callback?: function,
): Promise<void>
Disconnette e distrugge il socket. Ogni socket creato deve essere chiuso dopo l'uso. L'ID socket non è più valido non appena viene chiamata la funzione. Tuttavia, la chiusura del socket è garantita solo quando viene richiamato il callback.
Parametri
-
socketId
numero
L'identificatore del socket.
-
callback
funzione facoltativa
Il parametro
callback
ha il seguente aspetto:() => void
Resi
-
Promise<void>
Chrome 91+Le promesse sono supportate solo per Manifest V3 e versioni successive, le altre piattaforme devono utilizzare i callback.
connect()
chrome.bluetoothSocket.connect(
socketId: number,
address: string,
uuid: string,
callback?: function,
): Promise<void>
Collega la presa a un dispositivo Bluetooth remoto. Al termine dell'operazione connect
, vengono generati eventi onReceive
quando i dati vengono ricevuti dal peer. Se si verifica un errore di rete mentre il runtime riceve pacchetti, viene generato un evento onReceiveError
, dopodiché non verrà generato alcun altro evento onReceive
per questo socket finché non viene chiamato il metodo setPaused(false)
.
Parametri
-
socketId
numero
L'identificatore del socket.
-
indirizzo
stringa
L'indirizzo del dispositivo Bluetooth.
-
uuid
stringa
L'UUID del servizio a cui connettersi.
-
callback
funzione facoltativa
Il parametro
callback
ha il seguente aspetto:() => void
Resi
-
Promise<void>
Chrome 91+Le promesse sono supportate solo per Manifest V3 e versioni successive, le altre piattaforme devono utilizzare i callback.
create()
chrome.bluetoothSocket.create(
properties?: SocketProperties,
callback?: function,
): Promise<CreateInfo>
Crea un socket Bluetooth.
Parametri
-
proprietà
SocketProperties facoltativo
Le proprietà del socket (facoltative).
-
callback
funzione facoltativa
Il parametro
callback
ha il seguente aspetto:(createInfo: CreateInfo) => void
-
createInfo
Il risultato della creazione del socket.
-
Resi
-
Promise<CreateInfo>
Chrome 91+Le promesse sono supportate solo per Manifest V3 e versioni successive, le altre piattaforme devono utilizzare i callback.
disconnect()
chrome.bluetoothSocket.disconnect(
socketId: number,
callback?: function,
): Promise<void>
Scollega la presa. L'identificatore del socket rimane valido.
Parametri
-
socketId
numero
L'identificatore del socket.
-
callback
funzione facoltativa
Il parametro
callback
ha il seguente aspetto:() => void
Resi
-
Promise<void>
Chrome 91+Le promesse sono supportate solo per Manifest V3 e versioni successive, le altre piattaforme devono utilizzare i callback.
getInfo()
chrome.bluetoothSocket.getInfo(
socketId: number,
callback?: function,
): Promise<SocketInfo>
Recupera lo stato del socket specificato.
Parametri
-
socketId
numero
L'identificatore del socket.
-
callback
funzione facoltativa
Il parametro
callback
ha il seguente aspetto:(socketInfo: SocketInfo) => void
-
socketInfo
Oggetto contenente le informazioni sul socket.
-
Resi
-
Promise<SocketInfo>
Chrome 91+Le promesse sono supportate solo per Manifest V3 e versioni successive, le altre piattaforme devono utilizzare i callback.
getSockets()
chrome.bluetoothSocket.getSockets(
callback?: function,
): Promise<SocketInfo[]>
Recupera l'elenco dei socket attualmente aperti di proprietà dell'applicazione.
Parametri
-
callback
funzione facoltativa
Il parametro
callback
ha il seguente aspetto:(sockets: SocketInfo[]) => void
-
prese
-
Resi
-
Promise<SocketInfo[]>
Chrome 91+Le promesse sono supportate solo per Manifest V3 e versioni successive, le altre piattaforme devono utilizzare i callback.
listenUsingL2cap()
chrome.bluetoothSocket.listenUsingL2cap(
socketId: number,
uuid: string,
options?: ListenOptions,
callback?: function,
): Promise<void>
Ascolta le connessioni utilizzando il protocollo L2CAP.
Parametri
-
socketId
numero
L'identificatore del socket.
-
uuid
stringa
UUID del servizio da ascoltare.
-
opzioni
ListenOptions opzionale
Opzioni aggiuntive facoltative per il servizio.
-
callback
funzione facoltativa
Il parametro
callback
ha il seguente aspetto:() => void
Resi
-
Promise<void>
Chrome 91+Le promesse sono supportate solo per Manifest V3 e versioni successive, le altre piattaforme devono utilizzare i callback.
listenUsingRfcomm()
chrome.bluetoothSocket.listenUsingRfcomm(
socketId: number,
uuid: string,
options?: ListenOptions,
callback?: function,
): Promise<void>
Ascolta le connessioni utilizzando il protocollo RFCOMM.
Parametri
-
socketId
numero
L'identificatore del socket.
-
uuid
stringa
UUID del servizio da ascoltare.
-
opzioni
ListenOptions opzionale
Opzioni aggiuntive facoltative per il servizio.
-
callback
funzione facoltativa
Il parametro
callback
ha il seguente aspetto:() => void
Resi
-
Promise<void>
Chrome 91+Le promesse sono supportate solo per Manifest V3 e versioni successive, le altre piattaforme devono utilizzare i callback.
send()
chrome.bluetoothSocket.send(
socketId: number,
data: ArrayBuffer,
callback?: function,
): Promise<number>
Invia dati sul socket Bluetooth specificato.
Parametri
-
socketId
numero
L'identificatore del socket.
-
dati
ArrayBuffer
I dati da inviare.
-
callback
funzione facoltativa
Il parametro
callback
ha il seguente aspetto:(bytesSent: number) => void
-
bytesSent
numero
Il numero di byte inviati.
-
Resi
-
Promise<number>
Chrome 91+Le promesse sono supportate solo per Manifest V3 e versioni successive, le altre piattaforme devono utilizzare i callback.
setPaused()
chrome.bluetoothSocket.setPaused(
socketId: number,
paused: boolean,
callback?: function,
): Promise<void>
Attiva o disattiva la ricezione di messaggi da parte di un socket connesso dal suo peer o l'accettazione di nuove connessioni da parte di un socket in ascolto. Il valore predefinito è "false". La sospensione di un socket connesso viene in genere utilizzata da un'applicazione per limitare i dati inviati dal relativo peer. Quando un socket connesso viene messo in pausa, non viene generato alcun evento onReceive
. Quando un socket è connesso e riattivato, gli eventi onReceive
vengono generati di nuovo quando vengono ricevuti i messaggi. Quando un socket di ascolto viene messo in pausa, le nuove connessioni vengono accettate finché il backlog non è pieno, dopodiché le richieste di connessione aggiuntive vengono rifiutate. Gli eventi onAccept
vengono generati solo quando il socket viene riattivato.
Parametri
-
socketId
numero
-
in pausa
booleano
-
callback
funzione facoltativa
Il parametro
callback
ha il seguente aspetto:() => void
Resi
-
Promise<void>
Chrome 91+Le promesse sono supportate solo per Manifest V3 e versioni successive, le altre piattaforme devono utilizzare i callback.
update()
chrome.bluetoothSocket.update(
socketId: number,
properties: SocketProperties,
callback?: function,
): Promise<void>
Aggiorna le proprietà del socket.
Parametri
-
socketId
numero
L'identificatore del socket.
-
proprietà
Le proprietà da aggiornare.
-
callback
funzione facoltativa
Il parametro
callback
ha il seguente aspetto:() => void
Resi
-
Promise<void>
Chrome 91+Le promesse sono supportate solo per Manifest V3 e versioni successive, le altre piattaforme devono utilizzare i callback.
Eventi
onAccept
chrome.bluetoothSocket.onAccept.addListener(
callback: function,
)
Evento generato quando è stata stabilita una connessione per un determinato socket.
Parametri
-
callback
funzione
Il parametro
callback
ha il seguente aspetto:(info: AcceptInfo) => void
-
informazioni
-
onAcceptError
chrome.bluetoothSocket.onAcceptError.addListener(
callback: function,
)
Evento generato quando si è verificato un errore di rete mentre il runtime era in attesa di nuove connessioni sul socket specificato. Una volta generato questo evento, il socket viene impostato su paused
e non vengono generati altri eventi onAccept
per questo socket.
Parametri
-
callback
funzione
Il parametro
callback
ha il seguente aspetto:(info: AcceptErrorInfo) => void
-
informazioni
-
onReceive
chrome.bluetoothSocket.onReceive.addListener(
callback: function,
)
Evento generato quando sono stati ricevuti dati per un determinato socket.
Parametri
-
callback
funzione
Il parametro
callback
ha il seguente aspetto:(info: ReceiveInfo) => void
-
informazioni
-
onReceiveError
chrome.bluetoothSocket.onReceiveError.addListener(
callback: function,
)
Evento generato quando si è verificato un errore di rete mentre il runtime era in attesa di dati sul socket. Una volta generato questo evento, il socket viene impostato su paused
e non vengono generati altri eventi onReceive
per questo socket.
Parametri
-
callback
funzione
Il parametro
callback
ha il seguente aspetto:(info: ReceiveErrorInfo) => void
-
informazioni
-