You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@james.apache.org by GitBox <gi...@apache.org> on 2022/08/10 04:26:05 UTC

[GitHub] [james-project] chibenwa commented on a diff in pull request #1113: JAMES-3775 Documentation for RSpamD extension

chibenwa commented on code in PR #1113:
URL: https://github.com/apache/james-project/pull/1113#discussion_r942003393


##########
server/apps/distributed-app/docs/modules/ROOT/pages/architecture/index.adoc:
##########
@@ -19,7 +19,7 @@ patterns. ElasticSearch throughtput do not however match the one of Cassandra th
  * *RabbitMQ* enables James nodes of a same cluster to collaborate together. It is used to implement connected protocols,
 notification patterns as well as distributed resilient work queues and mail queue.
  * *Tika* (optional) enables text extraction from attachments, thus improving full text search results.
- * *SpamAssassin* (optional) can be used for Spam detection and user feedback is supported.
+ * *SpamAssassin or RSpamD* (optional) can be used for Spam detection and user feedback is supported.

Review Comment:
   ```suggestion
    * *link:xyz[SpamAssassin] or link:xyz[RSpamD]* (optional) can be used for Spam detection and user feedback is supported.
   ```
   
   Links to SPamAssassin and RSpamD projects can be handy here



##########
third-party/rspamd/index.md:
##########
@@ -0,0 +1,49 @@
+# James' extensions for RSpamD
+
+This module is for developing and delivering extensions to James for the [RSpamD](https://rspamd.com/) (the spam filtering system) 
+
+## How to run
+
+- Compile this module
+
+```
+mvn clean install -DskipTests
+```
+- The RSpamD extension requires an extra configuration file `rspamd.properties` to configure RSpamd connection
+Configuration parameters:
+    - `rSpamDUrl` : URL defining the RSpamD's server. Eg: http://rspamd:11334
+    - `rSpamDPassword` : Password for pass authentication when request to RSpamD's server. Eg: admin
+  
+- Declare the `extensions.properties` for this module.
+
+```
+guice.extension.module=org.apache.james.rspamd.module.RSpamDModule
+guice.extension.task=org.apache.james.rspamd.module.RSpamDTaskExtensionModule
+```
+
+- Declare the RSpamD mailbox listeners in `listeners.xml`. Eg:
+
+```
+<listener>
+    <class>org.apache.james.rspamd.RSpamDListener</class>
+</listener>
+```
+
+- Declare the RSpamD mailet for custom mail processing. Mailet pipeline Eg:
+
+```
+<mailet match="All" class="org.apache.james.rspamd.RSpamDScanner"></mailet>
+<mailet match="IsMarkedAsSpam=org.apache.james.rspamd.status" class="WithStorageDirective">
+    <targetFolderName>Spam</targetFolderName>
+</mailet>
+```
+
+- Declare the webadmin for RSpamD in `webadmin.properties`
+
+```
+extensions.routes=org.apache.james.rspamd.route.FeedMessageRoute
+```
+How to use admin endpoint, see more at [Additional webadmin endpoints](README.md)
+
+- Docker compose file example: [docker-compose.yml](docker-compose.yml) or [docker-compose-distributed.yml](docker-compose-distributed.yml)
+- The sample-configuration: [sample-configuration](sample-configuration)

Review Comment:
   Tell me how to test this:
   
   `Firt compile this project: mvn clean install -DskipTests then run it: docker-compose up`



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: notifications-unsubscribe@james.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscribe@james.apache.org
For additional commands, e-mail: notifications-help@james.apache.org