Запускать сито при перемещении сообщений

У меня работает сито для входящих сообщений. Я также хотел бы запустить sieve для доставленных сообщений, которые перемещаются между почтовыми ящиками на сервере (для одной и той же учетной записи).

Например. У меня есть почтовая история за десять или два года. У многих почтовых клиентов проблемы с почтовыми ящиками такого размера. Я хочу разбить его на годы / месяцы. Я знаю, что Thunderbird может делать это автоматически, но многие другие клиенты не могут. В частности, я не знаю ни одного почтового клиента iOS, который мог бы это сделать. В любом случае, я хотел бы переместить любое сообщение, которое входит в почтовый ящик архивов, для дальнейшей фильтрации в почтовый ящик Arthives //

Я использую Dovecot 2 в качестве своего IMAP-сервера. Как я могу это сделать?

0
задан 7 April 2019 в 14:37
1 ответ

Триггерные действия с командами IMAP - одно из основных приложений расширения IMAPSieve, предложенного в RFC6785 и реализованного в Dovecot 2.2.24+. Примерно так и должно быть:

  1. добавить imap_sieve к вашему голубятне mail_plugins
  2. добавить sieve_imapsieve к вашему голубятне sieve_plugins
  3. добавить ваше отфильтровать в imapsieve_mailbox1_before и отфильтровать действия IMAP в imapsieve_mailbox1_causes (COPY)
  4. добавить фильтр по почтовому ящику, так что вы перенаправляете сообщения только из определенных папок (наверное: все папки, которые имеют вложенные папки per-date-range)
  5. используют fileinto в вашем IMAP-триггированном скрипте для перемещения сообщения в другую папку, чем та, которую пользователь переместил/копировал в

Special cases /требуется дополнительное рассмотрение:

  • IMAP APPEND
  • является ли логика разделения папок архива разделяемой между входящей и вручную перемещённой почтой? разделять скрипт можно, но это может не стоить дополнительной сложности скрипта
1
ответ дан 4 December 2019 в 15:43

Теги

Похожие вопросы