В настоящее время я фильтрую входящие письма по .forward следующим образом:
if $header_to: matches "(office|info)@domain.com" then
save Maildir/.office/
endif
if $header_to: matches "whatever@domain.com" then
save Maildir/.whatever/
endif
Итак, у меня есть почтовый аккаунт, который получает письма на разные адреса. По сути, я хочу, чтобы они приземлялись в разных подкаталогах в зависимости от адреса, на который было отправлено письмо.
Это работает для писем, в которых получатель находится в to
-заголовке, но не работает, если получатель был в bcc
.
Когда получено письмо, отправленное с заголовком bcc
, только заголовок envelope-to
соответствует реальному адресу, на который доставляется почта, и упоминается в заголовке Received
Envelope-to: office@domain.com
Received: from mail.other.domain ([1.1.1.1])
by mail.domain.com with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32)
(Exim 4.71)
(envelope-from <sender@other.domain>)
id 1RO5xc-0001TF-Qj
for office@domain.com; Wed, 09 Nov 2011 12:04:57 +0100
...
To: can_be_anything@whatever.com
Я уже пробовал:
if $header_envelope-to: matches ...
но это не работает, письма не фильтруются вообще, даже если они отправляются с To
-заголовком (похоже, что Envelope-To
-заголовок недоступен в forward-файлах). Должен ли я попытаться проанализировать (несколько) Received
-headers?
Как я могу переместить письма в подкаталог получателя на основе реального адреса получателя?