Sendmail - Benachrichtigung beim eingehen von Mails
Hallo Liste, ich benutze Sendmail um Nachrichten aus dem LAN zwischenzuspeichern und dann zu verteilen. Jetzt möchte ich aber zwischen dem empfangen und dem zwischenspeichern in der Mailqueue die Nachrichten bearbeiten. Am besten mit einem Perl - Skript. Wie bringe ich mein Sendmail dazu, mein Skript zu starten wenn es eine Email aus dem LAN empfängt, bzw. wo muss das Skript die veränderten Daten hinschreiben ? Gruss Dominik --------------------------------------------------------------------- To unsubscribe, e-mail: suse-linux-unsubscribe@suse.com For additional commands, e-mail: suse-linux-help@suse.com
----- Original Message -----
From: "Dominik Steinbrecher"
Hallo Liste,
ich benutze Sendmail um Nachrichten aus dem LAN zwischenzuspeichern und dann zu verteilen. Jetzt möchte ich aber zwischen dem empfangen und dem zwischenspeichern in der Mailqueue die Nachrichten bearbeiten. Am besten mit einem Perl - Skript. Wie bringe ich mein Sendmail dazu, mein Skript zu starten wenn es eine Email aus dem LAN empfängt, bzw. wo muss das Skript die veränderten Daten hinschreiben ?
Ich hatte ein ähnliches Problem. Am besten geht's, wenn du alles queuest und dann ein wrapper-skript für sendmail -q schreibst, dass die mails bearbeitet und dann erst sendmail -q aufruft. -- Marco Dieckhoff --------------------------------------------------------------------- To unsubscribe, e-mail: suse-linux-unsubscribe@suse.com For additional commands, e-mail: suse-linux-help@suse.com
On Tue, 25 Apr 2000, Marco Dieckhoff wrote:
ich benutze Sendmail um Nachrichten aus dem LAN zwischenzuspeichern und dann zu verteilen. Jetzt möchte ich aber zwischen dem empfangen und dem zwischenspeichern in der Mailqueue die Nachrichten bearbeiten. Am einem Perl - Skript. Wie bringe ich mein Sendmail dazu, mein Skript zu starten wenn es eine aus dem LAN empfängt, bzw. wo muss das Skript die veränderten Daten hinschreiben ?
local delivery ? das sollte doch default "sofort" passieren ?
Ich hatte ein ähnliches Problem. Am besten geht's, wenn du alles queuest und dann ein wrapper-skript für sendmail -q schreibst, dass die mails bearbeitet und dann erst sendmail -q aufruft.
dafür nimmt man ETRN, oder bin ich nur schon wieder übermüdet ? Mit freundlichen Grüßen, Joerg Henner. -- LinuxHaus Stuttgart | Tel.: +49 (7 11) 2 85 19 05 Jörg Henner und Adrian Reyer, Datentechnik GbR | D2: +49 (1 72) 7 35 31 09 | Fax: +49 (7 11) 5 78 06 92 Linux, Netzwerke, Webhosting & Support | http://lihas.de --------------------------------------------------------------------- To unsubscribe, e-mail: suse-linux-unsubscribe@suse.com For additional commands, e-mail: suse-linux-help@suse.com
Dominik Steinbrecher schrieb am 25.04.2000 zum Thema "Sendmail - Benachrichtigung beim eingehen von Mails":
Wie bringe ich mein Sendmail dazu, mein Skript zu starten wenn es eine Email aus dem LAN empfängt, bzw. wo muss das Skript die veränderten Daten hinschreiben ?
Das müßte sich mit procmail machen lassen. Eingehende Mails werden in /var/spool/mail/<username> zwischengelagert, bis sie dann per POP oder lokal "entsorgt" werden. Da du die Mails quasi "on the fly" behandeln willst, kannst Du sie aus dem o.a. Verzeichnis auslesen, bearbeiten lassen und dort wieder hineinschreiben. So läuft das bei mir auch: procmail verarbeitet alle eingehenden Mails, und ich hole sie dann via POP mit meinem Mac ab... AFAIK kannst Du auch in einem procmail-Rezept ein Skript starten. Ich habe hier in der Liste u.a. folgende Variante zum Entfernen der Suse-Signatur "abgestaubt" (Dank an Carsten Schurig!!) Das ganze sieht so aus: [von Carsten Schurig, nur die Markierungen sind von mir] in procmail: :0 * ^X-Mailinglist.*suse-linux { :0 f | sed -f REs.sed <----- HIER! :0 f | sed -f signatur.sed <----- und HIER! :0 $MAILDIR/SuSEML/. } und in signatur.sed steht: # mehrere Leerzeilen zu einer zusammenfassen /^$/{ N /^\n$/D } /-\{69\}/d /To unsubscribe, e-mail: suse-linux-unsubscribe@suse.com/d /For additional commands, e-mail: suse-linux-help@suse.com/d [Zitatende, ging aber noch weiter, wenn Bedarf -> PM] Procmail benötigt aber noch ein paar Umgebungsvariablen, die Du am Anfang der .procmailrc definieren mußt. Das sieht bei mir so aus (ich habe eine globale /etc/procmailrc und hole die Mails mit menem Mac ab): PATH=/usr/bin:/bin:/usr/local/bin:. MAILDIR=~/Mail/ # You'd better make sure it exists DEFAULT=/var/spool/mail/$LOGNAME LOGFILE=/var/log/procmail.log LOCKFILE=/home/$LOGNAME/.procmail.lock Wenn Du noch mehr über procmail erfahren willst: man procmail, man procmailex ...oder eine Weile in der Liste mitlesen... hth, Christian PS: Danke nochmal an alle Mitlistlinge, die "Schuld" daran sind, daß ich jetzt zu solchen Fragen auch etwas schreiben kann!!! ;-) -- Made with a Macintosh... ChriSchmi@t-online.de http://home.t-online.de/home/chrischmi/ --------------------------------------------------------------------- To unsubscribe, e-mail: suse-linux-unsubscribe@suse.com For additional commands, e-mail: suse-linux-help@suse.com
participants (4)
-
ChriSchmi@t-online.de
-
jhe@lihas.de
-
linux@jwr.de
-
Steinbrecher@freenet.de