exibir o item da barra de status da VPN , no entanto, não faz parte do conjunto de preferências de rede . Se você não conseguir viver com o ícone presente permanentemente em sua área da barra de status, será necessário usar o script da GUI para ativá-lo sob demanda:
property vpnToUse : "<name of your VPN>"
tell application "System Events"
-- first activate the network pane, wait for it to load
-- also might want to make sure this does not interrupt user interaction
<your code here>
-- get the index of the VPN in the service list
tell current location of network preferences
repeat with i from 1 to (count of every service)
if name of (service i) is vpnToUse then
set listIndex to i
exit repeat
end if
end repeat
end tell
-- select the VPN item in the service list and activate status bar item
tell process (name of application id "com.apple.systempreferences")
tell window 1
select row listIndex of table 1 of scroll area 1
tell checkbox 1 of group 1
-- only click if not already activated
if value is 0 then click it
end tell
end tell
end tell
end tell
observe que essa parte, como sempre nos scripts da GUI, é potencialmente altamente perturbadora: rouba o foco do usuário, na pior das hipóteses, até cancela o que ela estava fazendo se estivesse usando as Preferências do Sistema (há uma excelente discussão sobre os profissionais e (contras de scripts da GUI para manipular as Configurações do sistema anteriores aos Conjuntos de preferências no MacScripter ). Também é frágil (pois está sujeito ao layout específico da interface do usuário do painel de preferências), embora se você seguir o modelo que mostro acima, usando índices e recuperação de nomes de processos por meio do ID do aplicativo, ele pelo menos não seja afetado por problemas de localização .