Portál AbcLinuxu, 10. května 2025 08:13

Dotaz: Postfix vacation

25.2.2011 14:02 eth4rendil | skóre: 13
Postfix vacation
Přečteno: 496×
Odpovědět | Admin
Dobrý deň,

snažil som sa spraviť vlastný autoresponder v postfixe v prípade neprítomnosti. Text aut odpovede sa nachádza v databáze, ktorú si spravujú uživateľia webovým rozhraním. Nastavil som transport mapu pre doménu nasledovne:
domena.com autores
do master.conf som pridal:
autores unix  -       n       n       -       -       pipe
  flags=F user=autores argv=/home/autores/autores $sender $recipient
php script autores vyzerá nasledovne:
#!/usr/bin/php
[en] ERROR on MySQL server connection");
(is_resource($conn));
(mysql_select_db('oof',$conn));
mysql_set_charset('utf8',$conn);
$from = $argv[1];
$to = $argv[2];
exec('/usr/sbin/sendmail -i -f "'.$from.'" "'.$to.'"');
mysql_query("DELETE FROM log WHERE datum < DATE_SUB(NOW(),INTERVAL 1 HOUR");
$que=mysql_query("SELECT * FROM oof WHERE email='$to' AND CURDATE() BETWEEN time_start AND time_end");
$pocet=mysql_num_rows($que);
if($pocet=='0')
{
exec('logger -i -t oof -p mail.notice "Ignorujem od: '.$from.' pre: '.$to.'"');
}
if($pocet=='1')
{
        $poctik=mysql_num_rows(mysql_query("SELECT id FROM log WHERE mail_from ='$from' AND mail_to='$to'"));
        if($poctik=='1') die();
        $quef=mysql_fetch_array($que);
        include_once '/home/autores/class.phpmailer-lite.php';
        $ooftext=$quef['text'];
        $mail = new PHPMailerLite(true);
        $mail->AddReplyTo($from,'autoreply');
        $mail->SetFrom($from,'autoreply');
        $mail->AddAddress($to);
        $mail->Subject  = 'Out of office';
        $mail->AltBody    = strip_tags($ooftext);
        $mail->WordWrap   = 80;
        $mail->MsgHTML($ooftext);
        $mail->IsHTML(true);

        if($mail->Send())
        {
                exec('logger -i -t oof -p mail.notice "Odoslana aut odpoved od: '.$from.' pre:  '.$to.'"');
                mysql_query("INSERT INTO log(mail_from,mail_to,datum) values('$from','$to',now())");
        }
}
exit(0);
?>
Niekoľko krát sa mi stalo, že niektoré maily proste neboli doručené. Myslím, že som som to celé asi moc "múdro" nevymyslel. Vedeli by ste mi poradiť ako by som mal správne postupovať popr. čo je na mojom "riešení" nesprávne?

Ďakujem pekne
Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

25.2.2011 15:42 jirkamailto | skóre: 31
Rozbalit Rozbalit vše Re: Postfix vacation
Odpovědět | | Sbalit | Link | Blokovat | Admin
Resil jsem podobny problem, kdy jsem potreboval uzivatelu oznamovat ze jsem na dovolene. Vyresil jsem to pres imap server dovecot a doplnek, ktery se jmenuje sieve. Nabizi moznost take filtrovani posty.
25.2.2011 16:40 eth4rendil | skóre: 13
Rozbalit Rozbalit vše Re: Postfix vacation
ďakujem za radu ale momentálne používam courier... ak sa nemýlim tak ajaj v postfixadmine je script vacation.pl, ktorý rieši takéto situácie...
26.2.2011 03:31 NoXO
Rozbalit Rozbalit vše Re: Postfix vacation
ano je, ale nezprovozňoval jsem ho.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.