Re: Spam moving

От: Sergey Chumakov <CGatePro_at_mx_ru>
Дата: Wed 21 Jun 2006 - 11:05:07 MSD

On Wed, 21 Jun 2006 10:25:02 +0400
"Nazarkin Andrew" <CGatePro@mx.ru> wrote:

> Я таким пользуюсь:
> #!/usr/bin/perl -w
>
> use CLI;
>
>
>
> $CGServerAddress = "X.X.X.X";
>
> my $Login = "postmaster\@domain.com";
>
> print "Password: ";
> my $Password = "1234";
> chomp $Password;
>
> my $cli = new CGP::CLI( { PeerAddr => $CGServerAddress,
> PeerPort => 106,
> login => $Login,
> password => $Password,
> SecureLogin => 0} )
> || die "Can't login to CGPro: ".$CGP::ERR_STRING."\n";
> $AccountList = $cli->ListAccounts('renlife.com')
> || die "Error: ".$cli->getErrMessage.", quitting";
> foreach(keys %$AccountList) {
> print $_."\n";
> $ACC = $_;
> crtspmbox($ACC);
> }
> sub crtspmbox {
> my $acc = shift;
> $cli->CreateMailbox($acc,'SPAM');
> my @Rules =(
> [ 5, 'SPAM',
> [['Header Field', 'is', '*X-Spam-Status: Yes*']],
> [['Store in', "~".$acc."/SPAM"],
> ['Discard']]
> ]
> );
> $cli->SetAccountRules($acc,\@Rules) || die "Error:
> ".$cli->getErrMessage .", quitting";
> }

Недостатки этого скрипта: не проверяет наличие ящика перед созданием, не проверяет наличие правила перед созданием, удаляет существующие правила пользователей. Нужно получить массив правил аккаунта, в него добавить новое, потом записывать.

-- 
С уважением, 

Сергей Чумаков
системный администратор ISP Оптима Телеком
Получено Wed Jun 21 07:05:11 2006

Этот архив был сгенерирован hypermail 2.1.8 : Wed 21 Jun 2006 - 11:12:44 MSD