Specify Delays and Processing for Retries

$email_retry_delays line class "retry_list"

This command is used to specify the number of retries of unsuccessful transmissions, and the intervals between attempts.

When processing the outcome of an e-mail attempt, if there are any $email_retry_delays commands in the hierarchy CFG - USR/UJP - FS, then $retry_delays commands are ignored for all outcome classes.  Otherwise, $retry_delays commands are used for all outcome classes. The $retry_delays commands are also used for transmissions where there are both fax and e-mail destinations in the same FS file (for example, broadcasts of type FEB2).

Each command provides the specification for one class of "outcome" of the preceding attempt. The "outcome" is the call placement or fax transmission status. The outcome class is looked up in the default retry parameters or those in the file specified using the $retry_parms command. The outcome class is identified using a letter from A to H. You may change the meanings of these letters for special applications by modifying the retry parameters file, but the supplied files define the following outcome classes:

A Call placement: no Answer
B Call placement: Busy
C Call placement: Call failure other than no answer, busy, no dial tone
D Call placement: no Dial tone or no circuits
E System Error: missing files, etc
F Fax transmission failure
G User defined
H Fax failure at receiving station, e.g. remote Hang-up

The parameters on this command are used as follows:

line the line number or line group(s) affected
class Outcome class letter for this class. Only one command may be specified for each class. The next entry in the retry_list for this class is used each time a call attempt results in an outcome of this class, until the retry list is exhausted, at which time the call is treated as failed.
retry_list List of delay periods or times, one for each retry. An empty list (or no $email_retry_delays command for a class) implies that any attempt which has an outcome of this class will not be retried at all (i.e. it will be treated as a failed call). The default unit for each list entry is minutes, but a suffix of H or S can be used to specify hours or seconds respectively.
 
Each entry may have prefix characters, as described for the user-profile $retry_delays command.

If the delay is entered as a time (hh:mm format), then the retry will be deferred until the next occasion on which that time comes around on the clock (i.e. later the same day or earlier the next day). If this absolute time has a suffix of N or W then the calculated time will be moved forward if necessary to the next non-working or working day respectively. Standard and special non-working days are set using the COPIAFACTS program. Once a fixed-time delay has been actioned, any later fixed-time delay in the sequence of retries will be replaced by a three-minute delay.

The delay period is used to specify the earliest time at which the next attempt will occur: the call will then be retried when there is first a suitable free line after the delay period. Note that attempted calls in and to certain countries may be subject to minimum delay intervals in order to comply with local regulations.

An ellipsis ('...'), separated by white space from the previous entry in the retry-list, causes the preceding retry delay specification to be repeated without limit. If there is no preceding retry delay specification in the list the ellipsis is treated as ending the list and the call fails. If the preceding delay specification specifies a time of less than one minute it is automatically increased to one minute.

Separate attempt counters are maintained for each class, so that for example a no-dial-tone outcome in the middle of a sequence of busy outcomes will only affect the next retry; a subsequent busy will revert to being processed following the specifications in the retry-list for the busy class. The attempt counters for a transmission are maintained using the $attempt_record commands added to the FS file on each attempt.

Default: Two retries (three attempts) at five-minute intervals for all outcome classes except 'D' for which the intervals are one minute.

Examples:

Retry timeout' three times at intervals of five minutes:

$email_retry_delays * A "5 5 5"

Retry 'connection failure' once after waiting three minutes, then if still busy wait until 9 a.m on the next working day and retry again up to three times at three-minute intervals:

$email_retry_delays * C "3 09:00W 3 3"

There are additional examples in the topic for Configuring Retry Settings.