最近遇到一个非常棘手的需求是关于邮件转发的问题,请大家来帮忙给出出主意如何实现。

时间:2021-09-19 17:35:13
一.目前邮件转发采用的手段
目前邮件转发依靠人工来实现,内网发到外网的邮件主要通过人工识别邮件的主题来判断邮件发送目的地,然后同样人工选择相应的外网地址,通过公司一个外网地址发送出去 。
具体情况为:张三使用的计算机同时连接内外网,内网计算机发送到外网的邮件首先发到张三的内网邮箱,张三根据邮件的内容用外网邮箱发送到外网。同样,当外网邮箱发到公司内部时,首先发到张三外网邮箱,然后张三根据邮件内容再用内网邮箱转发到公司内网。(内外网:已经存在现有的邮件系统。)
二.目前采用这种方式的弊端
从邮件转发的手段可以看出,如果公司邮件数量比较多,而且大多都比较紧急,基本限定了一个人工来操作这些邮件,效率底下而且费时费工。
三.需要解决的问题
初步确定的解决方式为:因为张三采用的邮件客户端程序为Outlook,需要开发出适合Outlook的插件或者是独立程序,自动分析邮件主题头,然后切换到另一邮件系统进行转发。
比如,内网发送到外网邮件,张三内网收到邮件之后自动打开外网邮箱,根据邮件主题头所表明的要转发的对象,对照地址本,进行转发出去,外网发送到内网也是如此。
说明一下,邮件主题头需要先进行约定:
比如:请转发×××(×××@mail.com),这样程序就可以自动读取括弧里面的地址打开对应邮箱进行转发。
根据现有的邮件主题头大体可分为以下几种情况:
1. 所有的邮件主题名称后跟括弧,括弧包含要发送的邮件地址,此邮件内容(包括主题名称)都由初时邮件发送者拟订。
2. 当出现邮件发送一对多时,由初时邮件发送者确定分别发送还是在括弧中包含多个收件人地址。多个收件人地址可用“;”分开,比如:请转发(123@163.com;345@sina.com)
3. 对于群发情况,可以在地址簿中设定分组,比如销售,内勤,结算等组,同样在邮件主题名称中注明,比如:请转销售(<销售>),分组用尖括号包含。
4. 在外网发到内网的情况下有种特例,因为对外网来说,公司内部邮箱没有任何意义,所以外网一般不知道内网的地址,这种情况采用的办法为邮件主题括弧中包含内网人员的名字,比如:请转发(<张三>)。根据内网地址簿找到张三的邮件地址转发。一对多邮件也采用此例:请转发(<张三><李四>)。
应该注意的问题:
1. 当邮件发送没有按照指定格式进行发送时,邮件退回生成日志。并且自动给发件人发送包含正确格式的邮件。
2. 起初内网向外网发送邮件时可以在邮件中包含邮件回复时应采用的格式。比如:
由于公司内部采用自动转发邮箱,在给我发邮件时采取在主题名称后添加我的名字,实例:请转发(<发件人的名字>)
3. 张三向内网转发邮件时,如果出现邮箱已满的情况,要生成事件。
4. 所有的邮件转发成功与失败,异常情况都要生成事件,并包含在日志中。
以上是存在的问题。请大家帮忙看看能不能用outlook实现这个邮件的转发过程??