[ XTeam @ 22.03.2007. 21:48 ] @
Zdravo svima.

Postavljam fax server i sve readi, osim jedne funkcije: email to fax gateway.

Zapravo i ta funkcija radi, ali bih hteo da iz nje izuzmem nešto:

Ova perl skripta:

Code:
#!/usr/bin/perl
use MIME::Parser;
use POSIX;

my $tmp = "/tmp/mail-$$";
mkdir $tmp, 0700;
my $log_file = "/var/log/faxgw";

my $parser = new MIME::Parser;
$parser->output_under($tmp);

my $entity = $parser->parse(\*STDIN);

my @parts;
my @entities = ($entity);

while ($_ = shift(@entities))
{
    my @p;
    if (@p = $_->parts)
    {
        unshift @entities, @p;
    } else
    {
        push @parts, $_;
    }
}

my $from = $entity->head->get('From');$from =~ s/\n//go;
my $oldsubject = $entity->head->get('Subject');$oldsubject =~ s/\[(\d+)\]\s*(.*)//go;$number = $1;
my $subject = $2; 

system( "sendfax",
        "-R",
        "-m",
        "-n",
        "-f", $from,
        "-r", $subject,
        "-d", $number,
        map ({$_->bodyhandle->path() } @parts)
);

#system("/bin/rm", "-rf", $tmp);

my $logmessage = strftime("%d.%m.%Y %H:%M:%S", localtime) . " Sent fax, from: $from, to: $number, regarding: $subject.\n";
open (my $log, ">>", $log_file) || die "Could not open $file for append: $!";
print $log $logmessage;
close $log;


radi sledeće:

email koji stigne na fax server raščlani na sastavne delove:

- tekstualnu komponentu
- HTML komponentu
- attachment komponentu (koji treba da bude u TIFF, PS ili PDF)

tako da u /tmp/ direktorijumu dobije poddirektorijum recimo:

mail-16738

a u njemu

msg-1174598017-16738-0

a onda u njemu

tri fajla:

msg-16738-1.txt msg-16738-2.html TestPage.ps

(čini mi se da to radi negde u okviru one petlje while ($_ = shift(@entities)) ...itd )

skripta zatim koristeći sistemsku komandu "sendfax" prosleđujući joj parametre inicira time slanje faksa.

Ono što meni treba je da se iz "body"-ja emaila izvuče samo attachement (ps, pdf ili tiff), ili pak da se prilikom slanja, odnosno iniciranja sendfax prosledi samo taj attachement a ne i *.txt i *.html komponenta

Imanjiću u vidu da o perl-u nezma ništa, molio bih nekoga da mi pomogne oko ovoga.