我的任务是实现流程自动化:获取 GMS 电子邮件提醒,以在 ConnectWise 中自动创建工单,和自动分配适当的客户端。
在我们的环境中,我们有一个可以发送电子邮件警报的 SonicWALL GMS。GMS 为 20 个不同的客户端监控 20 个不同的 SonicWALLS。
警报已发送从 [电子邮件保护]. 电子邮件已发送到通讯组[电子邮件保护]。此通讯组中的成员[电子邮件保护]. 当收到电子邮件时[电子邮件保护],我们的票务系统会自动创建一张票。此邮件流程运行正常,没有问题。
这里有一个挑战:为了让票务系统自动为公司选择公司字段,FROM:字段需要是公司联系人。例如:[电子邮件保护]
我需要的是一条可以更改发件人电子邮件地址的规则:[电子邮件保护]发送至客户联系电子邮件地址[电子邮件保护],根据电子邮件主题或正文中的 SonicWALL 序列号。我不需要重定向电子邮件,我可以将其发送到正确的地方,我只需要更改电子邮件的发件人,这样票务系统就可以分配正确的客户端
我对此进行了广泛的研究。我尝试了 Outlook 规则,但找不到可以“以”其他用户身份发送的规则。我研究了调整邮件头信息的 Exchange 邮件流规则,甚至向 Office 365 支持人员开具了一张票,但他们也陷入了困境。有人知道如何使用 Outlook 或 Exchange 在线更改电子邮件头中的发件人:字段吗?
*************编辑**************** 为了清晰起见,我添加了一个图表来显示流程和需要发生的事情。收件人:字段不需要更改。电子邮件正在被发送到它们需要去的地方。当它们到达目的地时,发件人:字段需要更改。
答案1
未经修改的 Exchange 无法提供此功能,更不用说 Outlook 了。我曾用两种方法实现了完全相同的功能。
1) 我们使用 IronPort ESA 过滤器/SMTP 节点来接收邮件。您可以在此级别编写规则,在将邮件发送到 Exchange 之前执行您要求的操作。这个想法很简单,许多邮件过滤器都有类似的功能。如果发件人是“GMS”并且正文包含序列号“xyz”(许多规则,每个 SN 一个),则触发邮件内容规则;操作是将信封发件人地址修改为您想要的地址。请注意,您正在谈论修改为带有域的地址,这听起来像是您无法控制的。根据您的过滤器在流程中执行发件人验证和反欺骗/垃圾邮件的位置,您对发件人地址的更改可能会导致传递失败。请注意,这可能需要进行其他更改。
2) 我已经在 .Net 中编写了一个自定义 SMTP 邮件传输代理,我的代码是剥离和重新路由附件(我们不希望大型附件存在于我们的 Exchange 服务器中,因此 ESA 会将超过一定大小的电子邮件发送到我的 MTA,然后 MTA 会将附件移动到文件服务器并将卸载文件的链接插入到邮件正文中)。您可以做同样的事情,获取一个自定义 MTA,它读取正文并根据一些查找信息更改发件人地址。“如果 SN 与 devices.SN 匹配,则将 From 设置为 devices.ContactEmail”类型的过程。您需要有人为您编写代码(假设这不在您的技能范围内,如果是,那么一切就绪了)。然后您的 MTA 只需将重写的输出交给 Exchange 入站连接器。
不,您无法在本机 Exchange 中执行此操作(尤其是在 Exchange Online 中,将发件人地址更改为非权威域是一件非常令人反感的事情)。但可以做到。
答案2
对于使用 Exchange Online (365) 的用户,一个可能的解决方案是:
我的情况:
我遇到的问题与 Ben 基本相同,供应商向我们的票务系统发送状态电子邮件,我想自动将其分配给我们的一位客户。我可以在供应商端更改的唯一选项是发送通知的电子邮件。
我们的电子邮件通过 Exchange Online (365) 托管,因此我们的选择有限。我们没有任何可以配置来帮助我们 SMTP 过滤器。
我的解决方案(即对我有用的方法):
1. 我所做的是为每个客户设置一个共享邮箱(对我来说,总共有 7 个共享邮箱)。2
. 然后我登录到给定客户的网络邮箱,并转到“设置 -> 邮件 -> 自动处理 -> 收件箱和清除规则”,在那里我创建了一条规则,将来自我们供应商的任何邮件转发到我们的票务系统。3
. 然后我将该共享邮箱地址添加到我们票务系统的联系人列表中,作为正确客户下的联系人。4
. 最后一步是更改来自我们供应商的通知电子邮件,以将邮件发送到与我们每个客户关联的共享邮箱。
限制(据我所知):
- 这确实会使邮件的主题行中附加“FW: ”,并且在邮件正文顶部显示典型的邮件转发文本,其中说明原始发件人、收件人和时间。这对我们的技术人员来说确实没什么影响,但对某些人来说可能是一个大问题。
其他想法:
- 我想使用 Outlook 的桌面版本可以完成同样的事情,但 Outlook 必须保持打开状态才能转发消息。 - 此解决方案对我们来说效果很好,因为共享邮箱不需要有效的 365 许可证,因此无需额外费用。
- 我还设置了一条规则,该规则会自动删除来自我们的票务系统的自动回复和其他垃圾邮件,以保持邮箱清洁。
- 最后,我还使用此设置来包含我们使用的几个需要 SMTP 服务器的程序。我所做的是授予普通邮件帐户对共享邮箱的完全访问权限和发送权限。 (我们有一个维护帐户,所以我使用了它。)然后我可以输入 365 SMTP 设置,登录名为我们的维护帐户,“发送为”是客户特定的邮箱。然后,该程序被设置为直接向我们的票务系统发送电子邮件,并显示来自共享邮箱。 (注意:普通邮件帐户需要有效许可证,因为它必须登录到邮件服务器。我使用了我们的维护电子邮件,因为我们所有的普通用户电子邮件都需要每 90 天更改一次密码,这也要求我们不断更新我们程序上的密码,但我们的维护电子邮件是静态密码。)
希望这可以帮助其他人解决他们的问题。