我有一个应用程序,当用户创建/修改记录时发送电子邮件。我希望我的用户能够回复发送给他们的电子邮件,让Web应用程序接收电子邮件,解析并自动更新记录。我已经在像Basecamp这样的网络应用程序中看到了这一点。电子邮件通常会显示“在此行上方回复”,如果您只是回复电子邮件,则无需登录Web应用程序即可更新您的票证/对话。
我怎样才能实现这种功能呢? (我不是在寻找特定的语言实现,而是一种与语言无关的解决方案)。
答案 0 :(得分:3)
有两种方法可以做到这一点:
您可以使用Procmail filter将收到的电子邮件通过管道传输到您的脚本中。这需要一些'nix知识设置 - 但你可以通过这种方法做你所描述的。
使用像MailGun这样的服务 - 他们完成了设置和配置邮件服务器内容的所有艰苦工作,并通过一个漂亮的可编程Web API向您展示。本周我一直在评估它,以解决类似你所遇到的问题,我可以告诉你:它非常酷,我强烈建议你自己检查一下。
答案 1 :(得分:0)
您需要实现一个服务/守护程序,用于轮询电子邮件收件箱中的新邮件。要将传入的电子邮件与相应的数据相关联,您可以在传出电子邮件的主题中包含ID。
答案 2 :(得分:0)
我同意您应该创建一个系统来接收传入的电子邮件,但我不一定同意轮询它是正确的解决方案。看看我在主题here上写的一篇博客文章。它与Rails有关,但概念应该适用于任何语言。这就是为什么我们编写CloudMailin系统以提供更好的方式来接收电子邮件。
此外,您可以为每封电子邮件使用唯一的地址,以防止用户更改主题行成为问题。电子邮件地址的一次性部分对此非常有用。例如,回复+ user123@example.com。