Прием писем с домена с подстановочным субдоменом
Я настраиваю приложение для преформ почтовых крючков. Вы создаете учетную запись, назначаете URL-адрес обратного вызова и шаблон для сопоставления. Затем вы получите поддомен, который вы можете отправить по электронной почте. Что-то вроде accountname.mail.appdomain.com.
Вот как это может работать.
- Шаблон: ^(?P\w+)- ответ $
- Account: accountname
- Обратный звонок: http://www.someotherapp.com/reply/create/
Если кто-то отправляет электронное письмо по адресу 12345-reply@accountname.mail.appdomain.com, я должен иметь возможность собирать это письмо, я думаю, перехватить все почтовые ящики. Затем создайте фоновое задание, которое будет получать почту и маршрутизировать ее на основе адреса TO и настраиваемого домена.
Проблема, с которой я сталкиваюсь, заключается в том, как заставить почтовый сервер принимать эти входящие письма. Прямо сейчас у меня настроена запись MX, которая указывает от *.mail.appdomain.com на mx1.emailsrvr.com и mx2. Когда я "копаю", я получаю правильную маршрутизацию, однако я не думаю, что почтовый сервер настроен на прием входящей почты.
Если это невозможно, другой вариант, с которым я играл, - это создание сервера smtp на python с использованием встроенной библиотеки smtp. Все, что этот сервер будет делать, это принимать входящие запросы на порт 25 и помещать почту в очередь. У меня это работает нормально, я просто волнуюсь, что не использование реального SMTP-сервера может создать проблемы.
Кстати: главный сервер будет работать на slicehost, если это имеет значение. ТАКЖЕ: Этот сервер не будет отправлять электронную почту с этих пользовательских доменов, если это имеет значение.
1 ответ
Вам нужна динамическая настройка вашего почтового сервера, верно? Тогда это зависит от возможностей вашего почтового сервера. Если вы используете Postfix, вы можете добавить настройку виртуального домена, настроенную в таблицах MySQL. Или другие базы данных. Из вашего приложения вам нужно только добавить / удалить строки в этих таблицах, чтобы принимать только допустимые домены. То же самое касается Exim, который еще более расширяем.