【问题标题】:Easiest way to programmatically create email accounts for use by web app?以编程方式创建供 Web 应用使用的电子邮件帐户的最简单方法是什么?
【发布时间】:2010-05-25 22:46:55
【问题描述】:

我有一个创建组的网络应用程序。每个小组都有自己的讨论区。

我想添加允许用户在网络应用程序中向他们的“群组”发送电子邮件以开始新讨论或回复来自“群组”的电子邮件以在已经进行的讨论中发表新帖子的功能.

例如,要开始一个新的讨论,用户可以发送:
From: BillFake@gmail.com
To: group1@example.com
Subject: Hey guys! Meet up on Tuesday?
Body: Yes? No?

群组的所有成员都会收到一封电子邮件:
From: BillFake@gmail.com
Subject: Hey guys! Meet up on Tuesday?
Body: Yes? No?
Reply-To: group1@ example.com

而且,该应用会与以下人员开始新的讨论:
Author: Bill Fake
Subject: Hey guys! Meet up on Tuesday?
Body: Yes? No?

这是 Google 网上论坛和其他大型网站的标准功能。那么我们这些凡人如何实现这一点呢?有什么简单的方法吗?

还是我:
1. 安装后缀
2. 编写脚本为每个新组创建新帐户
3. 通过pop3(或imap?)定期访问服务器,以检索发送到每个帐户的电子邮件?
4. 解析消息内容

如果是后者,我是不是漏了一步?

【问题讨论】:

  • 我的项目是用 Python 和 Django 编写的。抱歉,我没有在帖子中提及。

标签: email postfix-mta


【解决方案1】:

将您的邮件服务器配置为在数据库后端(例如 MySQL)上运行,然后您可以从您的应用中插入记录来创建邮件帐户。

我不确定您是否也可以将消息传递到 MySQL 表中。您可能需要通过 IMAP 访问它,或者直接使用 Python 的 Maildir 支持访问 Maildir。

不过,IMAP 的优势在于您可以使用 IMAP 通知来保存一些轮询。但我想你也可以对 Maildirs 使用 inotify(或类似的东西)。

由于您使用的是 Python,我还建议您查看Lamson。也许看看邮递员,因为你在做的事情听起来有点像邮件列表(但我听说过关于邮递员的恐怖故事)。

【讨论】:

  • 我添加了一条评论来指定我的语言和框架。对不起,我没有提到它。我以前找到过 Lamson,但我担心使用相对较小、晦涩难懂的电子邮件服务器:Google 在 Lamson 上的数量不如在 Postfix 上的多;而且我的需求不是很大,但还不错(粗略估计每天 5 万封入站邮件,30 万封出站电子邮件)。如果我必须扩展,我想知道我将能够使用以前做过的服务器。不过感谢您的建议。
  • 好的,我刚刚扩展了我的答案。我同意 lamson 并没有那么顽强,但它似乎确实是处理电子邮件的最好/最简单的方法。如果我做过涉及电子邮件的项目,我肯定会认真考虑。
  • 我开始觉得你说得有道理。正如 Lamson 常见问题解答中所建议的,我可以使用 Lamson 来处理入站电子邮件,并使用 Postfix 来处理出站的繁重工作。我会仔细研究它。再次感谢您的建议。
猜你喜欢
  • 2012-09-09
  • 2012-03-27
  • 1970-01-01
  • 2010-10-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-02-26
  • 1970-01-01
相关资源
最近更新 更多