我正在从事一个反垃圾邮件项目(森特邮件),涉及让发件人使用添加自定义标头(以及签名,但这部分是 更轻松)。一般问题是向外发邮件添加电子邮件标头,其中标头字段的内容是为每封邮件动态确定的。

令人惊讶的是,这在 Pine/Alpine 中似乎不可能。Pine 允许您为外发邮件指定过滤器脚本,但只有正文而不是标头可以通过它。您当然可以在 Pine 设置中定义自定义标头,但我认为没有办法动态更改它们的内容。

我很高兴听到如何在其他电子邮件客户端(Thunderbird、Outlook、Evolution、Mutt 等)中执行此操作。当然,如果我对 Pine 的看法是错误的。

有帮助吗?

解决方案

您可以在 Eudora 中进行此操作。

您可以使用在Outlook 中以编程方式执行此操作//www.add-in-express.com/forum/read.php?FID=5&TID=1480“rel =”nofollow noreferrer“>自定义表单。

您可以在 Mozilla from about:config 中执行此操作。

其他提示

虽然它不是最严格意义上的插件,但您可以创建一个代理SMTP服务器来修改电子邮件 - 例如比如AVG Outgoing E-mail Scanner。这将具有与许多电子邮件客户端合作的优势;你也可以制作一个插件,它可以与一方的代理进行通信,另一方面可以与电子邮件用户界面进行通信。

Thunderbird插件 Enigmail 控制外发邮件的标题。所以这是一个存在的证明,它可以在Thunderbird中使用。

我同意Piskvor的看法。我会将其实现为代理SMTP服务器,这将带来许多好处:

  1. 您不会受限于任何一个电子邮件客户端,因此受其API(如果有)的限制
  2. 它可以应用于邮件服务器端,因此消除了安装和部署难题

Emacs可以通过编程方式执行此操作。您可以创建一个缓冲区(get-buffer-create),用标题信息填充它,然后调用mail-send非interactivelly(将mail-interactive设置为nil)。

mail-send-hook

一起使用的缓冲区内容(标题+正文)的示例
From: "Toto" <toto@toto.net>
To: somebody@somewhere.net
Subject: Something
BCC: sebastien.rocca-serra@f4-group.com
--text follows this line--

Hello, how are you?

您还可以通过向<=>添加挂钩来更改每个外发电子邮件(标题+正文)。

已经有人专门询问过有关 Thunderbird 的问题:

最上面的答案包含修改纯 xul/js 中标头的代码。

我从脑曲调的旧部分挖到了其他东西......

我认为这种方法是去配置SENDMAIL并通过[bash / etc]脚本进行操作,如果我理解正确

根文件 http://snap.nlc.dcccd.edu/reference/sysadmin/儒略/ ewtoc.html

SendMail配置

标题声明 http://snap.nlc.dcccd。 EDU /参考/系统管理员/儒略/ CH04 / 061-064.html#Heading22

http://snap.nlc.dcccd埃杜/参考/系统管理员/儒略/ CH04 / 078-080.html

  

标题行的格式是   由H线定义。的语法   这一行是

     

H [c?c mflagsc?] c hnamec:c htemplate

     

此处有延续线   规范直接插入   进入传出消息。该   htemplate在它之前进行了宏扩展   被插入到消息中。如果   扩展为空,标题行为   不包含。如果是mflags   (被问号包围)是   指定,至少一个   指定的标志必须在   此标头的邮件定义   自动输出。如果其中之一   这些标题在输入中,它是   无论如何都指向输出   这些旗帜。

     

特殊标题行几个标题   线条有特殊的解释   由配置文件定义。   其他人有内置的解释   sendmail无法更改   不改变代码。该   内置功能在中描述   以下列表:

     <!>

#8226; Return-Receipt-To:如果这个标题   发送后,将向任何消息发送消息   最终的指定名称   交货完成。邮件必须   有l标志(本地交付)设置   在邮件描述符中。 <!>#8226;   错误 - 要:如果错误发生在任何地方   在处理过程中,此标头发送   错误消息到列出的名称   而不是发件人。用这个   邮件列表的标题行,以便   错误将返回到列表中   管理员。 <!>#8226;要:如果有消息   没有列出的收件人   消息(在To:,CC:或BCC中:   line),sendmail添加了一个显然:   每个收件人的标题行   在sendmail命令中指定   线。

我发现,因为pine是开源的,如果这个功能对你来说对这个程序很重要,你可以尝试为项目添加功能。

您可能想要研究的一件事是使用伪标头而不是标头。 Becasue pine / alpine允许您为电子邮件指定过滤程序,您可以在开头添加标题到主体,这应该很容易处理。我不确定它是否完全符合您的目的,因为我不知道您将哪种类型的系统组合在一起。

我通过在 Debian BTS系统中使用伪标题了解了这些标题。

回答这个问题,我使用GMail,你不能以编程方式编辑标题(我有兴趣看到一个可以让你的网页邮件)。您甚至无法过滤X-List等自定义标题,这非常烦人。

插入邮件客户端以获取自定义标头的一般想法是错误的。

那里有许多客户。在不同的系统上包含不同的版本。

标题+正文格式背后的好处是所有非用户,服务器和路由特定数据都是对用户隐藏的。这个想法很重要。我不认为用户应该对一些自定义的服务器相关标头感到困扰。

此外,您尝试附加的数据实际上是用户特定的数据。 喜欢签名。它验证发件人的有效性。没有理由将其隐藏在用户之外。

电子邮件数据的签名是众所周知的过程,由PGP,SMIME等使用。可能有更多的邮件客户端允许这样的操作(由外部程序验证和签名),而不是允许添加或修改自定义邮件头。

自定义标头应由邮件服务器修改;邮件客户端的用户数据。

我认为你喋喋不休地把你的数据放在消息或消息部分。

使其在松树上工作而不修改松树本身或修改邮件服务器的一种方法是通过命令行程序(传统上是/ usr / sbin / sendmail等)传递pine并使被调用的程序成为包装器对于原始程序。然后你可以添加你需要的任何标题。

虽然这很难看,但它肯定无法扩展到整个用户群。

对于支持使用外部编辑器的所有邮件客户端,您可以使用一个脚本,将特定标头添加到发送给编辑器的模板中。在 mutt 中,有一个名为 edit_headers 添加一组通用标题,以便添加自己的标题。还有一个名为 my_hdr 的参数可能是用过的。 Mutt确实支持`backtick`符号来运行外部命令。

最好能够指定一个人自己的模板但是还不可能。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top