我想将主题为“您的包裹已到达”的电子邮件重定向到本地电子邮件别名packages@example.com。为此,我创建了以下路由器:
redirect_packages:
debug_print = "R: redirect_packages with subject $header_subject"
driver = redirect
domains = +local_domains
condition = ${if eq {$header_subject} {Your Parcel has Arrived.} {true} }
data = packages@${domain}
我无法使条件结果为真。调试输出为:
--------> redirect_packages router <--------
local_part=me domain=example.com
checking domains
cached yes match for +local_domains
cached lookup data = example.com
example.com in "+local_domains"? yes (matched "+local_domains" - cached)
-considering: R: redirect_packages with subject $header_subject
----expanding: R: redirect_packages with subject $header_subject
-------result: R: redirect_packages with subject Your Parcel has Arrived.
----(tainted)
R: redirect_packages with subject Your Parcel has Arrived.
checking "condition" "${if eq {$header_subject} {Your Parcel has Arrived.} {true} }"...
-considering: ${if eq {$header_subject} {Your Parcel has Arrived.} {true} }
-considering: $header_subject} {Your Parcel has Arrived.} {true} }
---expanding: $header_subject} {Your Parcel has Arrived.
-------result: {Your Parcel has Arrived.
-considering: true} }
---expanding: true
-------result: true
---condition: eq {$header_subject} {Your Parcel has Arrived.} {true}
-----result: false
---expanding: ${if eq {$header_subject} {Your Parcel has Arrived.} {true} }
-------result:
redirect_packages router skipped: condition failure
我看不出哪里出了问题。调试消息中正确扩展了 $header_subject。但是,在条件下它无法与看起来相同的文本匹配。
条件扩展的方式看起来也不对,就好像它缺少 $header_subject 后的右括号。
有人能解释一下发生了什么情况以及为什么结果不正确吗?