0 votes

Quitter si l'on est inactif pendant X temps, problème lors de la sauvegarde de script en tant qu'application

J'ai un petit script qui quitte l'application lorsque l'ordinateur est inactif pendant X temps. Cela fonctionne bien mais si je l'enregistre en tant qu'application et que je la démarre, je ne peux pas la quitter. Le résultat est que je dois forcer la sortie de mon script pour redémarrer mon ordinateur. Comment puis-je résoudre ce problème ? Est-ce que c'est la boucle répétitive qui n'est pas la bonne façon de faire ?

Remerciements

    # Action lorsque que l'ordinateur est sans activité pendant un certain temps
#
set cmd to "echo $((`ioreg -w 0 -c IOHIDSystem | sed -e '/HIDIdleTime/ !{ d' -e 't' -e '}' -e 's/.* = //g' -e 'q'` / 1000000000))"

#
# Définir ici le nombre de seconde en idle avant d'exécuter l'action 
#
set maxIdleAllowed to 90

#
# Conbien de fois vérifier le idle en seconde
#
set checkInterval to 5

#
# On loop indéfiniment
#
repeat
    set secsIdle to 0

    try
        set answer to (do shell script cmd)
        set secsIdle to (answer as number)
    on error
        # May want to do something fancy here...
        exit repeat
    end try

    log secsIdle

    if secsIdle > maxIdleAllowed then
        # Changer le nom de l'application TextEdit pour votre application
        tell application "FileMaker Pro" to quit
    end if

    delay checkInterval
end repeat

0voto

Alex Points 8703

Je pense que c'est ce que vous recherchez : https://stackoverflow.com/questions/38530412/exit-infinite-loop-by-quitting-application#38531544

Plus d'informations de la part d'Apple : https://developer.apple.com/library/content/documentation/AppleScript/Conceptual/AppleScriptLangGuide/conceptual/ASLR_about_handlers.html#//apple_ref/doc/uid/TP40000983-CH206-SW7

Et une autre référence : https://scriptingosx.com/tag/idle/

En fait, au lieu de la répétition, vous voulez faire un ralenti, au lieu de la répétition.

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X