|
ru.linux- RU.LINUX --------------------------------------------------------------------- From : Igor Klingen 2:5020/400 02 Jul 2003 06:52:28 To : All Subject : Проблема с сортировкой писем в IMAP-ящике -------------------------------------------------------------------------------- Привет всем! Столкнулся со следующей проблемой. Имею: ASPLinux 7.3, fetchmail, procmail, qmail, courier-imap 1.7.1, imapfilter 0.8.9. fetchmail забирает почту из внешнего ПЯ и посредством procmail разбрасывает ее (перенаправлением) по локальным ящикам. В том числе, и по нескольким imap-ящикам. Далее, мне необходимо раскидать почту в imap-ящиках из INBOX по вложенным папкам. Критерий сортировки - наличие в полях заголовков 'from' и 'subject' определенных подстрок. Тут нужно сказать, что при обработке почты procmail, он первым делом вызывает скрипт, который перекодирует все поля заголовка записанные в RFC-1522 в аналогичные, но с кодировкой UTF-8, QuotedPrintable. Сам procmail использует этот факт в своих правилах. Для сортировки почты внутри imap-ящика я пытаюсь использовать imapfilter. И здесь возникают проблемы - он не желает перемещать некоторые письма. Hапример в INBOX присутствует письмо с таким заголовком: ... Subject: =?UTF-8?Q?19.06.2003| =D0=9D=D0=BE=D0=B2=D0=BE=D1=81=D1=82=D0=B8 EMS | 1C: =D0=90=D0=B2=D1=82=D0=BE=D0=BC=D0=B0=D1=82=D0=B8=D0=B7=D0=B0=D1=86=D0=B8=D1=8F?= MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=_71d770d162e31d25e4eff1f0601d99cc" From: webmaster@ems.ru ... (в оригинале в поле subject никаких переносов строк нет) В imapfilterrc присутствует правило: ... filter sort-subscribe-ems-1c and # From: ems.ru # Subject: "Hовости EMS | 1C:" mask from ems.ru mask subject "=D0=9D=D0=BE=D0=B2=D0=BE=D1=81=D1=82=D0=B8 EMS | 1C:" action move "&BB8EPgQ0BD8EOARBBDoEMA-/EMS 1C" ... (Здесь "&BB8EPgQ0BD8EOARBBDoEMA-/EMS 1C" это подпапка INBOX, в оригинале ".&BB8EPgQ0BD8EOARBBDoEMA-.EMS 1C", что означает "Подписка/EMS 1C" в UTF-7) Вот фрагменты протокола imapfilter: ... debug: FILTER: 'sort-subscribe-ems-1c' AND debug: MASK: 'FROM "ems.ru"' debug: MASK: 'SUBJECT "=D0=9D=D0=BE=D0=B2=D0=BE=D1=81=D1=82=D0=B8 EMS | 1C:"' debug: ACTION: 3 '' '&BB8EPgQ0BD8EOARBBDoEMA-/EMS 1C' 0 '' ... Client request: SEARCH debug: sending command: F00006 SEARCH ALL FROM "ems.ru" SUBJECT "=D0=9D=D0=BE=D0=B2=D0=BE=D1=81=D1=82=D0=B8 EMS | 1C:" * SEARCH F00006 OK SEARCH done. Server response: OK SEARCH done. ... Видно, что imapfilter пытается применить правило, но courier-imap не находит писем сопостовимых с этим правилом. Блин :(. Может кто нибудь, что нибудь посоветовать или подсказать? -- Заранее благодарен, Игорь. Отправлено через сервер Форумы@mail.ru - http://talk.mail.ru --- ifmail v.2.15dev5 * Origin: ООО Компания "ПРАЙС" (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.linux/64889cd8a050.html, оценка из 5, голосов 10
|