>
Introduction
autoreply is a simple autoresponder useful for replying to email upon receipt.
Features
autoreply has been designed to be used safely without supervision.
- it remembers who it has replied to recently, and won't reply to them again within a specified interval (default, 30 minutes)
- it has a list of addresses that it will not respond to (MAILER-DAEMON, majordomo, listserv, etc)
- it examines headers checking for mailing lists, and does not reply if it determines the mail is from a mailing list
- in case these features are insufficient autoreply also has a rate limit, and will not send more than a specified amount of mail in a given time. The rate and interval are configurable.
Installation
The 1.2 release is available as a gzip'd tar archive containing the source and a FreeBSD-2.2.7 binary. Download this from:
http://www.nemeton.com.au/sw/autoreply/autoreply-1.2.tar.gzTo unpack the software, run:
gzip -dc autoreply-1.2.tar.gz | tar xvf -On a non-FreeBSD system the program will have to be compiled. This can be done by typing "make clean" and then "make".
On a FreeBSD system the binary may be used in its current location or moved, as preferred.
<22>Configuration22>reply message format
The text file that will be sent should contain mail headers, particularly a "From: " line.
If the -s option is used a "Subject: " line should not be supplied in the text file.
An example file:
From: Giles Lean <user@example.com> Subject: 'autoreply' 1.2 release Precedence: bulk The 1.2 release of the autoreply program is available at: http://www.nemeton.com.au/sw/autoreply ...configuring with qmail or mdforward
Choose an address for testing, and in its control file place directions similar to the following. Don't forget to deliver the incoming mail somewhere in addition to the autoreply command!
| /home/user/autoreply-1.2/autoreply /home/user/autoreply-message /var/mail/user(Change the pathnames to suit your installation.)
configuring with .forward
The format from a sendmail .forward file is similar, but should should have double quotes around it:
"| /home/user/autoreply-1.2/autoreply /home/user/autoreply-message" \userconfiguring with procmail
The following procmail receipe will pass incoming mail to autoreply. The "c" is required or the mail will be considered "delivered" and further receipes will not be used.
:0 c * ^TO_(autoreply|responder|autoresponder)@ | /path/to/autoreply /path/to/autoreply.txtAdvanced Configuration Options
usage: autoreply [options] file -c count maximum number of messages per interval (default: 30) -h pathname path to history file (default: $HOME/.autoreply/histfile) -i interval interval in minutes (default: 30) -l logfile path to log file (default: $HOME/.autoreply/log)The -h and -l options will be of interest to people running multiple autoresponders in the one account.
Troubleshooting
First look at the log file. Every item of mail that is processed by autoreply will be logged. The default log file is .autoreply/log unless you have used the -l option to specify an alternative.
Mail that is successfully replied to will have a message about "replied to <address>" in the log file. If mail is not replied to for some reason (rate limit exceeded, or the mail looks like it is from a mailing list, for example) the reason will be given.
The most common problem people have during testing is that two or more items of mail from the one address within the interval (default 30 minutes) will cause the later replies to be suppressed. There will be a message in the log file about "suppressed reply to ... within interval" if this is the case.
In the case of operating systems errors and configuration errors detailed messages are written to the log file.
Author
autoreply was written by Giles Lean <giles@nemeton.com.au>. Problem reports, questions and enhancement requests are all welcomed. (Please include any log file entries when reporting problems, or say there are no log messages if that is the case.)
No updates are expected to this software, but if an update is made it will be announced here. The annoucement mailing list that used to exist has been discontinued due to spamming of the -request address.