Как изменить тему сообщения в правиле Sieve?

Как изменить тему сообщения в правиле Sieve?

Я подписан на список рассылки, который не идентифицирует себя в теме писем, отправляемых через список.
Я хотел бы, чтобы письма из списка доставлялись в мой основной почтовый ящик, но при этом иметь возможность с первого взгляда идентифицировать их как приходящие из списка.

Мой 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).
}

Связанный контент