Страницы: 1
RSS
Периодическая сортировка
 
Значит так... Ниже описана задача и вытекающие вопросы...
Требуется рассортировать все письма в папке Входящие по папкам вида mm-yy (т.е. месяц год). Как это реализовать в сортировщике писем фильтрами? Появилось решение такое, что в последний день месяца запускается фильтр, который перемещает все письма из папки Входящие в папку который создаёт макрос %ODATE="mm-yy". Но такой вариант не подходит, ибо если запустить The Bat! позже намеченной даты, то всё перемещение "провалится" и почта за прощедший месяц не рассортируется (а когда придёт время производить следующую сортировку переместится не в тупапку).

Как быть в этой ситуации?

Цель, которую необходимо достигнуть, заключается в следующем. У пользователя почтового клиента, должна быть копия всей почты за прошедший месяц (можно и больше - не принципиально)  в отдельной папке, а вся почта за настоящий месяц, в папке Входящие.

Как можно всё это "разрулить" ...
Заранее спасибо.

 
Цитата
ибо если запустить The Bat! позже намеченной даты, то всё перемещение "провалится" и почта за прощедший месяц не рассортируется (а когда придёт время производить следующую сортировку переместится не в тупапку).
Не понял о чем речь....


Сортировка есть и ручная.
Её можно даже поставить в планировщик.
В условиях срок письма ещё есть - например 30 дней.

Во-вторых.
Предлагаю например так:
1.
В папку %ODATE="mm-yy" не перемещайте письма, а копируйте.
Не забудьте галку автоматом создавать папку.

2. Для входящих поставьте срок хранения 30 дней и тогда при выполнении регулярной прочистки папок от "старых" писем - письма будут исчезать сами.
"Удаление старых писем" можно и запланировать в Планировщике (каждый день, раз в неделю ...).

Думаю лучше использовать не месяц, а именно 30 последних дней....

 
Да я так вобщем и делал....
Выглядело примерно следующим образом. В лпнировщике создавалось событие по перемещению писем, затем происходила "Чистака старых"...
Но проблема в том..что например в планировщике назначено выполнять эти 2а действия (чистка, сортировка/перемещение) в последний день месяца. Но представьте ситуацию, что в такой день клиент не будет запущен, а соответственно и не отработают правила, а перенесуться на конец ледующего месяца...
Вот, а теперь представьте что получится в к эту дату X?
 
вообщето %ODATE - это не текущая дата, а дата письма.
%DATE (без O) - это текущая дата.

Так что в принципе без разницы до первого запускать или после первого.
 
Ага, ну вобщем попробую, спасибо...
ЧТо то я упустил получается =)
 
Вот такой ещё вопрос.
Схема описанная в первом посте данной темы необходима для складирования спама....(просто у бата отличные инструменты сортировки, бат только сортирует)...
А некоторый спам, бывает так что от 12.03.2011 или 11.23.1985... Как разложить исьма в папки именно те который были получены СЕРВЕРОМ (уточню - не клиентом!) за прошлый месяц...
 
Поискать нужные макросы или регурярными выражениями разбирать заголовки вида:
Received: from mail.com (mail.com [222.22.222.222])
       by mail.com with BatPost v2.21b8
       for <me@mail.ru>; Tue, 13 Mar 2007 16:02:43 +0200
 
1) Это единственный способ? Есть альтернативные варианты?
2) Не могли бы дать ссылку где я могу подробно прочесть (с примерами) о регулярных выражениях и макросах подходящих в данной ситуации? Наверняка на этом ресурсе где-то есть что-то подобное... Боюсь запутаться в поиске...
 
Ок, извиняюсь за вопрос... Вобщем я нашёл сам...
http://www.ritlabs.com/ru/products/thebat/advice_detail.php?ID=1013
http://www.ritlabs.com/ru/products/thebat/advice_detail.php?ID=95

Вопрос в следующем, как я могу использовать регулярные выражения в названии папки при создании оной при сортировке?
 
Задам вопрос ещё конкретнее. Есть вот такая строка

Код
Date: Thu, 15 Mar 2007 15:41:01 +0300 (MSK)


Необходимо анализировать в ЗАГОЛВКАХ письма эту строку. Выдирать из неё слово Mar, создавать такую папку и перемещать в неё данное письмо.

Возможно ли реализовать в TheBat! такое или подобное?
 
макросы регулярных выражений есть.
возможно что-нибудь полезное найдется и в дополнительных плагинах
 
Вот кстати один из примеров выдирания:

Время создания:      
%SETPATTREGEXP="(?m-s)Date\:\s*((.*?[\d]{4})\s*?([\d]{0,2}\:[\d]{0,2}\:[\d]{0,2})\s*?(.*))"%REGEXPMATCH="%HEADERS"
 
Спасибо большое...
А разве этот заголовок содержит дату создания письма?
Если да, то есть ли такой заголовок  который содержит дату приёма сообщения сервером?
 
Думаю это какой-то из заголовков Received:
Но только их несколько и там много лишней информации
Страницы: 1