是否可以编写类似 Sieve 规则
if envelope :detail "to" "$x" {
fileinto "inbox.$x";
}
但对于所有可能的情况$x
?例如,如果用户创建了一个文件夹,inbox.foo
我希望邮件user+foo@domain
自动发送到该文件夹。规格似乎不支持这一点。
答案1
事实证明,变量扩展是为了。
require "variables";
if envelope :detail :matches "to" "*" {
fileinto "inbox.${1}";
}
答案2
对我来说,这个有效:
require ["variables", "fileinto", "envelope", "subaddress", "mailbox"];
if envelope :matches :detail "to" "*" {
# you can prefix with INBOX/ or INBOX. if necessary
# remove :create if you want to permit only existing mailboxes
fileinto :create "${1}";
}
查看此处的示例: https://wiki.dovecot.org/Pigeonhole/Sieve/Examples
显然这也只是一个可以开启的选项:
lmtp_save_to_detail_mailbox=yes