2011-06-11 53 views
4

我正在寻找一种方法来识别自动生成的邮件,如Outlook的“不在办公室”回复。Apache Camel邮件识别自动生成的邮件

我偶然发现了一个名为“自动提交”的头文件,该头文件应该可以实现,但Camel似乎并未在“消息”对象中提供此头文件。参考:http://www.iana.org/assignments/auto-submitted-keywords/auto-submitted-keywords.xml

是否可以知道消息是自动生成还是人为生成的?

+0

嗯骆驼邮件确实传播所有的MailMessage头到骆驼消息,至少在源代码:)。我想知道你是否能看到其他类型的头文件? – 2011-06-13 07:28:23

+0

我试图去看看里面的标题,但我找不到任何可以告诉我,如果消息是自动生成或没有。 – refaelos 2011-06-15 10:12:37

+0

退房http://stackoverflow.com/a/301958/8479 – Rory 2016-02-27 00:23:02

回答

5

我不知道阿帕奇骆驼,但我可以告诉你,没有简单和安全的方式来检测一般的自动电子邮件。像自动提交的头像是一个指标,但不幸的是很多自动脚本不会添加它们。我曾经不得不写一个不应该发送ooo回复到任何自动消息(邮件列表,垃圾邮件,通讯等)的外出实现。以下是我终于想出了,也许这可以帮助你的情况,以及:

发件人地址的正则表达式指示自动发件人:

  • “^业主 - ”
  • “^请求 - “
  • ”-request @“
  • ”反弹* @“
  • ”-confirm @“
  • ” -errors @ “
  • ”^否[ - ]回复“
  • ”^ donotreply“
  • ”^ @邮政局长“
  • ”^邮件[-_]守护@“
  • ”^ @邮件“
  • “^群发@”
  • “^ majordom [O]?@”
  • “^邮递员@”
  • “^没有人@”
  • “^反弹”
  • “^ WWW(-data)?@”
  • “^ @的MDaemon”
  • “^ @根”
  • “^新闻(字母)?@“
  • ‘^站长@’(角色地址 - 可能不是你的情况的良好指标)
  • ‘^管理员@’(角色地址 - 可能不是你的情况的良好指标)
  • ” ^支持@”(角色地址 - 可能不是你的情况的良好指标)

如果他们存在指示自动发送的邮件:

  • 列表帮助
  • 列表退订
  • 列表订阅
  • 列表所有者
  • 列表后
  • 列表归档
  • 列表-ID
  • 邮件列表
  • X -facebook-notify
  • x-mailing-list
  • x-cron-env
  • X-自动应答
  • X-易趣mailtracker

指示自动发送的邮件,如果他们有一个特殊值

  • 'X-Spam-Flag标': '是'
  • 'x-spam-status':'是'
  • 'X-Spam-Flag2':'是'
  • '优先': '(散装|列表|垃圾)'
  • 'X-优先': '(散装|列表|垃圾)'
  • 'X-梭子鱼垃圾邮件状态': '是'
  • 'X-DSPAM-结果': '(垃圾邮件| BL [AO] cklisted)'
  • 'X - 梅勒': '^邮件$'
  • '自动提交': '自动回复'
+0

我会检查出来的。非常感谢 ! – refaelos 2011-06-17 18:39:19

+0

我只是试图在自动生成的outlook中寻找任何这些头文件,并且不存在... – refaelos 2011-06-18 18:52:33

+1

是的,不幸的是,outlook ooo assistant没有添加任何这些头文件。这就是为什么外出实施通常还有一个规则,即每个发件人和每天只发送一个回复,以避免互相泛滥。 http://stackoverflow.com/questions/1027395/detecting-outlook-autoreply-out-of-office-emails – Gryphius 2011-06-18 20:07:18