I don't know Apache Camel, but I can tell you that there is no simple and safe way to detect automated email messages in general. Headers like auto-submitted are an indicator, but unfortunately lots of automated scripts do not add them. I once had to write an out-of-office implementation that should not send ooo replies to any automated messages (mailing lists, spam, newsletters, etc.). Here is what I finally came up with, maybe this helps in your case as well:
Sender address regular expressions that indicate automated senders:
- "^owner-"
- "^request-"
- "-request@"
- "bounce.*@"
- "-confirm@"
- "-errors@"
- "^no[-]?reply"
- "^donotreply"
- "^postmaster@"
- "^mailer[-_]daemon@"
- "^mailer@"
- "^listserv@"
- "^majordom[o]?@"
- "^mailman@"
- "^nobody@"
- "^bounce"
- "^www(-data)?@"
- "^mdaemon@"
- "^root@"
- "^news(letter)?@"
- "^webmaster@" (role address - may not be a good indicator in your case)
- "^administrator@" (role address - may not be a good indicator in your case)
- "^support@" (role address - may not be a good indicator in your case)
Headers that indicate automated messages if they exist:
- list-help
- list-unsubscribe
- list-subscribe
- list-owner
- list-post
- list-archive
- list-id
- mailing-List
- x-facebook-notify
- x-mailing-list
- x-cron-env
- x-autoresponse
- x-eBay-mailtracker
Headers that indicate automated messages if they have a special value:
- 'x-spam-flag':'yes'
- 'x-spam-status':'yes'
- 'X-Spam-Flag2': 'yes'
- 'precedence':'(bulk|list|junk)'
- 'x-precedence':'(bulk|list|junk)'
- 'x-barracuda-spam-status':'yes'
- 'x-dspam-result':'(spam|bl[ao]cklisted)'
- 'X-Mailer':'^Mail$'
- 'auto-submitted':'auto-replied'