Регистрация...

Eserv Forum / E3 / Eserv 3 Mail Server Support / Правило для MContent

recent wikipost // (v1)
Продукты и услуги Скачать Документация Купить Поддержка Форумы Партнёрам Статьи О компании
Новости
12.10.2009
Переезд завершен
Прошу помочь с правилом для MContent.
От одного моего пользователя по моим и внешним адресам идут письма с темой начинающейся с: "Не прочтено: ".
Кодировка темы: koi8-r, utf-8, windows-1251.
Необходимо такие письма не доставлять, а сложить в папку, например, \Eserv3\DATA\mail\domen.ru\user\stop\
 
Комментарии к этой версии (13.10.2014 09:12) [~draga] b60cc346
Комментарии к версии 2 (13.10.2014 09:50) [~draga] a9749d95
АвторДатаТекстtags
pig14.10.2014 21:08
Думаю, что MContent тут не обязателен. Предлагаю следующее:
  • Скопируйте conf\smtp\OnNewMail.rules.txt в myconf\smtp\OnNewMail.rules.txt (чтобы не затёрся и чтобы оригинал не пострадал)
  • Отредактируйте копию. Надо между строками
  • CURRENT-FILE FileExists 0= | \EOF
    и
    EvalRulesIfExists: smtp\delivery\DB
    вставить следующее:
    MailFrom ~ user@domen.ru DUP | DROP DECODED-SUBJECT =~ "Не прочтено: *" | CopyFileWithRcptsTo: "..\DATA\mail\domen.ru\user\stop\{FMAILFROM}!{RANDOM-ID}.eml" DeleteCurrentFile \EOF
wikipost
pig14.10.2014 21:12
Если не сработает, надо будет смотреть шапку проблемного письма. От кривых заголовков никто не застрахован.
wikipost
draga15.10.2014 10:19
ред: 15.10.2014 10:29
Сделал копию Eserv3\acSMTP\conf\smtp\OnNewMail.rules.txt в Eserv3\acSMTP\myconf\smtp\OnNewMail.rules.txt
Внёс изменение в Eserv3\acSMTP\myconf\smtp\OnNewMail.rules.txt (вставилось одной строкой), получилось такое (в конфиге юзер и домен реальные):

CURRENT-FILE FileExists 0= | \EOF MailFrom ~ user@domen.ru DUP | DROP DECODED-SUBJECT =~ "Не прочтено: *" | CopyFileWithRcptsTo: "..\DATA\mail\domen.ru\user\stop\{FMAILFROM}!{RANDOM-ID}.eml" DeleteCurrentFile \EOF EvalRulesIfExists: smtp\delivery\DB


Создал папку "stop".

Без перезапуска acSMTP, отправил письма. Все письма с этого ящика с нужной темой "Не прочтено: test" и с другой темой "test" оказались в "Eserv3\DATA\mail\spool". 2 минуты они там лежали и я папку "myconf" переименовал в "-myconf" (что б отключить это).

В логах об этих письмах ничего нет, только в 201410log.txt
wikipost
pig15.10.2014 10:49
Там две строки.
| CopyFileWithRcptsTo: — это начало второй строки.

Впрочем, я налажал. Подзабываю уже, где рыбу заворачивали. Вот так должно работать:
MAILFROM S" user@domen.ru" COMPARE-U 0= DUP | DROP DECODED-SUBJECT S" Не прочтено: *" Match-U 0= | CopyFileWithRcptsTo: "..\DATA\mail\domen.ru\user\stop\{FMAILFROM}!{RANDOM-ID}.eml" DeleteCurrentFile \EOF
wikipost
draga15.10.2014 11:17
При копировании из форума кода получается одна строка

Этот код работает (пока ничего плохого не заметил). Проверил на себе с разных ящиков, в трёх кодировках. То что надо.
Спасибо.
wikipost
Работает на Eserv/5.05567 (10.02.2020)