I also use Mail-audit with SpamAssassin.
I'm curious how are you integrating the two.
I have a .pl script that's called by qmail when mail is delivered to my
account
and that perl script basically filters using Mail::Audit and uses
SpamAssassin to determine
which messages are spam.
my $spamtest = new Mail::SpamAssassin({
PREFIX => $PREFIX,
DEF_RULES_DIR => $DEF_RULES_DIR,
LOCAL_RULES_DIR => $LOCAL_RULES_DIR,
});
my $mail = Mail::Audit->new(
nomime=> 1,
emergency=>"$maildir/.emergency/",
loglevel=>2,
log=>$log
);
sub noma_from_string_or_arrayref {
my $arrayRef = (ref $_[0] eq 'ARRAY') ? $_[0] : [ split /^/m, $_[0] ];
my $no_audit = Mail::SpamAssassin::NoMailAudit->new ('data' =>
$arrayRef);
return $no_audit;
}
sub ma_from_string_or_arrayref {
my $arrayRef = (ref $_[0] eq 'ARRAY') ? $_[0] : [ split /^/m, $_[0] ];
my $mail_audit = Mail::Audit->new(
nomime=> 1,
emergency=>"$maildir/.emergency/",
loglevel=>2,
log=>$log,
data=>$arrayRef);
return $mail_audit;
}
if ($status->is_spam()) {
# remove bogus attachments
my $learnmail = noma_from_string_or_arrayref($mail->as_string);
my $learn_status = $spamtest->learn($learnmail, undef, 1); # learn
as spam
my @newLines = removeSuspiciousAttachments($learnmail);
$mail = ma_from_string_or_arrayref(\@newLines);
log_mbox($mail, " Spamassassin has determined this mail is SPAM
accepting to
folder " . replace_dot_with_slash($spam) . "\n\n");
$mail->accept("$maildir/.$spam/");
# terminates here
}
On Apr 26, 2004, at 3:07 PM, Jeff Bisbee wrote:
Casey,
I was just about to do something like this so I could photo blog with my
phone :) Thanks!
BTW, wanted to share something I came up with for my filter (nothing new
but pretty handy) Often times my wife needs to get copies of e-mails
that get sent to me (credit card e-mail alerts, netflix, e-bay auction
notices, etc) Anyway I threw together this snippet to strip out images
(because yahoo marks e-mails as spam if the source images aren't for the
site where the e-mail originated from) and just creates a copy and sends
it on its way. After looking at it again, it could be cut down a bit,
but it worked, I just left it :)
our @forward_addresses = qw(jbisbee@xxxxxxxxx);
# resend($msg) is to copy any ebay/netflix/cingular emails to
# my wife Heather # Mail::Audit->resend didn't work because the
# headers did match the host it was sent from so it was marked as
# spam by yahoo also html src images didn't match the domain of
# where the mail originated from so I just stripped those out
if ($msg->to =~ /netflix/ ||
$msg->to =~ /ebay/ ||
$msg->to =~ /discover/ ||
$msg->to =~ /cingular/) {
resend($msg);
}
sub resend
{
my ($msg) = @_;
my $from = $msg->from;
$from =~ s/\<.+?\>//;
$from =~ s/\"//g;
my $body = join('',@{$msg->body});
$body =~ s/\<img .*?src.+?\>//gis; # strip out images :D
for my $address (@forward_addresses) {
my %mail = (
To => $address,
From => '"' . $from . '" <' . $msg->to . '>',
Subject => $msg->subject,
Message => $body,
);
# forward whatever headers you want
for my $header ('Mime Version', 'Content-Type') {
if (my $value = $msg->get($header)) {
$mail{$header} = $value;
}
}
sendmail(%mail);
}
}
* Casey West (casey@xxxxxxxxxxxx) wrote:
It was Monday, April 26, 2004 when Bowen Dwelle took the soap box,
saying:
: I've been using Mail::Audit for at least a couple of years now, and
I've
: had it integrated with Mail::SpamAssassin for quite a while. Just now,
: I've hooked in Net::Blogger so that I can post to my MovableType blog
: automatically via email (e.g. from a camera phone). Perhaps someone
else
: has already done this?
http://caseywest.com/code/scripts/post-journal.pl
I use Verizon in the US, you may have to play with it to get your
camera phone to work. I also syndicate to use Perl;, and this is how.
Enjoy!
Casey West
--
Shooting yourself in the foot with BASIC (interpreted)
You shoot yourself in the foot with a water pistol until your leg is
waterlogged and rots off.
_______________________________________________
mail-audit mailing list
mail-audit@xxxxxxxxxxxxxxxxxxxx
http://lists.netthink.co.uk/listinfo/mail-audit
-- Jeff Bisbee / mail-audit@xxxxxxxxxxx / jbisbee.com
_______________________________________________
mail-audit mailing list
mail-audit@xxxxxxxxxxxxxxxxxxxx
http://lists.netthink.co.uk/listinfo/mail-audit
_______________________________________________
mail-audit mailing list
mail-audit@xxxxxxxxxxxxxxxxxxxx
http://lists.netthink.co.uk/listinfo/mail-audit