电子邮件 - 如何识别用户的电子邮件回复?

email - how to identify email responses from users?

我正在向 Laravel 的用户发送电子邮件。一切正常。

所以我现在正在使用 PHP-IMAP 阅读我的收件箱以获取用户的电子邮件回复。

如何识别上一封已发送邮件的传入电子邮件?

我尝试使用邮件 header:$headers->addTextHeader('X-request_id', $request->id);

header 已正确发送给用户,但在响应消息中 header 不再存在。

有什么建议吗?

我很确定没有办法保留 header 以便在回复中返回相同的 header。

简单的解决方法: 许多错误跟踪软件系统在主题或电子邮件文本中使用 id,例如案例编号并从主题中解析案例编号。这将在各种邮件系统垃圾邮件和病毒检查程序等中幸存下来。

另一种方法是为每封电子邮件创建特定的电子邮件地址,包括电子邮件地址中的 ID。但这要复杂得多。

如果您有用户之间发送的内部消息并且可以通过电子邮件回复,则使用类似的方法。所以 user34@users.example.com 发送电子邮件给用户 3432@users.example.com 如果你想防止电子邮件泄露。 那么您可能需要像 cloudmailin 这样的服务或您自己的具有必要逻辑的邮件服务器。

进行回复跟踪的正常方法(在用户代理级别,不使用客户端可能无法加载的网络错误)是使用 Message-ID。正常的 email-software 将 return Message-ID header 在 In-Reply-ToReferences header 中。这就是传统电子邮件软件进行线程处理的方式。

正如 Alex 所提到的,服务器软件使用的另一种方法是 per-user 来自地址。如果无论如何它都被脚本使用,您可以使用它来关联消息。例如,reply-7abc6de7878@domain.com,但您需要配置您的电子邮件软件以接受对这些的回复。