Script Timer - Frequently Asked Questions

General Questions
1. Why isn’t Script Timer available in the Mac App Store?
2. Why not just use Cronnix or 'cron' itself in OS X?
3. What version of Script Timer should I be running?
3a. Is Script Timer compatible with Mac OS X 10.6 (Snow Leopard) and OS X 10.7 (Lion)?
3b. Is Script Timer compatible with Mac OS X 10.9 (Mavericks)?
3c. Is Script Timer compatible with Mac OS X 10.10 (Yosemite)?
4. I'm a registered Script Timer user. How do I upgrade to the latest version?
5. Can I keep downloading and using a fresh unregistered copy of Script Timer from the Internet every 30 days?
6. I previously tried out a version of Script Timer, but did not register. I now want to check out a newer version, but I get a message saying that the trial period has expired.
7. I am not a North American user. I know I've entered my registration code for Version 2.0 or later correctly, but the program refuses to accept it. What is the problem?

Version 2.0 or Later
8. I can't get Script Timer to even run! It seems to start, then immediately quits before even showing a window.
9. One of my scripts causes the scheduling engine to hang. According to the log file my script starts, then nothing else happens.
9a. Unfortunately I read the advice above too late. My scheduling engine is hung. What do I do now?
10. My parameterized script won't run correctly when invoked by Script Timer, but I can run it fine from another script I have written.
11. If my computer is asleep at midnight, no actions are run on the following day. Why is this?
12. I downloaded Script Timer 2.0 just after it came out. I can't seem to get my registration code to be accepted by the program.
13. When I tried to download Script Timer in OS X, Classic Environment started up first and then Stuffit Expander, which didn't seem to work properly.
14. I changed the name of my hard drive and now the Script Timer scheduling engine is giving me errors.
15. I upgraded to OS X 10.4 (Tiger) and now Script Timer crashes when it tries to save any file.
16. I upgraded to OS X 10.4 (Tiger) and now if I open a Script Timer data file while the program is running it appears to be empty.
17. Why don't I see the Preferences Panel when I select "Preferences" from the Script Timer (application) menu?

18. I am trying out Version 2.3 of Script Timer. Why can't I get Sleep and Wake actions to work?
19. I am trying out the newer bundled format for my compiled AppleScript script, but Script Timer is trying to treat it as if it were and application.
20. If I delete one or more actions, then immediately use the 'Do Now' button to run the newly selected item, the previously selected items (i.e. the just deleted items) are run instead of the new selection. Is Script Timer having trouble letting go?
21. I am trying to use the 'Do Now' button on an AppleScript script application. I know it is correct as it runs fine on its own. However, if I run it with the 'Do Now' button I get an error message "The variable returnValue is undefined." What gives?
22. If I use the 'Revert' File menu command to revert to the last saved version of my data file, one or more actions are missing from the currently visible actions table until I switch to a different table and back. Are my actions missing?
23. Script Timer seems to be going out on the Internet every time it starts up. What is going on? Is data from my computer being sent out?
24. I’ve set up an action to run when Retrospect quits, but it also runs when Retrospect starts? What is going on?
25. My dynamic action won’t work. I get an error message "Bad or missing item specifier for a dynamic action", but I know I’ve entered the name of my script correctly. What’s wrong?
26. I get an error message starting with “Can’t get NewAction of...” when using the Do Now button in version 2.6.1. What’s wrong?
27. The run counter I see in the Script Timer log file doesn't seem to be counting correctly.
28. I am running under Lion (OS X 10.7) and I am seeing random crashes of the program. What is going on?
29. I am running under Mountain Lion (OS X 10.8) and logout actions are disabled. Why?
30. I am running under Mountain Lion (OS X 10.8) or later and when I try to run the program I get an error message that says that says: "Script Timer.app can't be opened because it is from an unidentified developer". What do I do?
31. I am using a 12 hour time format on my computer with before noon and after noon designations other than “AM” and “PM”. I get an error message saying the time is incorrect. How do I correct this?
32. I just switched to Mavericks (OS X 10.9) and now my idle stop actions don’t always work. What is going on?

If you don't find an answer to your question here, please contact us.

1. Why isn’t Script Timer available in the Mac App Store?
Apps available in the Mac App Store must meet a strict set of criteria (referred to as “sandboxing”), including one that greatly restricts what inter application communication an app can perform. Script Timer cannot satisfy this criterion and therefore is not eligible to be included in the store. Specifically, any app sandboxed application must include a priori a list of applications that it can send Apple Events to. Since this is how Script Timer (and AppleScript in general) interacts with other applications, and since it is impossible to know beforehand what applications you might want to control, there is no practical way to supply the program with such a list.

