I'm using Exim 4.69, and I'm trying to set up Vacation Autoreplies the <a
href="http://wiki.exim.org/EximAutoReply";>nice way</a>, but I have one
important difference in my configuration.

We're using Postfix Admin for our user administration website, which will
allow our customers to do their vacation messages themselves. Postfix
Admin stores the Vacation message in MySQL, not in a .vacation file, so
I've modified the code from Example 2 of the above site.

The trouble I'm having is that while mail to the user with the vacation
message ([email protected]) gets delivered to his mailbox, the sender
([email protected]) gets the following message back:

A message that you sent could not be delivered to one or more of its
recipients. This is a permanent error. The following address(es) failed:

  gromm#[email protected]
    (ultimately generated from [email protected])
    Unrouteable address


Here is my Router:

uservacation:
  driver = accept
#  domains = +local_domains
  domains = ${lookup mysql { \
        SELECT domain FROM vacation \
        WHERE email='${quote_mysql:$local_p...@$domain}' \
        AND active=1 \
        }{$value}}

#  domains = mocku.edu
#  domains = ${lookup mysql{MYSQL_VACATIONEMAIL}}
  condition = ${if or { \
    { match {$h_precedence:} {(?i)junk|bulk|list} } \
    { eq {$sender_address} {} } \
    { def:header_X-Cron-Env: } \
    { def:header_Auto-Submitted: } \
    { def:header_List-Id: } \
    { def:header_List-Help: } \
    { def:header_List-Unsubscribe:} \
    { def:header_List-Subscribe: } \
    { def:header_List-Owner: } \
    { def:header_List-Post: } \
    { def:header_List-Archive: } \
    { def:header_Autorespond: } \
    { def:header_X-Autoresponse: } \
    { def:header_X-Autoreply-From: } \
    { def:header_X-eBay-MailTracker: } \
    { def:header_X-MaxCode-Template: } \
    { match {$h_X-Auto-Response-Suppress: } {OOF} } \
    { match {$h_X-OS:} {HP Onboard Administrator} } \
    { match {$h_X-MimeOLE:} {\N^Produced By phpBB2$\N} } \
    { match {$h_Subject:} {\N^Yahoo! Auto Response$\N} } \
    { match {$h_Subject:} {\N^ezmlm warning$\N} } \
    { match {$h_X-FC-MachineGenerated:} {true} } \
    { match {$message_body} {\N^Your \"cron\" job on\N} } \
    { match {$h_Subject:} {\N^Out of Office\N} } \
    { match {$h_Subject:} {\N^Auto-Reply:\N} } \
    { match {$h_Subject:} {\N^Autoresponse:\N} } \
    { match {$h_Subject:} {\N(Auto Reply)$\N} } \
    { match {$h_Subject:} {\N(Out of Office)$\N} } \
    { match {$h_Subject:} {\Nis out of the office.$\N} } \
    { match {$h_From:} {\N(via the vacation program)\N } } \
    { match {$h_X-Spam-Flag:} {\N^yes\N} } \
    } \
                       } {no} {yes} \
               }

#  user = ${lc:$local_part}
#  senders = !+noautoreply_senders
  transport = vacation_transport
  unseen
  no_expn
  no_verify


And here is my Transport:

vacation_transport:
  driver = autoreply
  once_repeat = 7d
  once = /var/log/exim4/vacation/${local_pa...@${domain}.once
  log = /var/log/exim4/vacation/${local_pa...@${domain}.log

  # Errors-To: is deprecated
  # There are arguments over whether this should send to the SMTP sender, or
  # to a From:, Reply-To: or Resent-From: header
  to = "${if def:h_Errors-To: {$h_Errors-To:} {$sender_address}}"
  from = ${local_pa...@${domain}
  subject = "Re: $h_Subject"
  text = ${lookup mysql {MYSQL_VACATIONMESSAGE} {$value} fail }
  return_message
  user = mail





-- 
## List details at http://lists.exim.org/mailman/listinfo/exim-users 
## Exim details at http://www.exim.org/
## Please use the Wiki with this list - http://wiki.exim.org/

Reply via email to