Trouble with training
'Stefan Geißler'
stefan.geissler at theimagingsource.com
Wed Mar 19 16:33:40 CET 2008
Hi,
I have a problem with training the bogofilter. I use a PHP script. This
script adds head and body of an email into a file and passes it as
parameter for training to the filter.
I use following functions:
1.) Retrieve the email header:
function getplainheader()
{
return
imap_fetchheader($this->rm_mailbox,$this->rm_currentmessage,FT_UID|FT_INTERNAL|FT_PREFETCHTEXT
);
}
2.) Retrieve the mail body:
function dump_body2()
{
return
imap_body($this->rm_mailbox,$this->rm_currentmessage,FT_UID|FT_INTERNAL);
}
Then I do following:
function evaluate_bogospam($rcmail )
{
$mailtext = $rcmail->getplainheader();
$mailtext .= $rcmail->dump_body2();
if( trim( $mailtext ) != "" )
{
$filename =
"/home/wwwdev/public_html/develope/receivemail/mailbody";
$fp = @fopen( $filename, "w" );
@fputs( $fp, $mailtext );
@fclose( $fp );
$cmd = "bogofilter -T -d /home/wwwdev/public_html/local -I
".$filename;
exec( $cmd, $ausgabe2, $returnvar );
echo "Bogo Filter return value : ".$returnvar . " : " .
$ausgabe2[0]."<br>";
}
}
The problem is, that I get in bogosity an "unknown" while the test
function above gives me a clear "spam". The related mail was trained
before in the same way as shown above.
What am I doing wrong? What is the difference to procmail?
Thank you in advance
Stefan
More information about the Bogofilter
mailing list