我有两个电子邮件签名。我为所有收件人使用内部签名[email protected]
,为所有收件人使用外部签名[email protected]
。目前,默认签名是内部签名。如果我想使用外部签名,我可以在功能区中手动设置。
我想知道是否有可能让 Outlook 365 在检测到收件人电子邮件地址不属于公司时自动更改签名。
“对我发送的邮件应用规则”只能在邮件发送后应用操作(见以下 2 张图片)。但我需要在输入收件人后激活它。
答案1
答案是否定的。您需要想出某种自定义解决方案或寻找第三方应用程序来提供帮助。我四处寻找了一下,并没有找到任何我推荐的解决方案。另一种方法是查看较小的营销集成工具 - 这些工具可能允许您撰写消息并根据“活动”选择签名发送它们 - 只需将某些用户分配给活动,您生成的消息就会获得您想要注入的页脚(或其他任何内容)。
返回可能的编码选项
这里有一个论坛字符串可能会有所帮助(https://social.msdn.microsoft.com/Forums/en-US/9cfedfdf-b7a8-442d-96b8-a5cf5a149673/adding-outlook-signature-using-ole-automation?forum=isvvba)。
他们使用下面的方法来获取签名文件。
shell = new ActiveXObject("WScript.shell");
user_name = shell.ExpandEnvironmentStrings("%USERNAME%");
fso = new ActiveXObject("Scripting.FileSystemObject");
signatureTextStream = fso.OpenTextFile("C:\\Documents and Settings\\" + user_name + "\\Application Data\\Microsoft\\Signatures\\" + user_name + "." + file_ext, 1);
signatureContents = signatureTextStream.ReadAll();
signatureTextStream.Close();
如果您将其与逻辑结合起来以读取收件人 - 您也许能够为自己找到一个可行的解决方案。
来源:https://msdn.microsoft.com/en-us/library/office/ff868695.aspx
Sub GetSMTPAddressForRecipients(mail As Outlook.MailItem)
Dim recips As Outlook.Recipients
Dim recip As Outlook.Recipient
Dim pa As Outlook.PropertyAccessor
Const PR_SMTP_ADDRESS As String = _
"http://schemas.microsoft.com/mapi/proptag/0x39FE001E"
Set recips = mail.Recipients
For Each recip In recips
Set pa = recip.PropertyAccessor
Debug.Print recip.name & " SMTP=" _
& pa.GetProperty(PR_SMTP_ADDRESS)
Next
End Sub
如果我有时间,我会尝试将其整合成一个可行的解决方案,但如果其他人能为您发布它,那也很好。否则希望这能让您走上正确的道路。
答案2
您应该能够通过规则来做到这一点。
以下是如何创建免责声明,该免责声明添加到发送给外部收件人的所有邮件的底部(指南来自这里):
- 在 Exchange 控制面板中,选择管理我的组织 > 邮件控制 > 规则。
- 单击新建。在新建规则窗口中输入以下信息:
- 点击“更多选项…”
- 如果…选择“收件人…”和“是外部/内部”。在“选择范围”窗口中,选择“组织外部”,然后单击“确定”。
- 执行以下操作:选择“在消息中附加免责声明...”和“附加免责声明”。
- 点击“输入文本…”输入免责声明文本,然后单击确定。
- 单击“选择一个…”可指定一个后备操作,该操作定义当免责声明无法应用于邮件时要执行的操作。选项包括“包装”、“忽略”和“拒绝”。默认操作为“包装”。
- 要了解有关这些选项的更多信息,请参阅后备行动。
- 完成后,单击“确定”。
- 若要向规则添加例外,以使免责声明不适用于特定邮件,请单击“除非…”。例如,若要指定特定用户,请选择“发件人…”和“此人”或“是此组的成员”。有关可用例外的完整列表,请参阅运输规则的条件和例外情况。
- 规则名称:接受默认名称,或为规则输入唯一的描述性名称。
- 单击保存。
答案3
不确定您是否仍在寻找解决方案,但我认为 Crossware Mail Signature 可以帮助您。
它充当 Office 365 的附加组件,每次发送电子邮件时都会在云中应用您的签名。您可以轻松创建特定的签名规则,以便为内部和外部用户提供不同的签名(基本上是任何您能想到的规则)。它具有完全集中的管理。
希望对您有所帮助。欢迎在此查看 -http://www.crossware.co.nz/