2. Why not just use Cronnix or 'cron' itself in OS X?
'cron' is the built in scheduling program that runs in all Unix based systems, including Mac OS X, and has a similar purpose to Script Timer. Both the system and the user can use it to schedule the running of processes. Cronnix is a third party front end program for cron with a Graphical User Interface.
Script Timer has several advantages over cron when it comes to scheduling the running of AppleScript scripts, largely because a) cron is a general purpose Unix utility, b) most scripts must be saved as applications to be run by cron, and c) cron lacks some of the scheduling possibilities of Script Timer. While Cronnix makes using cron much easier for the non Unix expert, it is still cron that does the scheduling, so that the same limitations apply.

For a detailed comparison of Script Timer, Cronnix, and cron, see the Product Comparison Page.

3. What version of Script Timer should I be running?

Operating System Version

Script Timer Version

OS X (Versions 10.6 and greater)

2.6.4

OS X (Versions 10.6 to 10.8)

2.6.3 (See Notes 3, 4 below)

OS X (Versions 10.4 and 10.5)

2.6.2 (See Note 1 below)

OS X (Versions 10.3.n)

2.5.1 (See Notes 1,3 below)

OS X (Versions 10.2.n)

2.4.1 (See Notes 1,3 below)

OS X Version 10.1

2.2 (See Note 3 below)

OS X Version 10.0

not supported

OS 9.2.1 and 9.2.2

1.2 (See Notes 2,3 below)


  1. All users of Versions 2.0 through 2.5.1 should upgrade to Version 2.6.2) as it corrects a number minor problems as well as adding several new features. (OS X Version 10.1 users should upgrade to Script Timer Version 2.2, OS X Version 10.2.n users should upgrade to Script Timer Version 2.4.1,and OS X Version 10.3.n users should upgrade to Script Timer Version 2.5.1. See Note 3 below.) NOTE: Version 2.5.1 or greater is required for Mac OS X 10.5 (Leopard)
  2. Script Timer will not work with the version 1.7 of AppleScript that originally installed with OS 9.2.2.
  3. Please contact Apps & More by email if you need a copy.
  4. Version 2.6.3 is the last version for Intel Core Solo based machines.
Top of Page

3a. Is Script Timer compatible with Mac OS X 10.6 (Snow Leopard) and OS X 10.7 (Lion)?
Yes, for Version 2.6.3. The only issue discovered so far is that the “Extract Sample Scripts” command may erroneously find some of your sample scripts need to be updated when they are in fact up to date.
Top of Page

3b. Is Script Timer compatible with Mac OS X 10.9 (Mavericks)?
Yes, for Version 2.6.4 or later. Requires an Intel Core Duo or later based Macintosh. NOTE: Idle Stop Actions aren’t reliable for Version 2.6.4 under Mavericks.
Top of Page

Top of Page

4. I'm a registered Script Timer user. How do I upgrade to the latest version?
After consulting the previous FAQ to make sure you are able to run it, just download the latest version (2.7) from here or a trusted Internet shareware site and install according to the accompanying instructions. Registered users of Versions 2.0 through 2.6.4 of Script Timer are eligible for a free upgrade. Registered users of earlier versions may also be eligible for a free upgrade, depending on their date of registration. Please consult the Script Timer upgrade page for details. Note: Registration codes for Version 1.01 or 1.2 will not work for version 2.n. Please contact Apps & More to obtain your registration code for Version 2.7.
If your computer does not use English as its human language, please see FAQ #7 below.
Top of Page

5. Can I keep downloading and using a fresh unregistered copy of Script Timer from the Internet every 30 days?
This is not possible. You have only 30 days from the first time you start the Scheduling Engine to evaluate a given version of the application. You can run Script Timer itself indefinitely without registering, but not the Scheduling Engine. Registering is done through the Script Timer program, so you can always register your copy even if the trial period has expired.
Top of Page

6. I previously tried out a version of Script Timer, but did not register. I now want to check out a newer version, but when I try to start the Scheduling Engine I get a message saying that the trial period has expired. Is there anything I can do?
Yes. You should not have this problem if you are trying Version 2.0.2 or later. However, if you have tried an older version of Script Timer more than 30 days after the release date of the newer version, you may still see this message. In that case, please contact Apps & More Software Design explaining your circumstances.
Top of Page

7. I am not a North American user. I know I've entered my registration code for Version 2.0 or later correctly, but the program refuses to accept it. What is the problem?
The registration code checking algorithm has been found to not work correctly for some computers that do not use English as the default human language - for example, Japanese. The problem was corrected in Version 2.0.1. You should upgrade to latest version of Script Timer that will run on your computer.
Top of Page

