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