Hallo,
bin gerade dabei den Mail::Bulkmailer zu füttern. Nahrung bekommt er aus einem HTML-Formular, das eine Mail an ein Alias schickt, wo der dann dahinter lauert. Im Mailheader versteckt sitzt ein X-NewsletterID, welches dem Bulkmailer sagt, welche Abonnenten er aus der Datenbank suchen soll. Soweit die Theorie.
7 my $MAIL_INPUT = "-"; 8 my $message; 9 my $line; 10 11 # Mail einlesen 12 open MAILIN, "<$MAIL_INPUT" or 13 die "Cannot open $MAIL_INPUT"; 14 my @data = <MAILIN>; 15 close MAILIN; 16 17 # Mail analysieren 18 # Newsletterid aus Header fischen 19 my $mail = Mail::Internet->new(@data); 20 my $header = $mail->head(); 21 $header->print; # zum Test 22 23 my $newsletter_id = $header->get('X-NewsletterID'); 24 #my $newsletter_id = $header->get('Received'); 25 chomp $newsletter_id; 26 if(!$newsletter_id){ 27 print ("keine Newsletterid Übergeben...\n"); 28 }
.... Aber nur die ersten beiden Headerzeilen werden erkannt lt. $header->print;
cat example_mail.txt | test_mail.pl
Return-Path: jenspuru@web.de Received: from localhost (localhost [127.0.0.1]) by gate2.zuhause.net (8.11.6/8.10.2/SuSE Linux 8.10.0-0.3) with ESMTP id Use of uninitialized value in scalar chomp at ./test_mail.pl line 25. keine Newsletterid Übergeben...
Derweil sieht der Header so aus:
Received: from localhost (localhost [127.0.0.1]) by gate2.zuhause.net (8.11.6/8.10.2/SuSE Linux 8.10.0-0.3) with ESMTP id g9RDcdZ04093 for pummel@localhost; Sun, 27 Oct 2002 13:38:39 GMT Received: from localhost by localhost (AvMailGate-2.0.1.1) id 04082-3EADC78D; Sun, 27 Oct 2002 13:37:57 +0000 ....[noch paar Recieved-Zeilen]... Envelope-to: pummel@pummel.de Delivery-date: Sun, 27 Oct 2002 11:14:37 +0100 Message-Id: 200210271333.g9RDXnZ04061@gate2.zuhause.net Date: Sun, 27 Oct 2002 11:04:07 +0100 To: pummel@pummel.de From: "Root User" jenspuru@web.de Subject: test X-Priority: 3 X-Mailer: phpmailer [version 1.62] X-NewsletterID: 1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit ....
Die Frage ist nun, warum wird der Header nicht komplett erkannt?? Ich habe die Man-Pages rauf- und runtergelesen und bin auf nix gestossen...Hat einer von euch schon mal sowas gemacht??
Jens