Transmission no es compatible con AppleScript específicamente, por lo que no hay forma de utilizar AppleScript para comprobar si las descargas siguen activas o no.
Hay un debate simultáneo sobre esta idea en https://forum.keyboardmaestro.com/t/applescript-for-transmission-app/15789 pero este es probablemente un mejor lugar para ello, así que resumiré mi respuesta desde allí.
-
Instalar transmission-cli
utilizando brew
: brew info transmission-cli
-
Activa la función "Remoto" de la aplicación Transmission:
Usted no tienen para limitar a 127.0.0.1
pero a menos que necesites acceder desde otro ordenador, no hay nada malo en dejarlo activado.
- Habilite la función para eliminar el torrent de la lista de Transmission una vez que se haya realizado la transmisión:
-
Ahora puedes ejecutar este script periódicamente:
!/usr/bin/env zsh -f
PATH=/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin
# the `pgrep` line says 'If Transmission is not running, exit immediately
# just in case the script happens to be run when the app isn't even running
pgrep -qx Transmission || exit 0
STATUS=$(transmission-remote --list | egrep -v '^(ID|Sum:) ')
if [[ "$STATUS" == "" ]]
then
osascript -e 'tell application "Transmission" to quit'
else
echo "Transmission is still active:\n$STATUS"
fi
exit 0
Si Transmission se está ejecutando, pero no hay elementos en la lista, se abandonará.
Es posible que haya otras formas de hacerlo, pero no se me ocurre ninguna (aparte de usar la preferencia de Transmission de ejecutar un script cuando se completa una descarga, y salir de la aplicación entonces, pero eso fallará si hay varias descargas simultáneas activas).