Author: norman
Date: Mon Aug 21 04:09:51 2006
New Revision: 433223
URL: http://svn.apache.org/viewvc?rev=433223&view=rev
Log:
Complete Mailet and Matcher overview. See JAMES-327
Modified:
james/server/trunk/src/site/xdoc/provided_mailets_2_3.xml
james/server/trunk/src/site/xdoc/provided_matchers_2_3.xml
Modified: james/server/trunk/src/site/xdoc/provided_mailets_2_3.xml
URL:
http://svn.apache.org/viewvc/james/server/trunk/src/site/xdoc/provided_mailets_2_3.xml?rev=433223&r1=433222&r2=433223&view=diff
==============================================================================
--- james/server/trunk/src/site/xdoc/provided_mailets_2_3.xml (original)
+++ james/server/trunk/src/site/xdoc/provided_mailets_2_3.xml Mon Aug 21
04:09:51 2006
@@ -30,10 +30,11 @@
<p>James provides a number of implemented Mailets for use by James
administrators in their
configurations. These are primarily mailets that members of the James
developer or user
communities have found useful in their own configurations. A description of
how to configure
-Mailets and use them in the James SpoolManager can be found <a
href="spoolmanager_configuration_2_1.html">here</a>.</p>
+Mailets and use them in the James SpoolManager can be found <a
href="spoolmanager_configuration_2_3.html">here</a>.</p>
<subsection name="AddFooter">
<p>Description: This mailet adds a text footer to the message.</p>
+
<p>Parameters:
<ul>
<li><strong>text</strong> (required) - the text that will be added as a footer
to the message.</li>
@@ -43,23 +44,19 @@
<subsection name="AddHabeasWarrantMark">
<p>Description: This mailet adds a Habeas warrant mark (see <a
href="http://habeas.com">http://habeas.com</a> for details) to the message.</p>
+
<p>Parameters: None.</p>
</subsection>
<subsection name="AddHeader">
<p>Description: This mailet is <strong>deprecated</strong> .Please use
SetMimeHeader .</p>
-<p>Parameters:
-<ul>
-<li><strong>name</strong> (required) - the name of the header to be added to
the message.</li>
-<li><strong>value</strong> (required) - the text that will be added as a
header to the message.</li>
-</ul>
-</p>
</subsection>
<subsection name="AvalonListserv">
<p>Provides basic list server functionality. Implements basic filters for
emails sent to the list,
including restriction of senders to members, diallowing attachments in list
messages, and subject line
processing</p>
+
<p>Parameters:
<ul>
<li><strong>repositoryName</strong> (required) - the name of the user
repository that contains the users
@@ -83,6 +80,7 @@
<list-name>-off@<host> where <list-name> and lt;host> are
arbitrary. Note
that this should be used in tandem with a CommandForListserv matcher to ensure
that only commands
intended for a specific list are processed.</p>
+
<p>Parameters:
<ul>
<li><strong>repositoryName</strong> (required) - the name of the user
repository that contains the users
@@ -93,6 +91,7 @@
<subsection name="BayesianAnalysis">
<p>Description: Spam detection mailet using bayesian analysis techniques.</p>
+
<p>Parameters:
<ul>
<li><strong>repositoryPath</strong> (required) - The repositoryPath which is
used.</li>
@@ -106,6 +105,7 @@
<subsection name="BayesianAnalysisFeeder">
<p>Description: Feeds ham OR spam messages to train the BayesianAnalysis
mailet.</p>
+
<p>Parameters:
<ul>
<li><strong>repositoryPath</strong> (required) - The repositoryPath which is
used.</li>
@@ -117,6 +117,7 @@
<subsection name="Bounce">
<p>Description: Generates a response to the reverse-path address.</p>
+
<p>Parameters:
<ul>
<li><strong>sender</strong> - The senderAddress which will be used for sending
the bounce. Possible values: <i>address</i>, <i>postmaster</i> , <i>sender</i>,
@@ -140,6 +141,7 @@
<subsection name="ClamAVScan">
<p>Description: Does an antivirus scan check using a ClamAV daemon (CLAMD).</p>
+
<p>Parameters:
<ul>
<li><strong>host</strong> - The host name of the server where CLAMD runs. The
default is <i>localhost</i></li>
@@ -156,6 +158,67 @@
</p>
</subsection>
+<subsection name="CommandListservFooter">
+<p>Description: CommandListservFooter is based on the AddFooter mailet. It is
used by the CommandListservProcessor to inject a footer into mailing list.</p>
+
+<p>Parameters: None.</p>
+</subsection>
+
+<subsection name="CommandListservManager">
+<p> Description: CommandListservManager is the default implementation of
ICommandListservManager.
+It loads all the configured IListServCommands and delegates to them at runtime.
+<br/>
+It isn't responsible for procesing messages sent to the main mailing list, but
is responsible for
+individual commands sent by users, such as: info, subscribe, etc...
+<br/>
+Requests sent to the CommandListservManager take the form of:
+<pre>
+<listName>-<commandName>@domain
+</pre>
+
+If the command isn't recognized an error will be sent.
+<br/>
+<br/>
+The configuration for this mailet sould be in the 'root' processor block.</p>
+
+<p>Parameters:
+<ul>
+<li><strong>listName</strong> - The listname </li>
+<li><strong>displayName</strong> - The full listname</li>
+<li><strong>listOwner</strong> - An emailaddress which will be used as
owneraddress.</li>
+<li><strong>repositoryName</strong> - the repository name </li>
+<li><strong>listDomain</strong> - The domain</li>
+</ul>
+</p>
+<br/>
+<p> Example configuration:
+<source>
+<mailet match="[EMAIL PROTECTED]" class="CommandListservManager">
+ <listName>announce</listName>
+ <displayName>Announce mailing list</displayName>
+ <listOwner>[EMAIL PROTECTED]</listOwner>
+ <repositoryName>list-announce</repositoryName>
+ <listDomain>localhost</listDomain>
+
+ <commandpackages>
+
<commandpackage>org.apache.james.transport.mailets.listservcommands</commandpackage>
+ </commandpackages>
+
+ <commands>
+ <command name="subscribe" class="Subscribe"/>
+ <command name="subscribe-confirm" class="SubscribeConfirm"/>
+ <command name="unsubscribe" class="UnSubscribe"/>
+ <command name="unsubscribe-confirm" class="UnSubscribeConfirm"/>
+ <command name="error" class="ErrorCommand"/>
+ <command name="owner" class="Owner"/>
+ <command name="info" class="Info"/>
+ </commands>
+ </mailet>
+</source>
+</p>
+</subsection>
+
+
<subsection name="DSNBounce">
<p>Description: Generates a Delivery Status Notification (DSN). Note that this
is different than a mail-client's
reply, which would use the Reply-To or From header.Bounced messages are
attached in their entirety (headers and
@@ -164,6 +227,7 @@
meaning that no reply should be sent.
A sender of the notification message can optionally be specified.
If one is not specified, the postmaster's address will be used.</p>
+
<p>Parameters:
<ul>
<li><strong>sender</strong> - An address, postmaster,sender or unaltered.
Default is <i>postmaster</i></li>
@@ -181,6 +245,7 @@
<subsection name="Forward">
<p>Description: This mailet forwards the message to a set of recipients.</p>
+
<p>Parameters:
<ul>
<li><strong>forwardto</strong> (required) - a comma delimited list of email
addresses.</li>
@@ -190,6 +255,7 @@
<subsection name="FromRepository">
<p>Description: This mailet ee-spools mail found in the specified
Repository.</p>
+
<p>Parameters:
<ul>
<li><strong>repositoryPath</strong> (required) - The repositoryPath which is
used.</li>
@@ -199,8 +265,15 @@
</p>
</subsection>
+<subsection name="ICommandListservManager">
+<p>Description: ICommandListservManager is the interface that describes the
functionality of any command based list serv managers.</p>
+
+<p>Parameters: None.</p>
+</subsection>
+
<subsection name="JDBCAlias">
<p>Description: This mailet does alias translation for email addresses stored
in a database table.</p>
+
<p>Parameters:
<ul>
<li><strong>mappings</strong> (required) - a URL of the form
db://<data-source>/<table>, where
@@ -214,6 +287,7 @@
<subsection name="JDBCVirtualUserTable">
<p>Description: This mailet does complex alias translation for email addresses
stored in a database table.</p>
+
<p>Parameters:
<ul>
<li><strong>table</strong> (required) - the URL describing the database table.
This URL has the form
@@ -227,11 +301,28 @@
<subsection name="LocalDelivery">
<p>Description: This mailet delivers messages to local mailboxes.</p>
+
<p>Parameters: None.</p>
</subsection>
+<subsection name="LogMessage">
+<p>Description: Logs Message Headers and/or Body.</p>
+
+<p>Parameters:
+<ul>
+<li><strong>passThrough</strong> (optional) - If the "passThrough" in confs is
true the mail will be left untouched in
+the pipe. If false will be destroyed. Default is true.</li>
+<li><strong>headers</strong> (optional) - If set to true the headers get
logged. Default is true"</li>
+<li><strong>body</strong> (optional) - If set to true the body get logged.
Default is true.</li>
+<li><strong>bodyMax</strong> (optional) - The max length wich should be
logged. Default is log all.</li>
+<li><strong>comment</strong> (optional) - The comment which should be logged
Default is none.</li>
+</ul>
+</p>
+</subsection>
+
<subsection name="NotifyPostmaster">
<p>Description: This mailet forwards the message as an attachment to the James
postmaster.</p>
+
<p>Parameters:
<ul>
<li><strong>sendingAddress</strong> (optional) - the address from which the
forwarded email will be
@@ -245,6 +336,7 @@
<subsection name="NotifySender">
<p>Description: This mailet forwards the message as an attachment to the
original sender.</p>
+
<p>Parameters:
<ul>
<li><strong>sendingAddress</strong> (optional) - the address from which the
forwarded email will be
@@ -258,6 +350,7 @@
<subsection name="Null">
<p>Description: This mailet ends processing for this mail.</p>
+
<p>Parameters: None.</p>
</subsection>
@@ -266,6 +359,7 @@
of the domains managed by this James server and substitutes the configured
James postmaster address for
the original recipient address. This mailet is inserted automatically by
James at the head of the root
processor.</p>
+
<p>Parameters: None.</p>
</subsection>
@@ -280,12 +374,14 @@
By extending it and overriding one or more of its methods new behaviour can
be quickly created without the author having to address any other issue
than
the relevant one. For more information see the javadocs
- <a
href="javadocs/org/apache/james/transport/mailets/Redirect.html">here</a>.</p>
-<p>Parameters: <a
href="javadocs/org/apache/james/transport/mailets/Redirect.html">See
javadocs.</a></p>
+ <a
href="apidocs/org/apache/james/transport/mailets/Redirect.html">here</a>.</p>
+
+<p>Parameters: <a
href="apidocs/org/apache/james/transport/mailets/Redirect.html">See
javadocs.</a></p>
</subsection>
<subsection name="RemoteDelivery">
<p>Manages delivery of messages to recipients on remote SMTP hosts.</p>
+
<p>Parameters:
<ul>
<li><strong>outgoing</strong> (required) - The URL for the repository that
will hold messages being processed
@@ -323,12 +419,14 @@
</subsection>
<subsection name="RemoveAllMailAttributes">
-<p>Desctription: Removes all attributes on the Mail instance.</p>
-<p>Parameters: None. </p>
+<p>Description: Removes all attributes on the Mail instance.</p>
+
+<p>Parameters: None.</p>
</subsection>
-<subsection name="RemoveAllMailAttributes">
-<p>Desctription: Remove attributes on the Mail instance.</p>
+<subsection name="RemoveMailAttributes">
+<p>Description: Remove attributes on the Mail instance.</p>
+
<p>Parameters:
<ul>
<li><strong>name</strong> (required) - The name of the attribute to
remove.</li>
@@ -336,13 +434,85 @@
</p>
</subsection>
+<subsection name="Resend">
+<p>Description:A mailet providing configurable redirection services. For more
information see
+the javadocs <a
href="apidocs/org/apache/james/transport/mailets/Resend.html">here</a>.</p>
+
+<p>Parameters: <a
href="apidocs/org/apache/james/transport/mailets/Resend.html">See
javadocs.</a></p>
+</subsection>
+
<subsection name="ServerTime">
<p>Description: This mailet sends a message to the sender of the original mail
message with a server timestamp.</p>
+
<p>Parameters: None.</p>
</subsection>
+<subsection name="SetMailAttributes">
+<p>Description: Set attributes on the Mail instance.</p>
+
+<p>Parameters:
+<ul>
+<li><strong>name</strong> (required) - The name of the attribute to set.</li>
+</ul>
+</p>
+</subsection>
+
+<subsection name="SetMimeHeader">
+<p>Description: Set an MimeHeader on a MimeMessage.</p>
+
+<p>Parameters:
+<ul>
+<li><strong>name</strong> (required) - the name of the header to be added to
the message.</li>
+<li><strong>value</strong> (required) - the text that will be added as a
header to the message.</li>
+</ul>
+</p>
+</subsection>
+
+<subsection name="SMIMECheckSignature">
+<p>Description: Verifies the s/mime signature of a message. The s/mime signing
ensure that
+the private key owner is the real sender of the message. To be checked by
+this mailet the s/mime signature must contain the actual signature, the
+signer's certificate and optionally a set of certificate that can be used to
+create a chain of trust that starts from the signer's certificate and leads
+to a known trusted certificate.
+</p>
+<p>
+This check is composed by two steps: firstly it's ensured that the signature
+is valid, then it's checked if a chain of trust starting from the signer
+certificate and that leads to a trusted certificate can be created. The first
+check verifies that the the message has not been modified after the signature
+was put and that the signer's certificate was valid at the time of the
+signing. The latter should ensure that the signer is who he declare to be.
+</p>
+
+<p>Parameters: <a
href="apidocs/org/apache/james/transport/mailets/smime/SMIMECheckSignature.html">See
javadocs.</a></p>
+</subsection>
+
+<subsection name="SMIMEDecrypt">
+<p>Description: This mailet decrypts a s/mime encrypted message. It takes as
input an
+encrypted message and it tries to dechiper it using the key specified in its
+configuration. If the decryption is successful the mail will be changed and
+it will contain the decrypted message. The mail attribute
+<code>org.apache.james.SMIMEDecrypt</code> will contain the public
+certificate of the key used in the process. </p>
+
+<p>Parameters: <a
href="apidocs/org/apache/james/transport/mailets/smime/SMIMEDecrypt.html">See
javadocs.</a></p>
+</subsection>
+
+<subsection name="SMIMESign">
+<p>Description: Puts a <i>server-side</i> SMIME signature on a message.
+It is a concrete subclass of SMIMEAbstractSign, with very few modifications to
it.</p>
+<p>A text file with an explanation text is attached to the original message,
+and the resulting message with all its attachments is signed.
+The resulting appearence of the message is almost unchanged: only an extra
attachment
+and the signature are added.</p>
+
+<p>Parameters: <a
href="apidocs/org/apache/james/transport/mailets/smime/SMIMESign.html">See
javadocs.</a></p>
+</subsection>
+
<subsection name="ToProcessor">
-<p>Redirects processing of the mail message to the specified processor.</p>
+<p>Description: Redirects processing of the mail message to the specified
processor.</p>
+
<p>Parameters:
<ul>
<li><strong>processor</strong> (required) - the name of the processor to which
the message
@@ -354,8 +524,29 @@
</p>
</subsection>
+<subsection name="ToMultiRepository">
+<p>Description: Receives a Mail from JamesSpoolManager and takes care of
delivery of the
+message to local inboxes or a specific repository.
+
+Differently from LocalDelivery this does not lookup the UserRepository This
+simply store the message in a repository named like the local part of the
+recipient address.
+
+If no repository is specified then this fallback to MailServer.getUserInbox.
+Otherwise you can add your own configuration for the repository.</p>
+<p>Parameters:
+<ul>
+<li><strong>repositoryUrl</strong> (required) - the URL of the repository to
which the message
+is to be added.</li>
+<li><strong>addDeliveryHeader</strong> (optional) - a String value which can
be used specify a header which will add to the message.
+Default is to not add a header.</li>
+</ul>
+</p>
+</subsection>
+
<subsection name="ToRepository">
<p>Places a copy of the message in the specified repository.</p>
+
<p>Parameters:
<ul>
<li><strong>repositoryPath</strong> (required) - the URL of the repository to
which the message
@@ -370,6 +561,7 @@
<p>Description: Ignores the recipients associated with the Mail interface.
Instead, it regenerates the
mail recipients from the MimeMessage headers (To, Cc, Bcc) and inserts a new
message at the queue root
these new recipients. The original message is GHOSTed.</p>
+
<p>Parameters:
<ul>
<li><strong>debug</strong> (optional) - a boolean value (true/false)
indicating whether debugging is
@@ -377,6 +569,58 @@
</ul>
</p>
</subsection>
+
+<subsection name="UsersRepositoryAliasingForwarding">
+<p>Receives a Mail from JamesSpoolManager and takes care of delivery of the
+message to local inboxes.</p>
+
+<p>Parameters:
+<ul>
+<li><strong>enableAliases</strong> (optional) - Specify wether the user
aliases should
+be looked up or not. Default is false.</li>
+<li><strong>enableForwarding</strong> (optional) -Enable the forwarding.
Default to
+false.</li>
+<li><strong>usersRepository</strong> (optional) - Specific users repository
+name. Default to empty. If empty does lookup the default userRepository.
+</li>
+</ul>
+</p>
+</subsection>
+
+<subsection name="WhiteListManager">
+<p>Manages for each local user a "white list" of remote addresses whose
messages
+should never be blocked as spam.</p>
+<p>The normal behaviour is to check, for a local sender, if a remote recipient
+is already in the list: if not, it will be automatically inserted.
+This is under the interpretation that if a local sender <i>X</i> sends a
message to a
+remote recipient <i>Y</i>, then later on if a message is sent by <i>Y</i> to
<i>X</i> it should be
+considered always valid and never blocked; hence <i>Y</i> should be in the
white list
+of <i>X</i>.</p>
+<p>Another mode of operations is when a local sender sends a message to
<i>whitelistManagerAddress</i>
+with one of three specific values in the subject, to
+(i) send back a message displaying a list of the addresses in his own list;
+(ii) insert some new addresses in his own list;
+(iii) remove some addresses from his own list.
+In all this cases the message will be ghosted and the postmaster will reply
+to the sender.</p>
+<p> The sender name is always converted to its primary name (handling
aliases).</p>
+
+<p>Parameters:
+<ul>
+<li><strong>repositoryPath</strong> - The repository path.</li>
+<li><strong>automaticInsert</strong> (optional) - If true automatically
inserts the local sender to remote
+recipients entries in the whitelist. Default is false.</li>
+<li><strong>whitelistManagerAddress</strong> (optional) - Set this to an
email address of the "whitelist manager" to send
+commands to (default is null).</li>
+<li><strong>displayFlag</strong> (optional) - Set this to a unique text that
you can use (by sending a
+message to the "whitelist manager" above) to tell the mailet to send back the
contents of the white list. Default is null.</li>
+<li><strong>insertFlag</strong> (optional) - Set this to a unique text that
you can use (by sending a message to the "whitelist manager" above)
+to tell the mailet to insert some new remote recipients to the white list.
Default is null.</li>
+<li><strong>removeFlag</strong> (optional) - Set this to a unique text that
you can use (by sending a message to the "whitelist manager" above)
+to tell the mailet to remove some remote recipients from the white list.
Default is null.</li>
+</ul>
+</p>
+</subsection>
</section>
</body>
-</document>
+</document>
\ No newline at end of file
Modified: james/server/trunk/src/site/xdoc/provided_matchers_2_3.xml
URL:
http://svn.apache.org/viewvc/james/server/trunk/src/site/xdoc/provided_matchers_2_3.xml?rev=433223&r1=433222&r2=433223&view=diff
==============================================================================
--- james/server/trunk/src/site/xdoc/provided_matchers_2_3.xml (original)
+++ james/server/trunk/src/site/xdoc/provided_matchers_2_3.xml Mon Aug 21
04:09:51 2006
@@ -182,6 +182,17 @@
<p>Configuration string: One of three strings - "blackholes.mail-abuse.org",
"relays.mail-abuse.org", or "dialups.mail-abuse.org".</p>
</subsection>
+<subsection name="IsInWhiteList">
+<p>Description: Matches recipients having the mail sender in the recipient's
private whitelist.
+The recipient name is always converted to its primary name (handling
aliases).</p>
+<p>Configuration string: The database name containing the white list table.</p>
+<pre><code>
+<mailet match="IsInWhiteList=db://maildb" class="ToProcessor">
+ <processor> transport </processor>
+</mailet>
+</code></pre>
+</subsection>
+
<subsection name="IsSingleRecipient">
<p>Description: Matches those messages sent to only a single recipient. The
single recipient is returned.</p>
<p>Configuration string: None.</p>
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]