我目前有一个如下所示的筛过滤器:
require ["variables", "envelope", "fileinto", "vnd.dovecot.filter", "subaddress"];
if envelope :matches "to" "*" {
set :lower "my_recipient" "${1}";
filter ".." "${my_recipient}";
fileinto "INBOX";
}
这很好用。但是我的过滤器当前无法正确处理子地址,例如:[电子邮件保护]
所以我想将my_recipient
变量设置为[电子邮件保护]为了保证滤波器正常工作,即使信封设置为[电子邮件保护]
我已经阅读过子地址文档,我知道如何获取user
部分或domain
部分,但不知道如何获取不包含detail
部分的完整地址(包括域名)。我该如何实现呢?
答案1
以下作品
if envelope :user :matches "to" "*" {
set :lower "user" "${1}";
if envelope :domain :matches "to" "*" {
set :lower "domain" "${1}";
set "my_recipient" "${user}@${domain}";
filter ".." "${my_recipient}";
fileinto "INBOX";
}
}