Version 2.0 or Later

8.I can't get Script Timer to even run! It seems to start, then immediately quits before even showing a window.

There are two possible causes:

a. You have a permanent Internet connection and new version checking is turned on (version 2.4 through 2.7).

Script Timer checks for new versions of itself on the Apps & More web site when it starts if automatic new version checking is turned on. If something goes wrong (for example, if you disallow the program to communicate with the outside world using a program like "Little Snitch") the program may crash.

You can turn the checking off by copying and pasting the following AppleScript script into the Script Editor and running it:

-- begin script

set prefFileName to "com.appsandmore.Script-Timer"

do shell script "defaults write " & "\"" & prefFileName & "\" " & "\"Last Version Checked\" " & 0

-- end script

N.B. For versions prior to 2.6.3 replace the “-“ in the first line above with a space.

After you run this script, the version checking will be turned off and the program will be able to start normally while your computer is connected to the Internet.


b. You have installed Script Timer in the main Applications folder and are logged into a standard non administrative account.

Assuming that the standard included software frameworks are intact on your computer, this is likely related to a Unix file permissions (privileges) problem. The solution is to log into an administrator account and change the permissions on the Script Timer file. To do this, select the Script Timer icon in a Finder window, then choose Get Info from the File menu. Under Ownership & Permissions use the popup menu for Others to change the permissions to 'Read & Write'. (You may have to click on the Details disclosure triangle to see the popup menu.) (Curiously, it seems that you can then change the permissions back to 'Read Only' and it will still work.)
Top of Page

9. One of my scripts causes the scheduling engine to hang. According to the log file my script starts, then nothing else happens.
The most likely cause of this is a dialog box being placed on the screen by your script without your script being "activated" first. The script is waiting for the user to respond to the dialog, but the dialog will be behind every other window on the screen, so will neither be seen nor be accessible. Thus the scheduling engine, which is running the script, appears to be hung. You will not be able to get the scheduling engine to stop by clicking the Stop button in a Script Timer document window. The solution is to place the statement "activate me" before the "display dialog" statement. That way the dialog will appear frontmost on the screen. You should always also include a "giving up after" clause in your "display dialog" statements so they can be run when no one is around.
Top of Page

9a. Unfortunately I read the advice above too late. My scheduling engine is hung. What do I do now?
There are a couple of things you can do. If you are running the optional scheduling engine status monitor in version 2.5 or later, hold down the Option key while selecting the "Stop ST Scheduling Engine" menu entry underneath the scheduling engine icon in the system status bar. The text changes to "Kill ST Scheduling Engine" and the scheduling engine is immediately killed along with the hung script. If you aren't using the status monitor, switch to an application with few or no windows and select "Hide Others" from the Application menu. Then move any remaining windows of the one unhidden application away from the center of the screen. You should then be able to see the offending dialog box. If you are comfortable using the Terminal program, you can also type "killall STSchedEng" at a shell prompt.

10. My parameterized script won't run correctly when invoked by Script Timer, but I can run it fine from another script I have written.
When Script Timer reads the data file, it assumes all script parameters are character strings. Therefore, do not enclose your string parameters in quotation marks, as these marks will then become part of the parameter. Also, you may have to explicitly coerce non character string script parameters into their correct types in your script. (For example "set p1 to p1 as list")
Top of Page

11. If my computer is asleep at midnight, no actions are run on the following day. Why is this and what can I do about it?
This is a known bug in versions prior to 2.1. If you are running OS X you should upgrade to the latest version you can run. If this is not possible, to get around this for earlier versions, you must modify the data file, or stop and restart the Scheduling Engine.
Top of Page

12. I downloaded Script Timer 2.0 just after it came out. I've got my registration code and now I want to register, but I can't - I keep getting an error message when I try to open the About panel to click on the Registration Code button. What is going on?
The original version of Script Timer 2.0 contained an error in the About panel that would prevent you from registering. Please update to the latest version you can run.
Top of Page

13. When I tried to download Script Timer in early versions of OS X, Classic Environment started up first and then Stuffit Expander, which didn't seem to work properly. What gives?
Some versions of Internet Explorer in OS X may have the Helper Application for decompressing .hqx files set to the Classic version of Stuffit Expander. As a result, the Classic Environment will start up, and then the classic version of Stuffit Expander. After all that, the expansion may not take place - you will have to decompress manually by dropping the compressed .hqx file onto the Stuffit Expander icon. To avoid this, you must change the preference in Internet Explorer. Go to Preferences under the Application Menu (next to the Apple Menu), then navigate to File Helpers and choose BinHex. It appears that you will need root privileges to actually change the helper application to the OS X version of Stuffit Expander, which is located in the Utilities folder inside the Applications folder. Alternately, you can try changing the Handling preference to Save To File. Then you can just drag and drop the downloaded '.hqx' file onto the OS X version of Stuffit Expander icon after it has been downloaded. (The classic version of Stuffit Expander will also decompress the file correctly.)
Top of Page

