Terminal üzerinden bir Bluetooth cihazıyla eşleştirme


12

Bir Bluetooth cihazını komut satırından bağlamaya ve eşleştirmeye çalışıyorum. Standart süreci kullanarak GUI üzerinden yapabilirim ama tüm süreci otomatikleştirmek için arıyorum.

Bluetooth cihazına bağlanmak için bir kabuk betiğinde çalıştırılabilecek komutları arıyorum. Tıpkı Linux'ta "hcitool", "pand" komutları olduğu gibi, macOS için eşdeğer komutlar bulmaya çalışıyorum.

Bunu nasıl başarabilirim?

Yanıtlar:


2

Bu biraz "hacky" gibi görünüyor, ancak bunu bağlamak için gereken GUI etkileşimlerini taklit eden bir oascript kullanarak yapabilirsiniz: /programming//a/23018886/5269642

Gerçekten ne yazık ki bluetooth için herhangi bir belgelenmiş API bulamadık, oascript-yaklaşım ben şimdiye kadar bulabildiğim / düşünüyorum iyi oldu.


1

blueutil(HomeBrew aracılığıyla edinilebilir) cevaptır. Bu blog yazısındaki yönergeleri izleyerek kullandım .

Benim durumumda, hiçbir trackpad eşleştirilmemiş macOS Catalina ile bir iMac vardı. "Apple Crash Analytics Gönderilsin mi?" klavye kontrolü olmayan ekran. SSH kullanarak makineye bağlandım ve izleme dörtgenini GUI'ye erişmeden eşleştirmek ve bağlamak için aşağıdaki komutları kullandım. (İlk olarak, izleme dörtgenini Keşfedilebilir moda çevirmem gerekiyordu. Apple işaretçi cihazları için varsayılan PIN 0000.)

% blueutil --inquiry
address: d0-a6-xx-xx-xx-xx, not connected, not favourite, not paired, name: "-", recent access date: -
% blueutil --pair d0-a6-xx-xx-xx-xx
Type pin code (up to 16 characters) for "Cheshire, Josh’s Trackpad" (d0-a6-xx-xx-xx-xx) and press Enter: 0000
% blueutil --connect d0-a6-xx-xx-xx-xx

Bu noktada hareket tuşu çalıştı.


0

Blueutil aracı , Bluetooth cihazlarıyla etkileşim kurmak için IOBluetooth çerçevesindeki özel API'leri kullanır. Son kullanılan cihazları aşağıdakileri kullanarak listeleyebilirsiniz:

blueutil --recent

ve aşağıdakileri kullanarak belirli bir cihaza bağlanın:

blueutil --connect $device_adress
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.