Страница 1 из 1

EXIM: Создание роута белых и чёрных листов

Добавлено: 2008-10-21 10:41:32
stopka
Проблема возникла в незнании синтаксиса написания роутов, в ексиме.
Ситуация такая: есть exim+dbmail+clamav+spamassasin
Спам ассасин отлично режет спам, но и бывают случаи когда приходит письмо, и ни по каким статьям его в спам не упрятат, и спамассасин пропускает его.
И бывает когда приходят рабочие отчеты от серваков, скажем с отчетами о трафике и у которых заголовки кривоваты, и спамасасин успешно укладывает их в спам. Со вторым я ещё смирюсь, но с первым надо бороться точно.

Есть мускульная база: mail, в ней есть таблицы: whitelist и blacklist, с полями: id, sender(тут лежат записи, типа: *@spameram.net), active(по сути не нужное)

И есть два транспорта: spamd_router(доставляет почту в папку SPAM юзверю), dbmail_user_router(доставляет почту в INBOX юзверю)

И есть задача: Сделать на основе всего этого роуты, которые бы сначала смотрели в белый лист, если да, то доставляли бы без всяких проверок в INBOX.
И роут который бы смотрел в черный лист, если да, то смело кидал письмо в SPAM откуда по имапу юзверь если надо забирал бы письмецо.

Небольшой пример, который НЕ работает:

Код: Выделить всё

blacklist_router:
       driver = accept
       condition =${if !match{${lookup mysql{SELECT `id` FROM \
               `blacklist` WHERE \
               `sender`='${quote_mysql:$local_part@$domain}' OR \
               `sender`='${quote_mysql:@$domain}'}{''}{yes}{no}}}
       transport = spamd_router
Заранее спасибо, за намёки и советы. :sorry:

Re: EXIM: Создание роута белых и чёрных листов

Добавлено: 2008-10-22 8:42:35
Alex Keda
как-то извращённо....
выбери единицу например, если условие запроса верно.
Там булевы используются.

Код: Выделить всё

true, yes, 1
но никак не пустое место =)))