Страница 1 из 1

Auto reply (vacation) \ Атоматическом уведомление

Добавлено: 2008-08-17 18:36:16
neyro
Поправил данное сообщение т.к. раскурил все самостоятельно.
Итак...
Автоматический ответ если юзер в отпуске.
Пример для эксима с виртуальным юзерам в БД Mysql (синий текст-то, что нужно добавить).
В роутах после проверки на спам, перед основным роутом добавляем(порядок роутов важен):
.............................................
transport = mysql_spam_delivery
no_more

vacation_autoreply:
driver = accept
domains = +local_domains
condition = ${lookup mysql{SELECT active FROM vacation WHERE \
domain='${quote_mysql:$domain}' AND \
email='${quote_mysql:$local_part@$domain}' AND \
active='1'}{true}{false}}
senders = " ! ^.*-request@.*:\
! ^owner-.*@.*:\
! ^postmaster@.*:\
! ^listmaster@.*:\
! ^mailer-daemon@.*\
! ^root@.*\
! ^noreply@.*"
no_expn
no_verify
transport = vacation_autoreply
unseen


mysqluser:
driver = accept
domains = +local_domains
........................
Далее в транспортах (здесь порядок значения не имеет т.к. всегда выбирается только 1 транспорт):
vacation_autoreply:
driver = autoreply
to = $sender_address
from = "$local_part@$domain"
once = /var/mail/exim/vacation/$local_part.db
once_repeat = 7d
subject = Re: =?UTF-8?B?KNCw0LLRgtC+LdC+0YLQstC10YIpINCvINCyINC+0YLQv9GD0YE=?= \
=?UTF-8?B?0LrQtSBcIChhdXRvcmVwbHkpIEkgYW0gb24gdmFjYXRpb24=?=
text = "\
Здравствуйте $h_from\n\n\
Это - автоматический ответ на Ваше письмо $original_local_part@$original_domain \
Не стесняйтесь посылать дополнительную\n\
почту, поскольку это уведомление высылается 1 раз каждые 7 дней.\n\n\
English version below\n\n\
Dear $h_from\n\n\
This is an automatic reply to Your message for $original_local_part@$original_domain \
Feel free to send additional\n\
mail, as only this one notice will be generated once every 7 \
days."
Дамп mysql таблицы:
CREATE TABLE vacation (
email varchar(255) NOT NULL default '',
subject varchar(255) NOT NULL default '',
body text NOT NULL,
cache text NOT NULL,
domain varchar(255) NOT NULL default '',
created datetime NOT NULL default '0000-00-00 00:00:00',
active tinyint(4) NOT NULL default '1',
PRIMARY KEY (email),
KEY email (email)
) TYPE=MyISAM COMMENT='Postfix Admin - Virtual Vacation';
Хеадер предварительно закодирован в UTF-8 поэтому проблем с отображением не будет.
Ответ высылается 1 раз в 7 дней т.е. если один и тот же юзер отправит 100 мессаг нашему юзеру то он получит только 1 авто ответ, следующий - через 7 дней ( если пошлет ему письмо еще раз) и т.д.. Опция которая регулирует через сколько слать ответ - once_repeat = 7d
Не забываем создать папочку /var/mail/exim/vacation и дать на нее права юзеру от которого работает эксим, так же формат создания файла данных можно изменить на user@domain.ru -
once = /var/mail/exim/vacation/$local_part@$domain.db
Пример ответа который получит юзер:
Заголовок: Re: (авто-ответ) Я в отпуске \ (autoreply) I am on vacation
Само письмо:
Здравствуйте xxx <xxx@gmail.com>

Это - автоматический ответ на Ваше письмо xxx@xxx.ru Не стесняйтесь посылать дополнительную
почту, поскольку это уведомление высылается 1 раз каждые 7 дней.

English version below

Dear xxx <xxx@gmail.com>

This is an automatic reply to Your message for xxx@xxx.ru Feel free to send additional
mail, as only this one notice will be generated once every 7 days.

Re: Auto reply (vacation) \ Атоматическом уведомление

Добавлено: 2008-10-29 23:50:42
Alex Keda
а кодирвовка теле русском - какая?
почтовые клиенты её нормально раскуривают?

Re: Auto reply (vacation) \ Атоматическом уведомление

Добавлено: 2008-10-30 12:55:03
neyro
Да, русские символы в теле сообщения эксим отправляет без проблем(проверял аутлуком и mozila thunderbird), а вот хеадер кракозябрами если его предварительно в utf-8 не преобразовать.

Re: Auto reply (vacation) \ Атоматическом уведомление

Добавлено: 2008-10-30 13:26:49
ProFTP
что всталвть в эту таблицу

Код: Выделить всё

 TABLE vacation (
body text NOT NULL,
cache text NOT NULL,
что эти 2 поля означают? в докуменатции postfixadmin нету, postfixadmin это вставляет?

и кстате никто не видел для postfix? как vacation включит чтобы не считалось спамом?