#
# See https://rspamd.com/doc/tutorials/writing_rules.html for details
-# Rspamd statistic setup
-# Pre-built files could be loaded from:
-# http://rspamd.com/rspamd_statistics/bayes.spam.sqlite
-# - and -
-# http://rspamd.com/rspamd_statistics/bayes.ham.sqlite
+# Rspamd statistic setup, set up the Redis server as appropriate
classifier "bayes" {
tokenizer {
name = "osb";
}
- cache {
- path = "${DBDIR}/learn_cache.sqlite";
- }
+
min_tokens = 11;
- backend = "sqlite3";
- languages_enabled = true;
+ backend = "redis";
min_learns = 200;
statfile {
symbol = "BAYES_HAM";
- path = "${DBDIR}/bayes.ham.sqlite";
spam = false;
}
statfile {
symbol = "BAYES_SPAM";
- path = "${DBDIR}/bayes.spam.sqlite";
spam = true;
}
+ # Define different if needed
+ servers = "127.0.0.1:6379";
+ # Store not only probabilities, but full tokens, false by default
+ #store_tokens = true;
+ # Use new schema (TODO: add convert tool)
+ #new_schema = true;
+ # Store bayes signatures (TODO: add some usefullnes to this feature)
+ #signatures = true;
+ # Expire bayes tokens (TODO: check for new schema, add expiration logic)
+ #expiry = 30d;
+ # Enable per user statistics (TODO: describe how to use per user + normal stats)
+ #per_user = true;
+
learn_condition =<<EOD
return function(task, is_spam, is_unlearn)
local prob = task:get_mempool():get_variable('bayes_prob', 'double')