当电子邮件到达时如何自动处理?

3
我有以下场景:
1.我的应用程序为每个用户生成一个有效的系统电子邮件地址,例如:uuid@website.com。 2.当用户遇到问题/疑问时,他可以从任何地址发送电子邮件到预定义的系统电子邮件地址。 3.应用程序应接收用户发送的电子邮件并处理它们(检查垃圾邮件,插入数据库)。
在这种情况下,我首先想到的可能是在15分钟的时间段内收集电子邮件地址,使用外部桌面应用程序(或类似应用程序)处理它们(垃圾邮件或非垃圾邮件),并将它们插入数据库中。
因为我想在.NET、C#、SQL Server 2008上实现这个功能,并且应该在Web服务器上运行,所以使用WCF是否可行?
我创建了一个WCF Web服务,当通过电子邮件地址接收到电子邮件时,它会捕获它并开始处理过程。
WCF的一个问题是我认为它不能自动反应,我目前只是直接调用WCF并接收结果。因此,我认为应该在电子邮件服务器和WCF服务之间放置另一层,并且该层应该在接收到内容时“反应”。
主要思路是在电子邮件到达时立即处理电子邮件,而不是定期从收件箱中拉出。
有什么建议吗?谢谢。

你是说你想要编写一个SMTP服务器? - Carvellis
@Jappie: 我也考虑过这个问题...但说实话,我正在尝试找到一种更"简单"的方法。如果我开始编写一个SMTP服务器,那么我还需要进行测试,所以如果我必须在编写SMTP服务器和定期获取电子邮件之间做出选择,我会选择后者。 - Sorin Antohi
你能解释一下 "*>" 这个符号的含义吗?还有它需要在一个网络服务器上运行,是指物理机器(运行某个网站的服务器)还是IIS等等? - KMån
@KMan:它应该在物理机器上运行。 - Sorin Antohi
2个回答

1

你是正确的。Web服务不能为你捕捉任何内容。你需要调用(使用.ashx或其他方式)Web服务。这就是Web服务的作用,被调用。

应用程序应接收用户发送的电子邮件并处理它们

听起来你想开发一个电子邮件客户端;如果是这样,那么怎么样:

  • 创建一个电子邮件客户端应用程序(例如这里
  • 创建一个Windows服务,以帮助处理邮件。

假设您已经定制了客户端程序,Windows服务将与客户端一起工作,查找新消息并相应地处理它们。

有关电子邮件客户端示例,请查看:


0
如果连接到Exchange 2007 SP1或更高版本的Exchange Web Services似乎是最佳选择:
请阅读C#中的MS Exchange邮件读取

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接