Ситуация: почтовый сервер с доступом только по IMAP. Проблема: я хочу иметь возможность фильтровать почту (поместить несколько писем в разные папки, пометить их как прочитанные и т. Д.).
Большинство новых почтовых клиентов имеют такую возможность, но мне нужна отдельная программа фильтрации, поскольку мне нужно использовать различные почтовые клиенты для подключения к этому серверу.
Вообще - что-то вроде procmail, но работает над IMAP.
Программное обеспечение будет работать на Linux или Solaris.
Ответы:
Быстрый Google подбрасывает IMAPFilter, который выглядит так, как будто он делает то, что вы хотите:
источник
В зависимости от вашего IMAP-сервера, вы можете просто использовать некоторую реализацию sieve . Я думаю, что лучшая поддержка для сита обеспечивается Cyrus.
источник
Как вы уже упоминали, procmail - верный способ сделать это, поэтому вы можете спросить своего почтового провайдера, поддерживает ли он это на всякий случай - не повредит.
В противном случае, возможно, самый простой способ - это всегда открывать почтовый клиент, который выполняет сортировку и т. Д. Раньше были проблемы с блокировкой доступа нескольких клиентов к одному и тому же почтовому ящику IMAP, но я не видел их годами.
источник
Для легкости вы можете попробовать Sift .
источник
Еще один способ - использовать фильтр изображений ruby gem.
https://github.com/flajann2/imap-filter/blob/master/README.org
И пример DSL,
https://github.com/flajann2/imap-filter/blob/master/examples/default.imap
DSL основан на Ruby, но вам не нужно много знать Ruby, чтобы использовать его. Автор обещает предоставить больше примеров в ближайшем будущем и открыт для запросов функций и запросов извлечения.
источник
В операционных системах Linux и Unix вы можете использовать
fetchmail
для опроса свою учетную запись электронной почты IMAP и передавать любые новые сообщенияprocmail
. Вы можете настроить procmail для запуска сценариев на основе совпадений шаблонов регулярных выражений в полученных сообщениях.Для этого вам нужно установить пакеты fetchmail и procmail. Следующая конфигурация позволила мне запускать скрипт для каждого нового сообщения электронной почты, полученного в моей учетной записи электронной почты. Я использовал Ubuntu 12.04 LTS.
В
~/.fetchmailrc
:Обратите внимание на
keep
указанную выше директиву, которая гарантирует, что сообщения не будут удалены с сервера IMAP после их получения.В
~/.procmailrc
:В Интернете есть множество учебных пособий для fetchmail и procmail, а также учебных пособий по их интеграции (вот как я придумал вышеизложенное).
Теперь, если я запускаю
fetchmail
илиfetchmail -v
скрипт/home/username/myscript.sh
запускается один раз для каждого нового сообщения. Я могу запустить fetchmail в cron или настроить fetchmail для запуска в качестве демона сset daemon 600
директивой in.fetchmailrc
(где 600 - это количество секунд между опросами).источник