Procmail+Postfix vacation message issues
Hi
I am trying to setup a vacation message using procmail with postfix. I have added the following script to .promailrc : # Uncomment the lines below if you need log output for testing. # LOGFILE=/tmp/procmailvacation.log VERBOSE=on # vim: ft=procmail # User-managed vacation recipe for procmail # Written by Jason Thaxter # (http://www.google.com/search?q=jason+thaxter) # * Include this file in the procmail file. # * Set $VACATION_PASSWORD. (for security, this is mandatory) # * Define $VACATION_SENDER in your procmail recipe: it will be "from" this # address. # * E-mail a message with $VACATION_PASSWORD and $VACATION_ON in the subject # line. The body of the message becomes the vacation message. $VACATION_ON # can be set prior to the INCLUDERC, but it defaults to "vacation on". # * To turn it off, e-mail a message with $VACATION_PASSWORD and $VACATION_OFF # in the subject line. Likewise, $VACATION_OFF defaults to "vacation off". # Note that you probably want this to execute *after* any mailing list or spam # delivery recipes. You can set $VACATION_SKIP to disable vacation processing # if it's inconvenient to skip this recipe. # ----------------------------------------------------------------------------- # Configurable variables: These variables allow you to use this vacation recipe # as an include and customize it from your main procmail file. # # lockfile: VACATION_LOCK=$HOME/${VACATION_LOCK:-".vacation$LOCKEXT"} # cache file: VACATION_CACHE=$HOME/${VACATION_CACHE:-".vacation_cache"} # cache size: VACATION_CACHE_SZ=${VACATION_CACHE_SZ:-8192} # message file VACATION_MSG=$HOME/${VACATION_MSG:-".vacation_mesg"} # what to use as the xloop header HOSTNAME=${HOSTNAME:-`hostname`} VACATION_XLOOP=${VACATION_XLOOP:-"$LOGNAME@$HOSTNAME"} # base token for default $VACATION_ON and $VACATION_OFF # so you could set this and not those individually VACATION_COOKIE=${VACATION_COOKIE:-"vacation"} VACATION_ON=${VACATION_ON:-"$VACATION_COOKIE on"} VACATION_OFF=${VACATION_OFF:-"$VACATION_COOKIE off"} # #Change these variables # VACATION_PASSWORD=password VACATION_DOMAIN_NAME=ccls.edu VACATION_SENDER=$LOGNAME@$VACATION_DOMAIN_NAME VACATION_SENDMAILFROM=${VACATION_SENDMAILFROM:-"-f$VACATION_SENDER"} VACATION_SENDMAILFLAGS="-oi -t $VACATION_SENDMAILFROM" # ----------------------------------------------------------------------------- SENDMAIL_CMD="$SENDMAIL $VACATION_SENDMAILFLAGS" SHELL=/bin/sh # check if we should send vacation message, add user to cache :0 Whc: $VACATION_LOCK # if i haven't been instructed to skip processing * ? test -z $VACATION_SKIP # if i have a vacation message file * ? test -f $VACATION_MSG # and the message is not from a daemon or mailer * !^FROM_DAEMON * !^FROM_MAILER # not declared spam by spamassassin * !^X-Spam-Flag: YES # not discernably in a mailing list * !^List- * !^(Mailing-List|Approved-By|BestServHost|Resent-(Message-ID|Sender)): * !^X-[^:]*-List: * !^X-(Sent-To|(Listprocessor|Mailman)-Version): # and not x-loop * !^X-Loop: $VACATION_XLOOP # add it to the cache | formail -rD $VACATION_CACHE_SZ $VACATION_CACHE :0 ehc # if the name was not in the cache # if we can find who we're sending it to # and who we are sending this "From" * ? test -n ${VACATION_MSG_SEND_TO} * ? test -n ${VACATION_SENDER} *$ !^From:.*$VACATION_SENDER | (formail -r \ -I"Precedence: junk" \ -A"From: $VACATION_SENDER" \ -A"X-Loop: $VACATION_XLOOP"; \ cat $VACATION_MSG ) | \ $SENDMAIL_CMD # Add/remove vacation message :0 # First make sure that the sender has # the correct username * ^TO_\/[-\.a-z_]+@ *$ ^From:.*$\MATCH # the correct email domain *$ ^From:.*$\VACATION_DOMAIN_NAME # only do this if we have a password set * ? test -n $VACATION_PASSWORD # and it's in the subject line * $^Subject:.*${VACATION_PASSWORD} { # VACATION ON # if subject line matches magic cookie for ON: :0 * $^Subject:.*${VACATION_ON} { # pipe the body into the vacation message file :0c:$VACATION_LOCK | formail -I "" > $VACATION_MSG # add message to the body :0f | cat - ; \ echo; \ echo '---------- VACATION -----------------'; \ echo 'The above text was installed as your vacation message' } # VACATION OFF # if subject line matches magic cookie for OFF: # delete the vacation file and notify :0f * $^Subject:.*${VACATION_OFF} | cat -; \ echo '---------- VACATION -----------------'; \ echo 'Removing message and cache: '; \ rm -vf $VACATION_MSG; \ rm -vf $VACATION_CACHE; \ echo ; \ echo "Removed vacation message." } I am getting the following output from procmailvacation.log: lost+found orbit-root procmailvacation.log [root@puny tmp]# more procmailvacation.log procmail: [19038] Wed Jul 26 10:06:04 2006 procmail: Assigning "VACATION_LOCK=/home/spamtest1/.vacation.lock" procmail: Assigning "VACATION_CACHE=/home/spamtest1/.vacation_cache" procmail: Assigning "VACATION_CACHE_SZ=8192" procmail: Assigning "VACATION_MSG=/home/spamtest1/.vacation_mesg" procmail: Executing "hostname" procmail: Assigning "HOSTNAME=puny.ccls.edu" procmail: Assigning "VACATION_XLOOP=spamtest1@puny.ccls.edu" procmail: Assigning "VACATION_COOKIE=vacation" procmail: Assigning "VACATION_ON=vacation on" procmail: Assigning "VACATION_OFF=vacation off" procmail: Assigning "VACATION_PASSWORD=password" procmail: Assigning "VACATION_DOMAIN_NAME=ccls.edu" procmail: Assigning "VACATION_SENDER=spamtest1@ccls.edu" procmail: Assigning "VACATION_SENDMAILFROM=-fspamtest1@ccls.edu" procmail: Assigning "VACATION_SENDMAILFLAGS=-oi -t -fspamtest1@ccls.edu" procmail: Assigning "SENDMAIL_CMD=/usr/sbin/sendmail -oi -t -fspamtest1@ccls.edu" procmail: Assigning "SHELL=/bin/sh" procmail: Executing " test -z $VACATION_SKIP" procmail: Match on " test -z $VACATION_SKIP" procmail: Executing " test -f $VACATION_MSG" procmail: Non-zero exitcode (1) from " test -f $VACATION_MSG" procmail: No match on " test -f $VACATION_MSG" procmail: No match on "(^((Original-)?(Resent-)?(To|Cc|Bcc)|(X-Envelope|Apparently(-Resent)?)-To):(.*[^-a-zA-Z0-9_.])?)\/[-\.a-z_]+@" procmail: Bypassed locking "/var/spool/mail/spamtest1.lock" procmail: Assigning "LASTFOLDER=/var/spool/mail/spamtest1" procmail: Opening "/var/spool/mail/spamtest1" procmail: Acquiring kernel-lock procmail: Notified comsat: "spamtest1@11487:/var/spool/mail/spamtest1" From spamtest1@ccls.edu Wed Jul 26 10:06:03 2006 Subject: password vacation on Folder: /var/spool/mail/spamtest1 Unfortunately I cannot see an obvious error, or perhaps that is because I dont know how to read them that well. Any help will be much appreciated. |
help please help
|
come on guys - please help me, iam desperate
|
procmail auto reply script not working-need help understanding log
if this post is in the wrong place can someone please tell me so i will go elsewhere.
If i smell please can someone tell so i can put in some nice smelling spray If you know the answer to my problem please can you post it. If you know but dont want to tell me please can you let me know. If any other reason please let me know. Thank you |
need to setup vacatione message
Hi people
This is the second time iam trying to pursue an answer to my problem and I hope someone can help: I need to setup auto-reply message for staff members when they are on leave. I wish for them to be able to set it up themselves and that they write out their own message. My setup is postfix and procmail and spamassassin. I hope someone can help, as i have been trying to resolve this for some weeks. Regards and thank you in advance. |
Have you looked at vacation?
http://freshmeat.net/projects/vacation/ http://www.ayradyss.org/programs/current.html#vacation |
Thanks for the reply, from what ive read it seems the sort of this that i need. But i dont think this will allow the individual Windows user to setup their own vacation message. Users do not have any access to shell.
|
All times are GMT -5. The time now is 09:04 AM. |