回答:
この方法でBluetoothを操作するための直接のAppleScript辞書があるようには見えません。
ただし、基本的にはMac OSのアクセシビリティ機能を使用してメニュー項目などを選択するGUIスクリプトを使用することもできます。
GUIのAppleScriptを起動する方法に大きな過去記事はで利用可能ですMacOSAutomation.com。
物事のリストが常に変化している場合、GUIの自動化は難しい場合がありますが、接続されているBluetoothアイテムのリストが常に同じである場合は、大丈夫です。
次に、このAppleScriptをAlfredから呼び出すことができます。
http://macscripter.net/viewtopic.php?id=38559
上記のリンクには、少しだけ更新した非常に優れたスクリプトがあります。blueutil [ git repo ] [ website / binaries ]を使用していることに注意してください。
Bluetoothを有効にする:
-- Enable Bluetooth and Connect to iPhone
property blueutilPath : "/opt/local/bin/blueutil"
-- Turn on bluetooth.
if execBlueutil("status") contains "Status: off" then
execBlueutil("on")
connectDevice()
doGrowl()
end if
on execBlueutil(command)
set res to do shell script blueutilPath & " " & command
if res contains "Error" then
display dialog res
quit
end if
return res
end execBlueutil
-- Connect Device
on connectDevice()
tell application "System Preferences"
activate
set AppleScript's text item delimiters to "."
set current pane to pane "com.apple.preference.network"
set winNetwork to "Network"
set btooth to "Bluetooth"
tell application "System Events" to tell process "System Preferences"
set theRow to row 1 of table 1 of scroll area 1 of window winNetwork whose value of static text 1 contains btooth
select theRow --clicks the bluetooth row
--If Bluetooth is already connected, the button will say Disconnect, so we don't want to turn it off:
try
click (button 1 of group 1 of window winNetwork whose title is "Connect")
end try
end tell
tell application "System Preferences"
quit
end tell
end tell
end connectDevice
on doGrowl()
tell application "System Events"
set isRunning to (count of (every process whose bundle identifier is "com.Growl.GrowlHelperApp")) > 0
end tell
if isRunning then
tell application id "com.Growl.GrowlHelperApp"
set the allNotificationsList to ¬
{"Bluetooth Setting"}
set the enabledNotificationsList to ¬
{"Bluetooth Setting"}
register as application ¬
"AppleScript - Bluetooth" all notifications allNotificationsList ¬
default notifications enabledNotificationsList
notify with name ¬
"Bluetooth Setting" title ¬
"Bluetooth is On & iPhone Connected" description ¬
"Bluetooth has been enabled with iPhone tethered." application name "AppleScript - Bluetooth" icon of file (path to me)
end tell
end if
end doGrowl
Bluetoothを無効にする:
property blueutilPath : "/opt/local/bin/blueutil"
-- Turn off Bluetooth.
if execBlueutil("status") contains "Status: on" then
execBlueutil("off")
doGrowl()
end if
on execBlueutil(command)
set res to do shell script blueutilPath & " " & command
if res contains "Error" then
display dialog res
quit
end if
return res
end execBlueutil
on doGrowl()
tell application "System Events"
set isRunning to (count of (every process whose bundle identifier is "com.Growl.GrowlHelperApp")) > 0
end tell
if isRunning then
tell application id "com.Growl.GrowlHelperApp"
set the allNotificationsList to ¬
{"Bluetooth Setting"}
set the enabledNotificationsList to ¬
{"Bluetooth Setting"}
register as application ¬
"AppleScript - Bluetooth" all notifications allNotificationsList ¬
default notifications enabledNotificationsList
notify with name ¬
"Bluetooth Setting" title ¬
"Bluetooth Off" description ¬
"Bluetooth has been disabled." application name "AppleScript - Bluetooth" icon of file (path to me)
end tell
end if
end doGrowl