PHP IMAP邮件" Disposition-Notification-To"标题 - 标记为已发送

时间:2014-03-14 02:18:24

标签: php email imap

我正在构建一个小型网络邮件系统,并处理“处理通知 - 收件人”标题,以便向收到邮件的人发送收据。

问题是:

  • 如何只发送一次?我如何知道它已经发送,并且不再询问/发送?

有什么想法吗?

像旗帜一样的东西,比如“看不见”,但是“送货收据已发送”,该怎么做?

我必须使用数据库吗?别无他法?

2 个答案:

答案 0 :(得分:1)

RFC 3503讨论了如何使用$MdnSent关键字作为一种非常标准的方法。如果可能的话,不要发明自定义关键字名称。

至于如何通过PHP在消息上设置这些关键字,您可能需要阅读PHP的IMAP库文档。有一个函数可以在服务器上存储这些关键字/标志。

答案 1 :(得分:-1)

使用旗帜。要查找要发送的邮件:

a uid search header "disposition-notification-to" "@" not keyword sentdnt

然后当你发送:

b uid store 321312 +flags.silent sentdnt

在理想的世界中,您可以将标志名称与执行此操作的其他客户端进行协调。