Comment puis-je lancer automatiquement une application lorsque le Mac devient inactif?

15

Existe-t-il un moyen de lancer une application, telle que Transmission, chaque fois que l'ordinateur devient inactif (au lieu de dormir)?

Petruza
la source

Réponses:

7

C'est un exploit très difficile à réaliser, principalement parce qu'il n'y a pas de définition spécifique de "ralenti". Les seuls programmes que j'ai vus avoir réellement des fonctionnalités inactives sont les clients de messagerie instantanée et les dernières versions du Mac App Store de Growl . Et ceux-ci ont simplement un temps configurable qui s'éteint après le nombre de minutes défini lorsqu'il n'y a pas d'activité de souris / clavier.

Il y a eu des discussions similaires sur les forums Macworld il y a quelques années, et un article spécifique qui implique essentiellement la création et l'exécution d'un AppleScript qui surveillera votre utilisation et lancera une application lorsque vous devenez "inactif".

property idleCheck : 20 as integer
property idleCheck_usr : 120 as integer
set timer to 0
on idle
    --Check idle time
    set idletime to do shell script "ioreg -c IOHIDSystem | awk '/HIDIdleTime/ {print int($NF/1000000000); exit}'"
    set idletime to idletime as string
    set idletime to idletime as integer

    tell application "System Events"
        if idletime is less than idleCheck then (* 20 is 20 seconds. If a key was tapped within the idleCheck seconds, it quits the app. *)
            tell application "TextEdit" to quit

            return idleCheck -- checks again in ... seconds
        else
            if idletime is greater than idleCheck_usr then (*  If a key was tapped after the idleCheck_usr seconds it opens the app. *)
                tell application "TextEdit" to launch   
            end if

            return idleCheck
        end if
    end tell
end idle

Dans ce cas, le ralenti n'est qu'après 2 minutes, mais vous pouvez facilement changer cela pour qu'il soit plus long si nécessaire. Vous voudrez également modifier la ligne pour ouvrir la transmission au lieu de TextEdit.

Notez que vous devrez ouvrir ce AppleScript et le laisser fonctionner pour que l'action (lancement d'une application en veille) se produise.

Jason Salaz
la source
7

Avez-vous essayé d'utiliser Scenario ? C'est sur le Mac App Store. Même si je ne l'ai pas essayé moi-même. Il semble que cela puisse faire ce dont vous avez besoin. J'espère que cela t'aides.

Christian Correa
la source
J'allais suggérer d'exécuter une installation personnelle de Condor sur une machine, mais le scénario semble couvrir le même terrain et plus encore et est spécifique à Mac. Très agréable.
Ian C.
3

Que diriez - vous Sleepwatcher ?

"SleepWatcher 2.2 (fonctionnant avec Mac OS X 10.5 à 10.7, code source inclus) est un outil de ligne de commande (démon) pour Mac OS X qui surveille le sommeil, le réveil et l'inactivité d'un Mac. Il peut être utilisé pour exécuter une commande Unix lorsque le Mac ou l'écran du Mac passe en mode veille ou se réveille, après un certain temps sans interaction de l'utilisateur ou lorsque l'utilisateur reprend son activité après une pause ou lorsque l'alimentation d'un ordinateur portable Mac est connectée ou déconnectée. Il peut également envoyer le Mac en mode veille ou récupérer le temps écoulé depuis la dernière activité de l'utilisateur. "

Pour lancer une application (à l'aide d'une commande), vous devez faire quelque chose comme ceci:

open /Applications/Transmission.app
binarybob
la source
2

Power Manager peut être utilisé pour lancer une application après une inactivité .

Comme Jason le mentionne dans sa réponse, la mise en œuvre par Apple du temps d'inactivité est difficile à prévoir. Power Manager utilise une mesure d'inactivité basée sur l'activité de l'utilisateur; c'est plus facile à prévoir et plus susceptible d'être ce que vous recherchez.

Power Manager - Lancer une application après l'inactivité

Graham Miln
la source
0

Si le démarrage de l'économiseur d'écran est ce que vous entendez par idel, vous pouvez regarder ScriptSaver qui se transforme en économiseur d'écran, puis lorsqu'il est appelé, il appelle votre annonce AppleScript un économiseur d'écran.

user151019
la source