筛选过滤器从子地址中删除细节部分

筛选过滤器从子地址中删除细节部分

我目前有一个如下所示的筛过滤器:

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";
    }
}

相关内容