Go to the first, previous, next, last section, table of contents.


3.6 Delayed Articles

Sometimes, you might wish to delay the sending of a message. For example, you might wish to arrange for a message to turn up just in time to remind your about the birthday of your Significant Other. For this, there is the gnus-delay package. Setup is simple:

(gnus-delay-initialize)

Normally, to send a message you use the C-c C-c command from Message mode. To delay a message, use C-c C-j (gnus-delay-article) instead. This will ask you for how long the message should be delayed. Possible answers are:

The action of the gnus-delay-article command is influenced by a couple of variables:

gnus-delay-default-hour
When you specify a specific date, the message will be due on that hour on the given date. Possible values are integers 0 through 23.
gnus-delay-default-delay
This is a string and gives the default delay. It can be of any of the formats described above.
gnus-delay-group
Delayed articles will be kept in this group on the drafts server until they are due. You probably don't need to change this. The default value is "delayed".
gnus-delay-header
The deadline for each article will be stored in a header. This variable is a string and gives the header name. You probably don't need to change this. The default value is "X-Gnus-Delayed".

The way delaying works is like this: when you use the gnus-delay-article command, you give a certain delay. Gnus calculates the deadline of the message and stores it in the X-Gnus-Delayed header and puts the message in the nndraft:delayed group.

And whenever you get new news, Gnus looks through the group for articles which are due and sends them. It uses the gnus-delay-send-queue function for this. By default, this function is added to the hook gnus-get-new-news-hook. But of course, you can change this. Maybe you want to use the demon to send drafts? Just tell the demon to execute the gnus-delay-send-queue function.

gnus-delay-initialize
By default, this function installs the C-c C-j key binding in Message mode and gnus-delay-send-queue in gnus-get-new-news-hook. But it accepts two optional arguments, no-keymap and no-check. If no-keymap is non-nil, the C-c C-j binding is not intalled. If no-check is non-nil, gnus-get-new-news-hook is not changed. For example, (gnus-delay-initialize nil t) means to change the keymap but not to change gnus-get-new-news-hook. Presumably, you want to use the demon for sending due delayed articles. Just don't forget to set that up :-)


Go to the first, previous, next, last section, table of contents.