14. I changed the name of my hard drive and now the Script Timer scheduling engine is giving me errors. What can I do about this?
If you change the name of the hard drive containing your items to schedule while the Script Timer scheduling engine is running, the engine will be unable to locate the items when it is time to run them. You must stop the scheduling engine and restart so that it will have the correct path names to your items.

15. I upgraded to OS X 10.4 (Tiger) and now Script Timer crashes when it tries to save any file. What is going on?
Due to a bug introduced by Apple into the code frameworks that are part of the operating system that Script Timer (and most other programs) use, attempting to save a data file (or even the log file) causes the program to crash. A work around was introduced in version 2.2.1 to overcome this. You should upgrade to the latest version of Script Timer.
Top of Page

16. I upgraded to OS X 10.4 (Tiger) and now if I open a Script Timer data file while the program is running it appears to be empty. Is my data really gone?
No, your data is still there. Due to a bug introduced by Apple into the code frameworks that are part of the operating system that Script Timer (and most other programs) use, versions of Script Timer earlier than 2.3 are unable to load a data file in Tiger once the program is running. (Loading the current data file on program start still works.) The solution is to upgrade to the latest version of Script Timer which contains a workaround.
Top of Page

17. Why don't I see the Preferences Panel when I select "Preferences" from the Script Timer (application) menu?
If the Preferences Panel fails to appear, the most likely cause is a corrupted preferences file. Locate the file "com.appsandmore.Script-Timer.plist” ("com.appsandmore.Script Timer.plist” prior to Version 2.6.3 of the program) in the Preferences folder of your Home Library folder and (with Script Timer not running) delete it. A new preferences file will be generated with default settings the next time you start Script Timer.
Top of Page

18. I am trying out Version 2.3 of Script Timer. Why can't I get Sleep and Wake actions to work?
Version 2.3 of Script Timer was reposted to correct an error in the original distribution. Unfortunately the "corrected" version contained an error which causes sleep and wake actions not to be executed. This problem is corrected in Version 2.3.1 and later.
Top of Page

19. I am trying out the newer bundled format for my compiled AppleScript script, but Script Timer is trying to treat it as if it were and application.
Version 2.4 did not recognize the new format as being that of a script. This problem is corrected in Version 2.4.1.
Top of Page

20. If I delete one or more actions, then immediately use the 'Do Now' feature to run the newly selected item, the previously selected items (i.e. the just deleted items) are run instead of the new selection. Is Script Timer having trouble letting go?
This problem is corrected in Version 2.4.1.

21. I am trying to use the 'Do Now' feature on an AppleScript script application. I know it is correct as it runs fine on its own. However, if I run it with the 'Do Now' feature I get an error message "The variable returnValue is undefined." What gives?
This error has nothing to do with your script application. 'returnValue' is what is returned by a compiled script. It was inadvertently left undefined for applications, which unlike scripts can't return anything to Script Timer. This problem is corrected in Version 2.4.1.
Top of Page

22. If I use the 'Revert' File menu command to revert to the last saved version of my data file, one or more actions are missing from the currently visible actions table until I switch to a different table and back. Are my actions missing?
No. This display problem is corrected in Version 2.4.1.
Top of Page

23. Script Timer seems to be going out on the Internet every time it starts up. What is going on? Is data from my computer being sent out?
You have automatic version checking turned on in the Files and Folders preferences panel. The program is looking at a specific file on the Apps & More web site to see if a newer version of the program is available. During version checking no data is sent to the Apps & More web site from the computer running Script Timer, so your security and privacy are not compromised. Automatic version checking is included because with the increasing level of spam on the Internet and the consequent increase in email filtering, it is becoming more difficult for software vendors to communicate with their customers. The danger of a mass mailout about the availability of a new version being filtered away is high. This feature makes it easier for the user to keep up to date with the latest version of the program.
Top of Page

24. I’ve set up an action to run when Retrospect quits, but it also runs when Retrospect starts? What is going on?
Whenever you start Retrospect, with or without authentication required, it immediately quits and restarts. This extra quit is what is causing your script to run unexpectedly. The only solution is to modify your script in some way to determine that this first quit should not invoke the main part of the script.
Top of Page

