Skip to content

Preferences

jph-sendlater edited this page Jan 10, 2021 · 3 revisions

Table of Contents

Finding the options page

You can get to the add-on’s preferences page in two ways:

  1. Click on “Send Later” in the status bar at the bottom of your main window and select “Send Later preferences” from the pop-up menu. The preferences will open in a new tab.
  2. Select “Add-ons” from the hamburger menu or the Tools menu. The extension manager will open in a new tab. Click on “Send Later”, and then on the “Preferences” tab.

Available options

Here is the main preferences screen, followed by explanations of the various settings:

Check every  #  minutes

This preference controls how often the add-on checks for messages whose delivery time has arrived. The default, once per minute, is adequate for most people. In rare cases, you may need to use a higher value (lower frequency) if you have a very large number of messages in your Drafts folder and the Send Later status indicator at the bottom of your Thunderbird window is constantly “Checking”.

“Send” does “Send Later”

If it is enabled, this preference causes the scheduling dialog to pop up not only when you run the “Send Later” command, but also, when you run “Send”, whether it’s by clicking the “Send” button, selecting File > Send Now, or typing Ctrl-Enter. It’ll therefore prevent you from accidentally sending a message now that you meant to schedule for later. This feature is not enabled by default.

Note that this preference and the following one are mutually exclusive.

“Send” delays messages by:  #  minutes

If enabled, this preference causes all messages you send by clicking Send or typing Ctrl-Enter to be automatically scheduled to be sent by Send Later at the specified number of minutes into the future.

This essentially replicates the functionality provided by some email providers to allow you to cancel sending a message for a short period of time after it is sent. If you sent a message and then change your mind before the delay time has elapsed, you can simply find the message in your Drafts folder and either delete it (if you don’t want it to be sent at all) or open it for editing, which automatically cancels the scheduled send.

Note that this preference and the previous one are mutually exclusive.

Mark scheduled drafts as read

By default when Send Later saves a scheduled messages into your Drafts folder, it marks the message as “read” so that your Drafts folder doesn’t show up in the folder list as having unread messages in it. If you prefer for scheduled Drafts to show up as “unread” to remind you that they’re there, then uncheck this preference.

Bind Alt-Shift-Enter instead of Ctrl-Shift-Enter

This preference causes the pop-up Send Later dialog to be bound to the key sequence Alt-Shift-Enter instead of Ctrl-Shift-Enter. When this feature is activated, Ctrl-Shift-Enter reverts to the original Thunderbird functionality, i.e. depositing the message into the Outbox.

Show Send Later Column

This preference controls whether a column showing the scheduled delivery times of messages that have them is displayed when viewing a Drafts folder.

Show Send Later Header

This preference controls whether the Send Later schedule should be displayed alongside the “From” “Subject” and “To” fields when viewing messages that have Send Later headers.

Show Send Later in Status Bar

This preference controls whether the add-on shows its current status in the Status Bar at the bottom of the Thunderbird window. The number of pending scheduled messages, or “IDLE” is displayed if there are none.

Trigger unsent message delivery from Outbox

This preference controls whether the add-on actually sends messages when their delivery time arrives, or rather should just deposit them into your Outbox and leave them there until the next time you send unsent messages as described above. You might want to disable this setting if you use some other add-on to manage your message delivery. See the Caveats section below for more information about this.

Enforce time and day restrictions at delivery time

As described below, Send Later supports restrictions on the time of day and day of the week when recurring scheduled messages are delivered. These restrictions are enforced when a message is scheduled, i.e., the scheduled send time of a message will never violate the time and weekday restrictions specified for that message.

Having said that, this preference controls what happens when a message isn’t delivered at its scheduled time because Thunderbird isn’t running or your computer is asleep, and then when Thunderbird wakes up, the current time violates the time and/or weekday restrictions on the message. By default, when this preference is disabled, Send Later delivers late messages immediately even in violation of their time/weekday restrictions. In contrast, when the preference is enabled, the add-on waits until the time/weekday restrictions are satisfied before delivery.

Don’t deliver messages more than  #  minutes late

This preference controls what happens when Send Later encounters a message that was scheduled to send some time in the past. This can happen if Thunderbird was closed, or the computer was asleep at the actual scheduled time. If this option is disabled, those messages will be sent immediately next time Send Later is able to do so. If this option is enabled, then Send Later will pop up a warning about any such messages and leave them for you to reschedule by editing the relevant draft message by hand.

Shortcut buttons

In addition to these main settings, you can change the behavior of the shortcut buttons. Each of these buttons is bound to a dynamic function, which by default is set to perform a simple delay. However, you can choose any dynamic function you’d like, or write your own using the dynamic function editor, described below. Each button can pass different arguments to the dynamic function, thereby enabling you to reuse a single function for multiple shortcuts.

The shortcuts can be accessed from within a message composition window using the keyboard commands Ctrl+Alt+1, Ctrl+Alt+2, andCtrl+Alt+3, or from within the scheduler popup dialog using Ctrl+1, Ctrl+2, and Ctrl+3.

  • Button label specifies the string that is displayed in the button.

    You can bind shortcuts to “access keys” by placing an &amp&#59; in front of any letter. For example, setting a button label to &amp&#59;Business hours will be displayed in the scheduler dialog as “Business hours”, and can be activated with Alt+Shift+B (Ctrl+Option+B on Mac). Note: this assumes that nothing else in the dialog is bound to Alt+Shift+B, which may not be the case depending on your language settings.
  • Function name Specifies which dynamic function will be attached to this shortcut button.
  • Input arguments Arguments that will be passed to the dynamic function that may modify its behavior. See the section on dynamic functions for details on what these arguments can do.

Dynamic function editor

You can create and edit your own scheduling and recurrence functions by writing JavaScript code in the function editor. See the documentation on dynamic scheduling functions for how these functions work.

The interface allows you to select an existing function to edit, or create a new one. You can input a function name, the body of the function, and a block of help text in the following fields.

You can test your function by entering input values in the test area, including a date/time, which will be passed as the prev argument, and a set of arguments, which will be parsed into an array and passed as the nextargs variable to your function. The specnameinput variable will always correspond to the name of your function. The Execute function button will evaluate your function using those inputs, and display its outputs and any error messages in the adjacent output box.

Note that the builtin functions cannot be edited, but they can be copied/pasted into new functions. They provide a good starting point for creating your own scheduling functions.

Advanced configuration editor

There are some preferences which do not have corresponding UI elements in the options dialog. Also, there are occasions where you just need fine-grained control over your preferences. The advanced configuration editor allows you to modify all of Send Later’s preferences manually, using JSON-formatted input. Hopefully the interface is pretty self explanatory, but I highly recommend avoiding this feature unless you know what you’re doing.

Console log level

Controls how much detail you want to see in the debug console. Setting this to “Debug”, “Trace”, or “All” will make Send Later very chatty, and can actually start to slow down Thunderbird over time as the debug log gets very long. I recommend leaving this on the default “Info” level unless you need to investigate the source of a bug.

Reset preferences

Resets all preferences to their default state. Will prompt for confirmation before proceeding, but cannot be undone without manually setting everything again by hand.