Come posso eseguire lo scripting di un dispositivo Bluetooth per connettersi / disconnettersi?


14

Ho delle cuffie bluetooth che utilizzo sia per ascoltare musica dal mio cellulare sia per ascoltare video sul mio laptop. Non possono essere collegati contemporaneamente a entrambi i dispositivi ( nota qui ), quindi devo disconnettermi da un dispositivo prima di collegarmi al dispositivo successivo.

Per fare ciò su Windows 7, devo aprire Dispositivi e stampanti, aprire le mie cuffie bluetooth e fare clic sul pulsante Connetti / Disconnetti. Mi piacerebbe poter eseguire uno script che attiva il pulsante Connetti / Disconnetti. In questo modo potrei avere una scorciatoia sul desktop o aggiungere una scorciatoia da tastiera.

L'ho semplificato un po 'creando un collegamento alla finestra heaphone bluetooth (in Dispositivi e stampanti, fai clic con il pulsante destro del mouse sul dispositivo Bluetooth e scegli Crea collegamento). Ma sarebbe bene semplificare ulteriormente.


2
Sì. Il mio computer non ha funzionalità Bluetooth, ma è possibile utilizzare AutoHotkey per automatizzare il processo. Vedi la mia risposta qui per idee: superuser.com/questions/403620/…
iglvzx

Grazie, buona idea Lo proverò quando avrò un minuto libero.
David Cook,

@DavidCook Facci sapere se lo risolvi, mi piacerebbe prendere una copia di quello script.
BigElittles,

Mi dispiace @Big, non credo di averlo mai risolto. Sono contento che tu abbia trovato una soluzione.
David Cook,

Risposte:


1

Ho trovato una domanda simile, ecco la risoluzione. https://stackoverflow.com/questions/29724513/automatically-adding-a-bluetooth-device-in-windows-8

@ECHO OFF
if exist toggle.txt goto :2
btpair -u
C:\NIRCMD\NIRCMDC setdefaultsounddevice "CompSpeak" 1
C:\NIRCMD\NIRCMDC setdefaultsounddevice "CompSpeak" 2

echo toggle>>toggle.txt

exit
:2
btpair -n"[Samsung] AirTrack" -p0000
C:\NIRCMD\NIRCMDC setdefaultsounddevice "Headphones" 1
C:\NIRCMD\NIRCMDC setdefaultsounddevice "Headphones" 2

del toggle.txt /q

exit

OP ha detto che stava ottenendo una finestra di messaggio pop-up, ma è anche su Windows 8, quindi potrebbe essere unico per la sua configurazione.


1

A quanto pare, una volta che tutti i servizi in uso da un dispositivo vengono disabilitati, il dispositivo viene rilasciato e disconnesso automaticamente da Windows. Nel mio esempio di seguito per WH-1000XM3 si tratta di voce e musica e la maggior parte delle cuffie funzionerà allo stesso modo. Questo dipenderà ovviamente dal dispositivo in uso.

Sono necessari gli strumenti da riga di comando Bluetooth .

La voce è in realtà il servizio vivavoce (HFP) e la musica è solo un audio sink (A2DP). Gli identificatori di servizio saranno necessari e potranno essere scoperti tramite l'uso del btdiscoverycomando dal pacchetto sopra o tramite l' elenco dei servizi Bluetooth . La voce HFP è 111e, la musica A2DP è 110b.

Per btcomaiuto dalla riga di comando:

Uso:

btcom {-c|-r} {-bBluetoothAddress | -nFriendlyName} [-s{sp|dun|GUID|UUID}]

 -c  Create association between COM port and a remote service (Enable non-COM service).
 -r  Remove association between COM port and a remote service (Disable non-COM service).
 -s  Remote service to use (Default is Serial Port Service)
 -b  Bluetooth address of remote device in (XX:XX:XX:XX:XX:XX) format. 
 -n  Friendly name of remote device.

Per disconnettere il dispositivo, eseguire quanto segue (funziona solo quando eseguito come amministratore nel mio caso, utilizzando Windows 10 1809 (17763.437)):

"C:\Program Files (x86)\Bluetooth Command Line Tools\bin\btcom" -n "WH-1000XM3" -r -s111e
"C:\Program Files (x86)\Bluetooth Command Line Tools\bin\btcom" -n "WH-1000XM3" -r -s110b

Per riconnetterti, rilascia lo stesso con -cinvece di -r. Funziona con altri dispositivi, non solo con le cuffie, a condizione che tutti i servizi / profili collegati da Windows vengano disabilitati / abilitati.

Nota: l'utilizzo -n <friendly name>è molto più lento rispetto all'uso a -b <address>causa dell'esecuzione del rilevamento Bluetooth.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.