/[cvs]/nfo/perl/scripts/dispatchmail/bin/mail-handler
ViewVC logotype

Annotation of /nfo/perl/scripts/dispatchmail/bin/mail-handler

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.1 - (hide annotations)
Wed Jan 22 17:54:35 2003 UTC (21 years, 5 months ago) by joko
Branch: MAIN
CVS Tags: HEAD
+ initial check-in - provided by janosch

1 joko 1.1 #!/usr/bin/perl
2    
3     use Mail::Audit;
4     use MIME::Lite;
5     #use MIME::Entity;
6     #use MIME::Head;
7     #use MIME::Parser;
8     use Data::Dumper;
9     #use MIME::Base64;
10     use File::Copy;
11    
12     my $mail = Mail::Audit->new;
13     my $from = $mail->from();
14     #study $from;
15     my $to = $mail->to();
16     my $cc = $mail->cc();
17     my $subject = $mail->subject();
18     chomp($from, $to, $cc, $subject);
19     my $body = $mail->body();
20     my $head = $mail->head();
21     my $user_path = "/home/janosch";
22    
23    
24     #SMS versand an Nummer im Subject nach dem Suchmuster "sms:0170123456 text"
25     if ($subject =~ /^sms:(\d+)\s(.*)/) {
26     $pathtoyaps = "/usr/bin/yaps";
27     $number = $1;
28     $subjecttoprint = $2;
29     $sms_txt = "You got e-mail from: $from orig_subject: $subject printed_subject: $subjecttoprint";
30     my $output = qx($pathtoyaps $number "$sms_txt");
31    
32     #Status-Mail an To: Address
33     my $message = MIME::Lite->new(
34     From =>'sms-gateway@localhost',
35     To =>"$to",
36     Subject =>"SMS to $number was send",
37     Data =>"$output\n"
38     );
39    
40     $message->send(); # UNIX-sendmail
41     }
42    
43     #Fax Versand an Nummer im Subject mit Txt,Pdf,Tiff-Attachment
44     if ($subject =~ /^fax:(\d+)\s(.*)/) {
45     $pathtofax = "/usr/bin/sendfax";
46     # $fax_cont = "fritz_pic.tif";
47     $fax_number = $1;
48     $fax_subject_to_print = $2;
49     $fax_txt = "You got Fax from: $from subject: $fax_subject_to_print";
50    
51     my $create_an_object = qx(touch ~/mail/fax/noerror);
52     my $delete_old_objects = qx(rm ~/mail/fax/*);
53     #print "$delete_old_objects\n";
54    
55     my $entity = $mail;
56     my $head_entity;
57     my $body_entity;
58    
59     my $current_entity;
60     my $i;
61     my $current_body;
62     my $current_head;
63     my $num_alt_parts = $entity->parts();
64     my $attachment_save_path;
65     my $plain_counter = "0";
66     my $pdf_counter = "0";
67     my $tiff_counter = "0";
68    
69     for ($i = 0; $i < $num_alt_parts; $i++) {
70    
71     $current_entity = $entity->parts($i);
72     $current_body = $current_entity->bodyhandle();
73    
74     $head_entity = $current_entity->head();
75     # print "MIME-Type: ", $head_entity->mime_type() , "\n";
76     $head_mime_type = $head_entity->mime_type();
77     #print "$attachment_save_path\n";
78     if ($head_mime_type =~ /text\/plain/) {
79     # print "$current_body\n";
80     # print "Current_body: \n" . Dumper($current_body);
81     my $tmp_body_path = $current_body->path;
82     # print "Dateigroesse: ", -s $tmp_body_path,"\n";
83     my $filegroesse = -s $tmp_body_path;
84     # print "$filegroesse\n";
85     if ($filegroesse > 1 ) {
86     $plain_attachment_save_path = "$user_path/mail/fax/fax$i.txt";
87     # print "Plain-Datei $plain_attachment_save_path wird gespeichert\n";
88     copy $current_body->path, $plain_attachment_save_path;
89     $plain_counter++;
90     }}
91     if ($head_mime_type =~ /image\/tiff/) {
92     $tiff_attachment_save_path = "$user_path/mail/fax/fax$i.tif";
93     # print "Tiff-Datei $tiff_attachment_save_path wird gespeichert\n";
94     # print "$head_entity\n";
95     # print "Head_entity: \n" . Dumper($head_entity);
96     copy $current_body->path, $tiff_attachment_save_path;
97     $tiff_counter++
98     }
99    
100     if ($head_mime_type =~ /application\/pdf/) {
101     $pdf_attachment_save_path = "$user_path/mail/fax/fax$i.pdf";
102     copy $current_body->path, $pdf_attachment_save_path;
103     $pdf_counter++
104     }
105    
106     }
107     # my $fax_output = `$pathtofax -n -d "$fax_number" ~/mail/fax/*`;
108    
109    
110    
111     #Status-Mail an To: Address
112     my $message = MIME::Lite->new(
113     From =>'fax-gateway@localhost',
114     To =>"$to",
115     Subject =>"Fax to $fax_number was send",
116     Type =>"text/plain",
117     # Data =>"Fax to $fax_number with subject: $fax_subject_to_print and $plain_counter Text-Attachment $tiff_counter Tiff-Attachment $pdf_counter Pdf-Attachment was sent Pages:$num_alt_parts\n"
118     Data =>"Fax to $fax_number with $plain_counter Text-Attachment, $tiff_counter Tiff-Attachment, $pdf_counter Pdf-Attachment was sent.\n"
119    
120     );
121    
122     $message->send(); # UNIX-sendmail
123     }
124     #my $copy_objects = qx(cp ~/mail/fax/* /usr/local/httpd/htdocs/dav/mail-cont/);
125     #print "$copy_objects\n";
126     $mail->accept;

MailToCvsAdmin">MailToCvsAdmin
ViewVC Help
Powered by ViewVC 1.1.26 RSS 2.0 feed