Ist es möglich, eine Bluetooth-Verbindung mit Applescript zu trennen?

Ich möchte eine Verbindung zu einem Bluetooth-Gerät über ein Applescript trennen. Bitte beachten Sie, dass ich Bluetooth nicht deaktivieren oder aktivieren möchte, sondern nur eine bestimmte Verbindung deaktivieren möchte.

Antworten (3)

Hier ist, was ich zum Trennen meiner Samsung Soundbar verwende. Denken Sie auch daran, dass Sie der Anwendung die Erlaubnis erteilen müssen, SystemUIServerSchritte dafür zu verwenden.

System Preferences > Security & Privacy > Accessibility > [name_of_your_application]

Eine kleine Bemerkung: Sie müssen das Bluetooth-Symbol in Ihrer Menüleiste haben.

tell application "System Events" to tell process "SystemUIServer"
    set bt to (first menu bar item whose description is "bluetooth") of menu bar 1
    click bt
    tell (first menu item whose title is "[Samsung] Soundbar") of menu of bt
        click
        tell menu 1
            if exists menu item "Disconnect" then
                click menu item "Disconnect"
            else
                click bt -- close main dropdown to clean up after ourselves
            end if
        end tell
    end tell
end tell
Funktioniert gut. Ich hätte nicht gedacht, dass es über die Menüleiste geht, aber es funktioniert super. Danke, Mann.

Die Bluetooth-Funktionalität wird nicht über die Mac OS-APIs zur Verfügung gestellt (Systemereignisse sind die wichtigsten für solche Dinge). Sie sollten in der Lage sein, dies mit GUI-Skripting zu tun ( eine großartige Einführung finden Sie auf der Mac OS X-Automatisierungsseite ), aber dies ist eine wirklich wackelige Methode und fehleranfällig (unerwartete Dialogfenster sind das größte Einzelproblem). ).

Ich bin mir nicht sicher, ob das funktionieren wird, mein Bluetooth ist seit geraumer Zeit b0rk3d, aber

man networksetup

Sie sollten in der Lage sein, etwas zu sagen

networksetup -getInfo <interface>

und dann könnten Sie die große Auswahl an tragisch zufällig großgeschriebenen Schaltern verwenden, um Ihren Willen auf Ihr Bluetooth-Gerät zu wirken, das eine Netzwerkschnittstelle sein sollte.

ODER

Sie möchten eine Verbindung deaktivieren, und zwar nur eine Verbindung?

/sbin/ipfw -q add deny ip from <bluetooth interface> to [any|badguy.com]
Ich glaube nicht, dass das der richtige Weg ist. Ich spreche nicht von einem Bluetooth-PAN oder ähnlichem. Ich beziehe mich auf eine einfache Bluetooth-Verbindung zwischen einem Human-Input Device (HID) und meinem Macbook.