Динамическая пересылка почты на основе таблицы подписки - PullRequest
1 голос
/ 19 октября 2011

Клиент спросил сегодня утром, можем ли мы предоставить услугу подписки, в результате чего:

  1. Почта поступает на определенный адрес на облачном почтовом сервере без возможностей procmail / maildrop

  2. Cron запускает Perl или PHP-скрипт на другом сервере, который проверяет наличие новой почты и на основании адреса электронной почты подразумевает , откуда абонент, смотрит вверх и пересылает электронное письмо со всеми прикрепленными файлами всем подписчикам вместе с добавленной ссылкой для отказа от подписки

  3. Скрипт удаляет переадресованное письмо

Почтовый сервер будет иметь доступ как по IMAP, так и по протоколу POP.

// РЕДАКТИРОВАТЬ Обратите внимание, что почта будет поступать от 220+ правительственных агентств / организаций. Пользователи будут использовать интерфейс, чтобы указать, от каких организаций они хотят получать пересылки. Чтобы работать как традиционный список рассылки, нам нужно настроить 200 списков рассылки, а затем создать интерфейс для обработки подписок. Предложенный интерфейс позволит 1 - 200 подписок с одним электронным письмом подтверждения и одним интерфейсом отказа. // КОНЕЦ РЕДАКТИРОВАНИЯ

Клиент был предупрежден о том, что подделка заголовка является детской игрой, и что вирусные вложения являются серьезной проблемой и, тем не менее, готовы продолжать.

Итак, с учетом того, что это НЕ идея, что я одобряю, какие библиотеки вы использовали для выполнения такого рода задач?

Ответы [ 2 ]

2 голосов
/ 19 октября 2011

Вы не упоминаете, с каким почтовым сервером вы имеете дело. Perl имеет Net :: IMAP :: Client и Net :: POP3 для обработки извлечения почты.

Для отправки электронной почты с использованием SMTP-сервера существует Email :: Sender или Net :: SMTP или Net :: SMTP :: SSL .

Как минимум, вам потребуется учетная запись электронной почты, которую вы можете использовать для отправки электронных писем (это может быть исходная учетная запись, которая получает сообщения).

В промежутке между извлечением и отправкой вы можете проверить наличие спама с помощью Spam Assassin и вирусов с помощью ClamAV .

Я не знаю, почему нужно удалять исходные сообщения, но, по крайней мере, я бы подробно описывал каждый шаг.

0 голосов
/ 19 октября 2011

То, что вы описываете, это список рассылки . Если это вообще возможно, вам следует использовать один из нескольких существующих пакетов программного обеспечения, предназначенных для управления такими списками, например majordomo , ezmlm или mailman чем пытаться накатить свое.

...