Я подписан на список рассылки, который не идентифицирует себя в теме писем, отправляемых через список.
Я хотел бы, чтобы письма из списка доставлялись в мой основной почтовый ящик, но при этом иметь возможность с первого взгляда идентифицировать их как приходящие из списка.
Мой MTA (Dovecot) поддерживает фильтры Sieve с большинствомобычные расширения.
Как добавить тег «[Foo-List]» к письмам из этого списка?
решение1
Похоже, не существует стандартизированного способа непосредственного добавления строки в начало или конец заголовка «Тема» сообщения, но есть обходной путь с использованием расширений editheaders
и variables
:
require "editheader";
require "variables";
# Match/select your message as you see fit
if header :contains "List-Id" ["<foo.lists.example.net>"]
{
# Match the entire subject ...
if header :matches "Subject" "*" {
# ... to get it in a match group that can then be stored in a variable:
set "subject" "${1}";
}
# We can't "replace" a header, but we can delete (all instances of) it and
# re-add (a single instance of) it:
deleteheader "Subject";
# Append/prepend as you see fit
addheader :last "Subject" "[Foo-List] ${subject}";
# Note that the header is added ":last" (so it won't appear before possible
# "Received" headers).
}