У меня на forum.openvz.org есть форумы, которые по сути являются архивами списков рассылки (users@ и devel@). Точнее, раньше они были двусторонними, то бишь можно было постить ответ на форум, и он появлялся в списке рассылки. Таким образом, каждый мог выбирать и пользоваться тем, что ему больше нравится -- список рассылки или форум. К сожалению, эту возможность пришлось убрать.
Так вот, эти форумы остались как архивы списков рассылки. Работает это так: из списка рассылки апачу приходят все письма, прокмейл их сортирует и загоняет в форум (пайпом в некий php-шный скрипт).
Сегодня обнаружилось, что некоторых писем в этом архиве нет. Поглядев лог прокмейла, я увидел, что они падают не в форум, а в мейлбокс. Поглядев конфиг прокмейла, письма, которые падают куда надо, и письма, которые падают не туда, куда надо, я понял, что ошибся в регулярном выражении в .procmailrc. Точнее, не то чтобы ошибся, а не учёл, что некоторые письма на devel@ к нам приходят с другого списка рассылки (containers НА linux-foundation.org), соответственно, в них ни To: devel@, ни Cc: devel@ не написано.
Хорошая новость в том, что все эти письма не проимелись, а попадали в мейлбокс апачу. Дальше -- дело техники. Маленький скрипт на Python, который парсит мейлбокс, разбивая его на отдельные письма, среди этих писем выделяет те, в которых в заголовке List-Id прописано devel.openvz.org, и складывает их в отдельные файлики. Далее я эти файлики проглядел, выяснил, что всё нормально, и в цикле скормил их вышеупомянутому php-скрипту. Да, и .procmailrc тоже, конечно, пофиксил на предмет проверки не на To или Cc, а на List-Id. Часа полтора на всё потратил.
Мне вот интересно, что в таких случаях делают Windows-админы? Пишут на каком-нибудь ASP?
Page Summary
![]() ![]() ![]() ![]() :: (no subject) :: (no subject) ![]() |
mail machinery
Ну у windows-админов и mailbox будет на Exchange :) Хотя если строго - это, конечно, уже скорее будет VBA. Я понимаю, что языки скриптовые есть, и не один, и не только скриптовые. Я, скорее, вообще слабо себе представляю процесс в целом. У меня это работает как конструктор «Лего» — тут такой компонент, тут такой, тут их эдак соединили. А как в Виндах работает — не понимаю. Ну я не силён в web программировании, но допускаю, что если можно запустить php скрипт под unix, то почему это должно быть проблемой под windows. Та же командная строка, тот же интерпретатор (или что там) для php. Да, обычно mysql, ибо быстрый. В принципе, сейчас уже можно использовать, скажем, sqlite, который встроенный и тоже быстрый. Я всегда так считал - "Винда слишком сложна для бедных мозгов админов". По краиней мере, сам её админить ниасилил и не хочу. Ибо воротит. Здорово. Как же все просто, когда это список рассылки в plain text и на английском, и там нет всяких qp и base64. ;) Полные windows-админы, видимо, говорят аутлуку применить фильтр к ящику. Неполные скорее всего и форум держат на юниксах. > юникс-админы в таких случаях запускают formail -s procmail. Могу сказать, что на ASP/VBA/VBS/COM/.Net, как тут утверждалось, они не программируют, это точно. (Anonymous)
*kober* |