Каков самый простой способ настроить ответ на это письмо напрямую?

У меня есть сайт, на котором люди общаются через личные сообщения. Я отправляю уведомления npemail этим людям.

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

У меня настроен почтовый сервер (следовал инструкциям по установке dovecot и postfix). Тем не менее, это очень простая настройка, и я совершенно не знаю, как реализовать систему, которую я только что описал.

Я ищу хороший обзорный ответ или ссылку на учебник, который проходит через это.


person TIMEX    schedule 29.03.2013    source источник
comment
Я в основном хочу, чтобы мой почтовый сервер обнаруживал входящие письма, а затем действовал соответственно...   -  person TIMEX    schedule 30.03.2013
comment
Один из таких способов — подключиться к серверу imap и бездействовать. В Ruby используйте Net::IMAP и add_response_handler. Есть разные способы сделать это. Есть голоса, чтобы закрыть этот вопрос. Выберите конкретную цель и попробуйте что-нибудь, отредактируйте свой вопрос, а затем отметьте его для повторного открытия.   -  person Joe Frambach    schedule 31.03.2013
comment
@joeframbach ИМО, вопрос и так достаточно ясен. Он указал, что его почтовый сервер является постфиксным, и дал понять, что имеет над ним полный контроль, а это означает, что для достижения своей цели достаточно просто использовать .forward файл или около того.   -  person thejh    schedule 31.03.2013


Ответы (1)


Вы можете воспользоваться одной хитростью: почта для user+extension@domain отправляется в тот же почтовый ящик, что и почта для user@domain. Я бы использовал это вместо строки темы, чтобы узнать, о каком сообщении идет речь — это позволяет пользователю выбрать собственную строку темы.

Самый простой способ разрешить отправку почты определенному пользователю напрямую в программу — это поместить файл .forward в его домашнюю директорию. В этот файл напишите | <path to executable>. Полная почта (включая заголовки) будет передана указанному исполняемому файлу через стандартный ввод, и будут установлены несколько переменных среды с метаданными (например, EXTENSION).

Возможно, вы захотите сделать man 8 local.

person thejh    schedule 31.03.2013