Estoy usando Boom como ecualizador y potenciador de audio de archivos en mi MBP cuando utilizo los altavoces integrados. Pero cuando uso un dispositivo casero (con un amplificador conectado por jack al MBP) o unos auriculares (bluetooth o jack) prefiero desconectar Boom .
De momento he hecho un automator script que conecta/desconecta bluetooth y sale/lanza Boom .
¿Hay alguna forma de actualizar mi script actual para que se active al enchufar/desenchufar el conector o al conectar/desconectar el dispositivo bluetooth (no sólo al activar/desactivar el bluetooth)?
Nota : Soy consciente de Breakaway que desactive automáticamente los altavoces cuando se quiten los auriculares (pero sólo conectando/desconectando manualmente la clavija), pero algo que cierre/inicie una aplicación específica me iría mejor.
Para los curiosos, aquí mi actual script usando Blueutil :
set BT to do shell script "/usr/local/bin/blueutil -p"
if BT is equal to "0" then
do shell script "/usr/local/bin/blueutil -p 1"
tell application "Boom 2" to quit
else
do shell script "/usr/local/bin/blueutil -p 0"
tell application "Boom 2" to activate
end if
1 votos
Probablemente necesites una aplicación de terceros como Maestro del teclado que puede disparar scripts (entre otras cosas) en respuesta a diferentes eventos que ocurran en tu sistema. Es una aplicación de pago, pero el periodo de prueba te permitirá determinar si se adapta a tus necesidades. AppleScript puede hacer las cosas que ya estás haciendo, pero no puede escuchar eventos Bluetooth.
0 votos
Gracias por el consejo. Lo probaré cuando pueda.. Pero ¿estás insinuando que applescript no puede ejecutar automáticamente algo con un disparador (como desenchufar los auriculares) ?
2 votos
Eche un vistazo a EventScripts Es 3,99 $ en la App Store de EE.UU. pero se puede descargar una demo gratuita desde el sitio web del desarrollador. Nota: No estoy afiliado con el desarrollador de EventScripts, sólo un usuario satisfecho del producto.
1 votos
Un poco más que insinuar, pero sí. Con la excepción de Carpeta Acciones AppleScript no puede/no controla los eventos de bajo nivel del sistema, por lo que no puede utilizarse para crear disparadores. Algunas aplicaciones programables proporcionan activadores para eventos de alto nivel dentro de la aplicación que AppleScript puede utilizar, por ejemplo. BBEdit oyentes de aplicaciones/documentos. Pero para que la solución sea sostenible y utilizable, es necesario disponer de medios para escuchar los mensajes que el sistema emite cada vez que ocurre algo. Lo que no quieres es un bucle de repetición AppleScript acosando al sistema con "¿Ya hemos llegado?" .
0 votos
En realidad, cualquier forma de sondeo no es buena, pero es lo único que AppleScript puede hacer. La excepción a esto es mediante AppleScriptObjC, del que se podrían tomar prestados los medios para crear "observadores", cada uno adaptado para escuchar eventos específicos. El observador escucharía los mensajes que informan, por ejemplo, de cambios de estado del Bluetooth, y llamaría a un controlador definido por el usuario. Sería una aplicación AppleScript que permanecería inactiva en segundo plano. Probablemente no sea una mala solución, pero hay lenguajes más ideales en los que implementar esta solución, digamos, como un proceso en segundo plano o una herramienta de línea de comandos.
0 votos
¡Consigo que los EventScripts funcionen a las mil maravillas ! ¡Gracias @user3439894, vale la pena cada centavo !
0 votos
Oooh, EventScripts . Me había olvidado por completo de esa aplicación. ¡Que bueno!