25. My dynamic action won’t work. I get an error message "Bad or missing item specifier for a dynamic action", but I know I’ve entered the name of my script correctly. What’s wrong?
For versions of Script Timer prior to 2.6.1 you must ensure that the name of your script or application includes the file extension if it exists. (“.scpt” for AppleScript scripts, “.app” for applications). NOTE: Bundle style AppleScript script names must include the “.scptd” extension.
Top of Page

26. I get an error message starting with “Can’t get NewAction of...” when using the Do Now feature in version 2.6.1. What’s wrong?
An incorrect version of Script Timer version 2.6.1 was available for download prior to 2009 January 28. Please download version 2.6.2 or later.
Top of Page

27. The run counter I see in the Script Timer log file doesn't seem to be counting correctly. Script Timer is located in the main /Applications folder and I am logged into a standard non administrator account.
This is a Unix file permissions issue. The Script Timer scheduling engine stores a number of pieces of data, including the run counter, internally, but if you don't have Write privileges to the Script Timer application package, it can't do this when it quits. The counter will revert to the value it had when the scheduling engine last started.
Top of Page

28. I am running under Lion (OS X 10.7) and I am seeing random crashes of the program. What is going on?
Script Timer Version 2.6.2 (and earlier) will “quit unexpectedly" (i.e. crash) occasionally in Lion (OS X 10.7). This appears to be due to a change Apple has made in the way tables are drawn. You should upgrade to Version 2.6.4 as soon as possible. (This is a free upgrade.) For Version 2.6.2 the background scheduling engine, which is a separate program, appears to be functioning correctly in Lion, so all scheduled actions should run as expected. If you see a dialog box on the screen asking whether or not you want to restore windows after a crash, choose the negative option and restart the program manually.
Top of Page

29. I am running under Mountain Lion (OS X 10.8) or Mavericks (OS X 10.9) and logout actions are disabled. Why?
Logout actions are not available in OS X 10.8 or 10.9. Script Timer used a “logout hook” to implement logout actions, and Apple is discouraging their use, and will likely discontinue it. Logout actions have been removed from the program. As a substitute you can schedule an action to run when a program you never quit quits - e.g. Mail. When you log out this program will be quit by the system and the action will be run.
Top of Page

30. I am running under Mountain Lion (OS X 10.8) or later and when I try to run the program I get an error message that says that says: "Script Timer.app can't be opened because it is from an unidentified developer". What do I do?
This is due to the security setting on your computer (a.k.a. Gatekeeper). In Mountain Lion there are 3 levels of security for programs downloaded from the Internet:

1.Mac App Store only
2.Mac App Store plus identified developers
3.Anywhere (i.e. the equivalent to the situation prior to Mountain Lion)

The default setting is number 2, and Script Timer is not set up properly to fall into this category. That is why you are getting the error message.

There are two things you can do:

1. Go into System Preferences and click on Security & Privacy and temporarily change the setting to #3.
2. Control click on the Script Timer icon and select Open from the popup menu. A dialog comes up asking you to confirm you want to open the program. You will only have to do this the first time you run the program.

The reason Script Timer doesn't fall into category #2 is that its scheduling engine will require an extensive rewrite to comply. Programs in this category must be “signed" with a developer's certificate. Any change to the program's code invalidates the signature. Unfortunately, the scheduling engine does change itself - it stores some properties internally that can change.

The 'identified developer’ scheme is a good idea - it doesn't allow a malicious hacker to secretly inject code into your program and have it still run. A hacker could pay the $99 and get a certificate, but as soon as he was found out Apple would revoke it and his programs wouldn't run.
Top of Page

31. I am using a 12 hour time format on my computer with before noon and after noon designations other than “AM” and “PM”. I get an error message saying the time is incorrect. How do I correct this?
You must be using “AM” and “PM” for the before noon and after noon designations, even if your local region uses something different for the 12 hour clock format. (e.g. “ap” and “ip” for Finland). Unfortunately AM and PM are the only designations Script Timer understands.

To change the designations, open the Language and Text pane in System Preferences and click on the Region tab. Then click on the Customize... button next to Times. This will bring up a sheet that will allow you to change the before noon and after noon designations.
Top of Page

32. I just switched to Mavericks (OS X 10.9) and now my idle stop actions don’t always work. What is going on?
Idle stop actions are triggered when the ScreenSaver engine quits. In previous versions of OS X the ScreenSaver engine remained running even after the screen went to sleep (i.e. dark) until the user hit a key or moved the mouse. Now the ScreenSaver engine appears to quit some time after the screen sleeps. Your idle stop actions will run at this time, not when the screen wakes up. End of idle actions should run correctly in version 2.7 of Script Timer.