我希望在使用Apache Camel从imap端点读取时避免垃圾邮件。
我的端点以这种方式配置:
def camelContext = new DefaultCamelContext()
camelContext.addRoutes(new RouteBuilder() {
def void configure() {
from("imap://localhost:3143?username=myuserame&password=mypassword"
+ "&delete=false"
+ "&unseen=true"
+ "&consumer.delay=600"
+ "&fetchSize=10"
+ "&maxMessagesPerPoll=10").process{ exchange ->
...
}
我想添加searchTerm
,以避免在主题中标记为*****SPAM****
或标题为X-Spam-Flag: YES
或X-Spam-Status: YES
的消息。
我还想将一些电子邮件地址列入黑名单,但我想这可以在阅读完邮件后执行此操作。
答案 0 :(得分:0)
是的,您需要实现一个自定义avax.mail.search.SearchTerm
类,您可以在其中过滤邮件消息。您可以在以下网址找到更多详细信息:http://camel.apache.org/mail.html如何使用自定义搜索字词类。您也可以查看驼峰邮件的单元测试源代码。
这些垃圾邮件标题是标准的吗?我问我们可以考虑添加一个支票OOTB,如果他们有一个垃圾邮件标题,可以跳过这些邮件。