【问题标题】:SMTP e-mail RECALL from PHPPHP 中的 SMTP 电子邮件 RECALL
【发布时间】:2011-01-05 02:45:36
【问题描述】:

首先,我知道电子邮件召回很少起作用,而且通常只适用于 Microsoft Exchange 服务器。

尽管有限制,客户还是要求使用此功能。

我的理解是 Microsoft Exchange 中的 RECALL 功能是 SMTP 协议的专有扩展,它会向客户端发送一封要求 RECALL 的新电子邮件。客户端然后尽最大努力回忆该消息。

我没有找到关于 SMTP 的 RECALL 扩展是什么的文档,而且我还不太想拉出 wireshark 来跟踪它。我确实在https://datatracker.ietf.org/doc/html/draft-leiba-morg-message-recall-00 中找到了关于 SMTP 的 RFC 扩展的建议,我认为这与 Microsoft 的解决方案类似。

由于我们的解决方案是基于 PHP 的,因此我要问: PHP 中是否存在一种方法可以为以前发送的电子邮件发送 SMTP 撤回请求?

问候 达芬奇

【问题讨论】:

    标签: php email smtp exchange-server


    【解决方案1】:

    客户是否特别要求与 Exchange 和 RECALL 的互操作性,或者她是否将其用作她所追求的示例?

    如果是后者,我建议您在电子邮件实际发送到 SMTP 服务器之前使用宽限期提出替代解决方案。对用户来说,它看起来像是已发送电子邮件,但她可以在宽限期内(例如 10 分钟)撤消发送。

    -- 阿尔夫

    【讨论】:

    • 感谢 Alf 的回复。是的,客户特别声明应该可以撤回电子邮件。但是,没有提到 Microsoft Exchange。发送前的宽限期将是我们的备份解决方案。
    【解决方案2】:

    我认为这与 SMTP 无关。

    相反,如果您尝试向非 Outlook 操作的电子邮件帐户发送撤回消息,您会发现它只是一封电子邮件。我的猜测是接收 Exchange 服务器或您的 Outlook 客户端将识别此类邮件并执行适当的操作。

    召回消息的内容似乎很简单,电子邮件标题中没有明显的兴趣。消息正文(不幸的是,我现在无法以纯文本形式查看)只是说:

    John Doe 想召回 消息,“foo bar 主题”。

    无论如何,我怀疑任何 PHP 电子邮件库都支持这种开箱即用的功能。但是,它应该很容易实现,因为它可能只需要您创建一个适当的电子邮件模板并用主题、名称和可能的消息 ID 填写空白。

    【讨论】:

    • +1 我认为仅此而已。使用正确的标头应该很容易在 PHP 中实现。
    • 智能方式找出召回消息发生了什么:) 似乎也很容易实现。如果有机会,您介意以原始文本格式发布召回邮件吗?
    • @dparnas:如果我下班回家后记得,我会发布它 :) 我需要通过 SSH 访问我的帐户,而我这里没有。
    • 我设法检查了原始邮件,唯一相关的内容是主题:召回:测试召回 Dagfinn Parnas 想召回消息,“测试召回”。= 我相信交换/展望看起来对于主题和结束标记 .= 请注意,.= 具有十六进制代码 22 2E 3D 0A(如果您写 .=在普通邮件中,十六进制代码是 22 2E 3D 33 34 0A)
    【解决方案3】:

    自 2010 年以来有一个用于召回消息的 SMTP 扩展,但似乎没有任何 SMTP 服务器支持此功能。

    https://tools.ietf.org/id/draft-leiba-morg-message-recall-00.html#anchor1

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-11-29
      • 2014-11-29
      • 2011-07-08
      • 2016-10-23
      • 2019-10-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多