Як я можу скриптувати пристрій Bluetooth для підключення / відключення?


16

У мене є навушники Bluetooth, які я використовую як для прослуховування музики з мобільного телефону, так і для прослуховування відео на своєму ноутбуці. Вони не можуть бути підключені до обох пристроїв одночасно ( зверніть увагу тут ), тому мені доведеться відключитися від одного пристрою перед тим, як підключитися до наступного пристрою.

Для цього в Windows 7 мені потрібно відкрити пристрої та принтери, відкрити навушники Bluetooth та натиснути кнопку підключення / відключення. Я хотів би мати можливість запустити сценарій, який запускає кнопку підключення / відключення. Таким чином я міг би мати ярлик на робочому столі або додати комбінацію клавіш.

Я дещо впорядкував це, створивши ярлик до вікна bluetooth-телефонів Bluetooth (у пристроях та принтерах клацніть правою кнопкою миші на пристрої Bluetooth та оберіть Створити ярлик). Але було б добре упорядкувати далі.


2
Так. На моєму комп’ютері немає можливостей Bluetooth, але ви можете використовувати AutoHotkey для автоматизації процесу. Дивіться мою відповідь тут щодо ідей: superuser.com/questions/403620/…
iglvzx

Дякую, хороша ідея. Я спробую це, коли у мене буде вільна хвилина.
Девід Кук

@DavidCook Повідомте нас, якщо ви розберетеся, я хотів би взяти копію цього сценарію.
BigElittles

Вибачте @ Великий, я не думаю, що я його коли-небудь розбирав. Радий, що ти знайшов рішення.
Девід Кук

Відповіді:


2

Я знайшов подібне питання, ось резолюція. /programming/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

ОП заявив, що отримує спливаюче вікно повідомлень, але він також знаходиться на Windows 8, так що це може бути унікальним для його налаштування.


2

Як виявляється, коли всі сервіси, якими користується пристрій, відключаються, пристрій вивільняється та відключається Windows автоматично. У моєму прикладі нижче для WH-1000XM3 це голос і музика, і більшість навушників працюватимуть так само. Звичайно, це залежатиме від використовуваного пристрою.

Вам знадобляться інструменти командного рядка Bluetooth .

Голос насправді - це послуга вільної руки (HFP), а музика - це лише мийка аудіо (A2DP). Ідентифікатори послуг будуть потрібні, і їх можна буде дізнатись за допомогою btdiscoveryкоманди з пакета вище або через список служб Bluetooth . HFP голос є 111e, A2DP - музика 110b.

За btcomдовідкою командного рядка:

Використання:

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.

Щоб відключити пристрій, видайте наступне (працює лише тоді, коли в моєму випадку працює як адміністратор, використовуючи 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

Щоб знову підключитися, надрукуйте те ж саме, -cа не -r. Це працює для інших пристроїв, а не лише для навушників, якщо всі сервіси / профілі, підключені Windows, вимкнено / увімкнено.

Примітка: використання -n <friendly name>набагато повільніше, ніж використання -b <address>завдяки виявленню Bluetooth.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.