четверг, 16 июня 2011 г.

How To Automatically Add A Disclaimer To Outgoing Emails

Как автоматически добавить подпись ко всем отправляемым письмам.
Типовое решение altermime, входит в текущий debian/stable

Связка с exim4, в моем случае подпись добавляется выборочно.

1. создать дополнительный транспорт с фильтром:

remote_smtp_filter:
  driver = smtp
  transport_filter = /usr/bin/altermime --multipart-insert \
                     --disclaimer-html=/etc/exim4/disclaimer.htm
\
                    --disclaimer-b64=/etc/exim4/disclaimer.base64 \
                   --disclaimer=/etc/exim4//disclaimer.txt \
                   --input=- --force-for-bad-html --htmltoo --log-syslog


Теоретически "--disclaimer" не должен работать в связке с  --input=-, на практике нормально отрабатывает на ASCII письмах.

"--disclaimer-b64" работает на plain text non ASCII, т.е. все что на русском.

" --force-for-bad-html" спэшел фо Microsoft Outlook.
Последнему необходимо перегнать pst в utf8, иначе чудо не произойдет

С "--xheader" бреет: "Error: reading/writing from stdin/stdout not implemented for --xheader,--disclaimer, or --replace." Про disclaimer врет конечно, а с xheader реально обломал.

"--log-syslog" воткнуть обязательно, иначе будет играть в молчанку.

2. Поправить роутер:

dnslookup:
    driver = dnslookup
     domains = ! +local_domains : ! domain.ru
    transport = ${if eq {$sender_address}{xxxxx@domain.ru} \
                                      {remote_smtp_filter}{remote_smtp}}

ignore_target_hosts = 0.0.0.0 : 127.0.0.0/8
no_more

Комментариев нет: