c# MailKit - 阅读回执

c# MailKit - Read receipt

有人知道 MailKit 是否支持阅读回执(阅读后回复消息)吗?我在网上或 Whosebug 上没有找到任何东西。

阅读回执(即当用户打开消息时自动发送消息)不是 MailKit 可以自动完成的事情,它必须由软件 使用 MailKit 或通过邮件服务器。

此功能通常只有 Microsoft Exchange、Lotus Notes 和 Novell Groupwise 等群件套件才能实现。

这是一个可以由邮件服务器或邮件客户端实现的特性,但它不是任何邮件协议的特性,因此 MailKit 没有实现它。

如果您想支持发送已读回执,您将需要自动创建一个 MimeMessage with a MessageDispositionNotification body 部分并在用户 opens/reads 一条消息时在您的客户端程序中发送它.

要请求 MimeMessage 的已读回执,您需要像这样设置 Disposition-Notification-To header 字段:

message.Headers[HeaderId.DispositionNotificationTo] = "me@example.com";

如果接收用户代理支持已读回执并且配置为发送回执,那么理论上您会在用户阅读邮件时收到一个。

有关阅读回执的详细信息,请参阅rfc3798