Трансляция сообщений из электронной почты на сайт (ответ на комментарий по е-мейлу)
Задача: организовать альтернативный канал общения через е-мейл. То есть, мне на е-мейл приходит уведомление о комментарии, я просто жму «Ответить», пишу ответ и отпарвляю его, после чего мой ответ появляется на сайте.
Правильно ли я вижу решение?
Письмо с уведомлением приходит со специальным заголовком reply-to, куда зашит е-мейл и идентификатор диалога, например, discuss-235982375@domain.ltd. Ящики на почтовом сервере не создаются, а все входящие помечаются как «user not found» и сыплются на определенный ящик, откуда и парсятся дополнительным процессом, который верифицирует ответы и раскладывает их в БД.
Или, возможно, вернее настроить на почтовом сервере правило сортировки таких писем?
Или я вообще все криво придумал и есть другие, зелёные способы?
Обычно для этих целей используется один ящик. В local-part после имени пользователя пишется, например, + далее специфичная информация (токен, id треда, куда постить: john.smith+id123@example.com). При должной настройке MTA такие письма летят на один аккаунт, а по информации в local-part уже делается in-app routing. При отправке наружу это скрывается в Reply-To заголовке.
есть ящик с которого вам идут сообщения и в теме письма допустим id+секретный ключ этого вопроса.
вы отвечаете на письмо — оно попадает в ящик который проверяется с заданной периодичностью скриптом и из входящих писем берет ваш ответ и добавляет его в базу. ну в ящике белый список адресатов настроить.
Я то же самое написал :) Только в тему писать нехорошо — ее затереть могут.
Вопрос в том, как это прасовлавнее организовать на почтовом сервере. Я правильно понял, что вы предлагаете просто завести один ящик для ответов, куда они все будут приходить и вообще не париться с роутингом почты?
Мне лишь интересно почему другие сервисы мутят как раз с несуществующими ящиками типа c+fds98gasdyga98dsg7s@reply.domain.ltd
Может быть, как-т освязано с безопасностью и попыткой отгородиться от части спама проверенными на почте правилами?
Так а кто тему затереть может — письмо ведь вашим скриптом формироваться будет. с роутингом почты возиться лично я не вижу смысла, так как помимо парсинга почты придется еще возиться с этими несуществующими адресами и почтовиком который не факт что корректно с этим работать будет.
другие сервисы не знаю почему так работают. возможно там другой принцип или цели использования другие — как раз допустим если публичное использование, то чтобы не затерли тему письма там.
ChemAli, в такой схеме используется существующий ящик c@reply.domain.ltd, а та часть в local-part, что после знака + — токен, по которому принимается решение о том, что с этим сообщением делать далее. Написал ниже.