有人能推荐一个软件或.NET库,可以检查退信邮件和退信原因吗?我会将退信邮件收到一个可以读取的POP3帐户中。
我需要它来保持我的用户数据库不受无效电子邮件地址的影响,并希望自动化此过程(将用户标记为无效电子邮件)。
有人能推荐一个软件或.NET库,可以检查退信邮件和退信原因吗?我会将退信邮件收到一个可以读取的POP3帐户中。
我需要它来保持我的用户数据库不受无效电子邮件地址的影响,并希望自动化此过程(将用户标记为无效电子邮件)。
我曾经处理过很多反弹邮件和不同种类的反弹邮件。如果你想要完全确信你正在查看的电子邮件确实是某种特定类型的反弹邮件,我强烈推荐使用一个好的过滤器。我曾经使用过Boogie Tools,效果非常好。它可以告诉你这是什么样的反弹邮件,硬反弹、软反弹、暂时性反弹或者甚至是有人试图取消订阅。它拥有多个API,包括.Net,并且我发现使用非常容易。
使用TcpClient很容易实现。打开服务器:
TcpClient tcpClient = new TcpClient();
tcpClient.Connect(POP3Server, POP3Port);
NetworkStream stream = tcpClient.GetStream();
阅读欢迎消息:
int read = stream.Read(inBuffer, 0, inBuffer.Length);
string response = Encoding.ASCII.GetString(inBuffer, 0, read);
if (response.IndexOf("+OK") != 0) throw new ...;
byte[] outBuffer = Encoding.ASCII.GetBytes("USER " + account + "\r\n");
stream.Write(outBuffer, 0, outBuffer.Length);
这是发送USER命令的步骤。您需要登录,然后才能开始获取消息 - 请参阅POP3 RFC以获取完整的命令列表。如果您不想自己编写,请查看此CodeProject文章。
你的问题让我意识到我原本要使用的 Wordpress Newsletter 插件没有反弹管理功能,我需要找一个有这个功能的替代品。
我找了一段时间,最终选择了免费开源的 PHPlist newsletter manager。
他们详细描述了处理反弹的设置,并且还有一个实验性的高级反弹处理功能,可以让你按照自己的需求定制反弹处理方式。
即使你决定不使用 PHPlist,了解他们的做法也会对你有所帮助。