К моему последнему проекту, написанному на 80% на Java, надо было дописать модуль — парсер всех писем, проходящих через сервер. Религиозные мотивы модуля очень странные, но некоторыми деталями хотелось бы поделиться.
В наличии имеются:
Почтовый сервер Postfix со службой доставки Dovecot на CentOS. Ну и JVM.
Структура сообщений
Что такое электронное письмо, его составные части, их примерная структура, заголовки и MIME типы по-человечески описано на
википедии.
Более интересной является структура имени
файла письма на сервере. Пример имени новоиспеченного (не прочитанного/не запрошенного клиентом) письма:
1348142977.M852516P31269.mail.example.com,S=3309,W=3371