Есть ли какой-либо фильтр, который позволил бы мне также иметь синопсис (предварительный просмотр) тела простого или html-текста в заголовке письма? Подобно SpamAssassin для спам-писем (он вставляет заголовок X-Spam-Report с разделом предварительного просмотра содержимого), но более гибкий / настраиваемый и для всех типов писем, не только для спама.
Я хочу отображать список сообщений в стиле Gmail, чтобы за темой следовала первая строка тела текста (в случае, если тело является HTML, эта текстовая строка должна быть исключена из HTML-тегов и т. Д.). Хотя это можно реализовать с помощью ряда довольно сложных запросов IMAP, я бы предпочел сделать это простым, например, получить значение заголовка.
Или, может быть, для этого можно настроить сам spamassassin?
Если вы можете настроить SpamAssassin так, чтобы он помещал предварительный просмотр в его отчет о спаме, тогда используйте ACL exim система, чтобы превью вставлять в каждое сообщение, а не только в спам. Под этим я подразумеваю, что не помещайте отчет на основе оценки, помещайте отчет в каждое сообщение и только ОТКЛОНЯТЬ , если оценка превышает ваш максимальный порог. Вот пример того, как я это делаю:
# Always add X-Spam-Score and X-Spam-Report headers
# using SA system-wide settings (user "exim")
# no matter if over threshold or not.
warn condition = ${if >{$message_size}{500K}{no}{yes}}
!authenticated = *
spam = exim:true
add_header = X-Spam-Score: $spam_score
add_header = X-Spam-Report: $spam_report
message = X-Spam-Score: $spam_score\n\
X-Spam-Report: $spam_report
# Add X-Spam-Flag if spam is over system-wide threshold
warn condition = ${if >{$message_size}{500K}{no}{yes}}
!authenticated = *
message = X-Spam-Flag: Yes
spam = exim
add_header = X-Spam-Flag: Yes
# Reject spams with score over 6
deny condition = ${if >{$message_size}{500K}{no}{yes}}
!authenticated = *
message = This message scored $spam_score points. Rejected.
spam = exim:true
condition = ${if >{$spam_score_int}{60}{1}{0}}
В вашем случае вам нужно добавить флаг отображения _ PREVIEW _ в свой local.cf, чтобы создать заголовок с именем X-Spam-Content-Preview:
add_header all Content-Preview _PREVIEW_
Затем настройте свой приложение для поиска и отображения этого заголовка.
помещайте отчет в каждое сообщение и только ОТКЛОНЯТЬ , если оценка превышает ваш максимальный порог. Вот пример того, как я это делаю: # Always add X-Spam-Score and X-Spam-Report headers
# using SA system-wide settings (user "exim")
# no matter if over threshold or not.
warn condition = ${if >{$message_size}{500K}{no}{yes}}
!authenticated = *
spam = exim:true
add_header = X-Spam-Score: $spam_score
add_header = X-Spam-Report: $spam_report
message = X-Spam-Score: $spam_score\n\
X-Spam-Report: $spam_report
# Add X-Spam-Flag if spam is over system-wide threshold
warn condition = ${if >{$message_size}{500K}{no}{yes}}
!authenticated = *
message = X-Spam-Flag: Yes
spam = exim
add_header = X-Spam-Flag: Yes
# Reject spams with score over 6
deny condition = ${if >{$message_size}{500K}{no}{yes}}
!authenticated = *
message = This message scored $spam_score points. Rejected.
spam = exim:true
condition = ${if >{$spam_score_int}{60}{1}{0}}
В вашем случае вам нужно добавить флаг отображения _ PREVIEW _ в свой local.cf, чтобы создать заголовок с именем X-Spam-Content-Preview:
add_header all Content-Preview _PREVIEW_
Затем настройте свой приложение для поиска и отображения этого заголовка.
помещайте отчет в каждое сообщение и только ОТКЛОНЯТЬ , если оценка превышает ваш максимальный порог. Вот пример того, как я это делаю: # Always add X-Spam-Score and X-Spam-Report headers
# using SA system-wide settings (user "exim")
# no matter if over threshold or not.
warn condition = ${if >{$message_size}{500K}{no}{yes}}
!authenticated = *
spam = exim:true
add_header = X-Spam-Score: $spam_score
add_header = X-Spam-Report: $spam_report
message = X-Spam-Score: $spam_score\n\
X-Spam-Report: $spam_report
# Add X-Spam-Flag if spam is over system-wide threshold
warn condition = ${if >{$message_size}{500K}{no}{yes}}
!authenticated = *
message = X-Spam-Flag: Yes
spam = exim
add_header = X-Spam-Flag: Yes
# Reject spams with score over 6
deny condition = ${if >{$message_size}{500K}{no}{yes}}
!authenticated = *
message = This message scored $spam_score points. Rejected.
spam = exim:true
condition = ${if >{$spam_score_int}{60}{1}{0}}
В вашем случае вам нужно добавить флаг отображения _ PREVIEW _ в свой local.cf, чтобы создать заголовок с именем X-Spam-Content-Preview:
add_header all Content-Preview _PREVIEW_
Затем настройте свой приложение для поиска и отображения этого заголовка.