-User Documentation for ACS Mail Lite
-
-Acs Mail Lite handles sending of email via sendmail or smtp and
-includes a bounce management system for invalid email accounts.
-When called to send a mail, the mail will either get sent
-immediately or placed in an outgoing queue (changeable via
-parameter) which will be processed every few minutes.
-ACS Mail Lite uses either sendmail (you have to provide the
-location of the binary as a parameter) or SMTP to send the mail. If
-the sending fails, the mail will be placed in the outgoing queue
-again and be given another try a few minutes later when processing
-the queue again.
-Each email contains an X-Envelope-From address constructed as
-follows:
-The address starts with "bounce" (can be changed by a
-parameter) followed by the user_id, a hashkey and the package_id of
-the package instance that sent the email, separated by
-"-". The domain name of this address can be changed with
-a parameter.
-The system checks every 2 minutes (configurable) in a certain
-maildirectory (configurable) for newly bounced emails, so the
-mailsystem will have to place every mail to an address beginning
-with "bounce" (or whatever the appropriate parameter
-says) in that directory. The system then processes each of the
-bounced emails, strips out the message_id and verifies the hashkey
-in the bounce-address. After that the package-key of the package
-sending the original mail is found out by using the package_id
-provided in the bounce address. With that, the system then tries to
-invoke a callback procedure via a service contract if one is
-registered for that particular package-key. This enables each
-package to deal with bouncing mails on their own - probably logging
-this in special tables. ACS Mail Lite then logs the event of a
-bounced mail of that user.
-Every day a procedure is run that checks if an email account has
-to be disabled from receiving any more mail. This is done the
-following way:
+ @title;noquote@
+ @context;noquote@
+ @title@
+
+ Acs Mail Lite provides a standard way for OpenACS packages to send and receive email.
+
+ features
-- If a user received his last mail X days ago without any further
-bounced mail then his bounce-record gets deleted since it can be
-assumed that his email account is working again and no longer
-refusing emails. This value can be changed with the parameter
-"MaxDaysToBounce".
- If more then Y emails were returned by a particular user then
-his email account gets disabled from receiving any more mails from
-the system by setting the email_bouncing_p flag to t. This value
-can be changed with the parameter "MaxBounceCount".
- To notify users that they will not receive any more mails and
-to tell them how to reenable the email account in the system again,
-a notification email gets sent every 7 days (configurable) up to 4
-times (configurable) that contains a link to reenable the email
-account.
+ - API for sending email
+ - Outgoing email processed via SMTP or system's sendmail agent.
+ - Bounce detection for outgoing email
+ - Incoming email processed via IMAP4 or system's MailDir facility.
+ - API for receiving email via custom method
+ - Callback hooks to other packages triggered by replies to sent email
+ - Callback hooks to other packages triggered by incoming email events
-To use this system here is a quick guide how to do it with postfix.
-
-- Edit /etc/postfix/main.cf
-
-- Set "recipient_delimiter" to " - "
- Set "home_mailbox" to "Maildir/"
- Make sure that /etc/postfix/aliases is hashed for the alias
-database
-
- - Edit /etc/postfix/aliases. Redirect all mail to
-"bounce" (if you leave the parameter as it was) to
-"nsadmin" (in case you only run one server).
-
-
-In case of multiple services on one system, create a bounce email
-for each of them (e.g. changeing "bounce" to
-"bounce_service1") and create a new user that runs the
-aolserver process for each of them. You do not want to have
-service1 deal with bounces for service2.
-Release Notes
-Please file bugs in the Bug Tracker.
+ Contents
+
+
+ Release Notes
+
+
+ A new IMAP4 feature. See planning notes and development and change notes for change details and reasoning.
+
+
+ Please file bugs in the Bug Tracker.
+