我需要做以下工作,我想知道是否有人做过类似的事情,如果是的话,他们做了什么。
我需要编写一个程序来处理不同客户端的电子邮件,处理它们,然后根据电子邮件地址,做一些事情(添加到数据库,回复等)。
让这件事更具挑战性的是,电子邮件地址不是静态的,它们是动态的。例如。电子邮件应该是这样的。动态-电子邮件1@dynamic-subdomain1.domain.com。电子邮件是由客户端使用动态子域分组的,在本例中,它将是“1”。客户端将有自己的子域分配给他们。每个客户端都可以在自己的子域中创建自己的电子邮件地址,并将事件分配给该电子邮件。这些电子邮件地址和子域可以随时更改,新的添加,旧的删除,等等。
因此,例如,如果电子邮件'dynamic-email1@dynamic-subdomain1.domain.com‘收到一封电子邮件,那么我需要在数据库中查找哪些客户端分配了“Dynam-Subdomain1”子域,然后查看哪些事件映射到“dynamic 1”的电子邮件地址,然后执行该事件。我已经有事件处理,我只是不知道如何映射到事件的电子邮件地址。
由于电子邮件地址是动态的,使用基于文件的配置文件来处理这将是一件很痛苦的事情,所以最好在数据库中查找。我做了一些研究,我发现一些项目做类似的事情,但不完全一样。我发现最近的是Zed的Lamson项目:http://lamsonproject.org
更多背景:
问题:
谢谢你的帮助。
更新:我对google引擎的建议做了更多的研究,它可能会奏效,但我需要改变太多的东西,它会添加太多的移动部件。我也需要一个捕获所有的电子邮件货代,谁知道好便宜的吗?我更喜欢部署在处理所有电子邮件的系统上。看起来,人们已经使用后缀,监听端口25,并将请求转发给lamson。这似乎是合理的,我要试一试,看看结果如何。我会更新我的结果。
更新2:我做了一些更多的研究,我发现了几个网站为我做了类似的事情,所以接下来我要看看它们。
http://mailgun.net
http://www.emailyak.com
发布于 2011-03-29 19:04:58
我做过几个使用动态电子邮件地址的项目,但从来没有同时使用动态子域。我对你的问题的想法:
To、From、Subject和Message字段将接收到的每条消息转换为您自己服务器上的基本From请求,并使用标准django处理这些请求。
GAE电子邮件的一个缺点是必须使用*@yourappname.appspotmail.com,但是您可以通过为*@yourdomain.com设置一个catch-all电子邮件转发器来将所有东西定向到secretaddress@yourappname.appspotmail.com来解决这个问题。这将允许您在自定义域上接收消息并使用GAE处理它们。
GAE的另一个问题/好处是使用Google的服务器而不是您自己的服务器(至少在电子邮件位上是如此)。MX,这将(理论上)将发送到任何子域的所有邮件发送到同一服务器。这将使您能够接收所有子域上的电子邮件(无论好坏-注意垃圾邮件!)发布于 2012-09-25 19:27:53
对于兰姆森来说,你有没有尝试过像这样简单的东西:
@route("(address)@(subdomain).(host)", address=".+", subdomain="[^\.]+")
def START(message, address=None, subdomain=None, host=None):
....https://stackoverflow.com/questions/5475540
复制相似问题