CN102891791B - 一种基于虚拟地址的邮箱群发方法及邮箱群发系统 - Google Patents
一种基于虚拟地址的邮箱群发方法及邮箱群发系统 Download PDFInfo
- Publication number
- CN102891791B CN102891791B CN201210342583.7A CN201210342583A CN102891791B CN 102891791 B CN102891791 B CN 102891791B CN 201210342583 A CN201210342583 A CN 201210342583A CN 102891791 B CN102891791 B CN 102891791B
- Authority
- CN
- China
- Prior art keywords
- items
- addresses
- unit
- virtual
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/48—Message addressing, e.g. address format or anonymous messages, aliases
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/21—Monitoring or handling of messages
- H04L51/212—Monitoring or handling of messages using filtering or selective blocking
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/42—Mailbox-related aspects, e.g. synchronisation of mailboxes
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
- Computer And Data Communications (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种基于虚拟地址的邮箱群发方法,包括:发件方通过邮件用户代理将邮件发送至邮件传输代理;所述邮件传输代理根据所述虚拟邮件地址生成查询请求,并将所述查询请求发送至邮件地址处理器;所述邮件地址处理器根据所述虚拟邮件地址查找实体邮件地址,并将所述实体邮件地址发送至所述邮件传输代理;所述邮件传输代理根据所述实体邮件地址将所述邮件转发至收件方。本发明还公开了一种邮箱群发系统。采用本发明,通过特定的编码技术构建虚拟邮件地址,同时自动为每一个组织架构单元分配一个映射的虚拟邮件地址,避免为每一个组织架构单元创建单独的邮件列表及邮箱维护,大大提高了组织架构复杂的企业的管理效率,不占用额外的系统资源。
Description
技术领域
本发明涉及通信领域,尤其涉及一种基于虚拟地址的邮箱群发方法及邮箱群发系统。
背景技术
企业内部经常需要往一个或多个部门发送邮件,小型企业可以为每个部门设立邮件列表(或称邮件组,包括静态及动态邮件组)来部分解决这个问题。
邮件组是指包括大量成员的整体,邮件组有一个固定的邮件地址,邮件组地址相当于所有组成员(或叫订阅者)的邮件地址的集合。当向邮件组地址发送邮件时,所有组成员的电子邮箱都可以收到邮件,从而达到让使用者避免记住或者选择许多邮件地址的麻烦。同时,使用者也不需要关心邮件组的成员有哪些,以及发生了什么变化。由此而衍生的邮件列表,主要的应用范围包括:专题讨论组,信息发布,信息订阅。邮件列表的产生可以让电子邮件使用者更灵活的使用一对多甚至是多对多的通信方式。另外,邮件列表很早就已经产生,其几乎和电子邮件同时出现并且被广泛使用,和Usenet新闻组不同,邮件列表是完全基于SMTP/MIME协议来传递信息的,不需要专门的比如NNTP协议(网络新闻传递协议)的支持,因而所有的电子邮件客户端都会原生支持。
但对于组织结构庞大的企业而言,为每个部门维护一个邮件地址的开销是不经济的。
邮件列表可以解决一对多/多对多的通信问题,但一般而言,每一个邮件列表都需要一个(或若干个)管理者来管理,对于开放的邮件列表,还允许用户通过“订阅”操作自动加入。其中,静态的邮件列表,需要管理者去维护列表的成员,后来部分邮件系统也提供了动态的邮件列表服务来解决“列表成员需要维护”这个问题,即通过设定一些系统相关的用户关联条件,使得邮件列表的成员能自动产生,而不需要管理员去手工设置每一个成员,也不需要成员去进行订阅。相应地,动态邮件列表一般多用于封闭系统内部,通常只包含系统内的邮件地址,出于内部管理的需要而产生。因此,在部署实施上,静态及动态邮件列表都需要管理员去创建并维护每一个邮件列表的成员或条件,任何部门发生了变更,都需要管理员去维护(动态邮件列表则只在新增部门或删除部门时需要维护),同时,每个邮件列表本身也会占用一定的系统资源。
由上可知,无论是静态还是动态邮件列表,都不能高效的解决拥有组织架构庞大的企业部门间通信的问题,因为需要设置和管理的邮件列表过多,规则的设置以及地址的分配管理所产生的开销都不可忽视。
发明内容
本发明所要解决的技术问题在于,提供一种基于虚拟地址的邮箱群发方法及邮箱群发系统,可通过特定的编码方法构建虚拟邮件地址,同时自动为每一个组织架构单元分配一个映射的虚拟邮件地址,避免为每一个组织架构单元创建单独的邮件列表及邮箱维护,大大提高了组织架构复杂的企业的管理效率。
为了解决上述技术问题,本发明提供了一种基于虚拟地址的邮箱群发方法,包括:发件方通过邮件用户代理将邮件发送至邮件传输代理,所述邮件包括邮件本体及收件方的虚拟邮件地址;所述邮件传输代理根据所述虚拟邮件地址生成查询请求,并将所述查询请求发送至邮件地址处理器,所述查询请求中包含所述虚拟邮件地址;所述邮件地址处理器根据所述虚拟邮件地址查找实体邮件地址,并将所述实体邮件地址发送至所述邮件传输代理;所述邮件传输代理根据所述实体邮件地址将所述邮件转发至收件方。所述虚拟邮件地址由前缀、虚拟用户名及虚拟域名组成,虚拟用户名采用A36编码算法进行编码;A36编码算法是针对邮件地址传递的可逆编码方法,把大小写不敏感的ASCII字符序列编码为字母和数字的组合,其中,所述ASCII字符是仅限于0x20到0x7e之间的字符,大写字母和小写字母等价,加上回车换行和制表符,共72个字符,所述字母和数字的组合是26个字母加10个数字,共36个字符;编码以每5个字符作为一个分组单元,将各分组单元中的5个字符编码为6个新的字符;编码时,根据编码表,先将分组后的每个待编码字符转换为0~71之间的一个整数,再将转换而来的整数除以2求余,即得到一位在0~35之间的输出整数,同时,将每组中剩下的5个余数合并起来,余数的信息量为25,再将合并起来的余数进行转换,得到一位0~31之间的输出整数,从而总共得到6位0~35之间的输出数据,再根据编码表,将输出数据转换为对应的字母或数字,即可得到一组的输出字符,而对于不足5的n个字符输入,则直接丢去不足的位,即可得到n+1位的输出数据。
作为上述方案的改进,所述邮件地址处理器根据收件方的虚拟邮件地址查找实体邮件地址的步骤包括:邮件地址处理器对所述虚拟邮件地址进行解码以解码出单元信息;根据所述单元信息查找出所述单元信息所对应的实体邮件地址;邮件地址处理器根据A36编码算法的逆向算法进行解码,以6个字符为一组进行分组,根据编码表将每个字符转换为0~35之间的整数,前5个整数分别乘以2,将第6个整数转换为二进制数,将乘以2后的前5个整数加上第6个数据对应的余数位,还原得到5个0~71之间的整数,再查找编码表,还原为对应的ASCII字符,得到单元信息。
作为上述方案的改进,所述的基于虚拟地址的邮箱群发方法还包括:邮件地址处理器对单元信息进行编码,生成虚拟邮件地址;将所述虚拟邮件地址与单元信息间的对应关系发送至邮件用户代理。
相应地,本发明还提供了一种邮箱群发系统,包括:邮件用户代理,用于编辑邮件,并将所述邮件发送至邮件传输代理,所述邮件包括邮件本体及收件方的虚拟邮件地址;邮件传输代理,用于根据所述邮件用户代理所发送的邮件生成查询请求,并将所述查询请求发送至邮件地址处理器,同时根据邮件地址处理器所发送的实体邮件地址将所述邮件转发至收件方,所述查询请求中包含所述虚拟邮件地址;邮件地址处理器,用于编码生成虚拟邮件地址以及对虚拟邮件地址的解码处理,查找并发送实体邮件地址至所述邮件传输代理。所述虚拟邮件地址由前缀、虚拟用户名及虚拟域名组成,虚拟用户名采用A36编码算法进行编码;A36编码算法是针对邮件地址传递的可逆编码方法,把大小写不敏感的ASCII字符序列编码为字母和数字的组合,其中,所述ASCII字符是仅限于0x20到0x7e之间的字符,大写字母和小写字母等价,加上回车换行和制表符,共72个字符,所述字母和数字的组合是26个字母加10个数字,共36个字符;编码以每5个字符作为一个分组单元,将各分组单元中的5个字符编码为6个新的字符;编码时,根据编码表,先将分组后的每个待编码字符转换为0~71之间的一个整数,再将转换而来的整数除以2求余,即得到一位在0~35之间的输出整数,同时,将每组中剩下的5个余数合并起来,余数的信息量为25,再将合并起来的余数进行转换,得到一位0~31之间的输出整数,从而总共得到6位0~35之间的输出数据,再根据编码表,将输出数据转换为对应的字母或数字,即可得到一组的输出字符,而对于不足5的n个字符输入,则直接丢去不足的位,即可得到n+1位的输出数据;邮件地址处理器根据A36编码算法的逆向算法进行解码,以6个字符为一组进行分组,根据编码表将每个字符转换为0~35之间的整数,前5个整数分别乘以2,将第6个整数转换为二进制数,将乘以2后的前5个整数加上第6个数据对应的余数位,还原得到5个0~71之间的整数,再查找编码表,还原为对应的ASCII字符,得到单元信息。
作为上述方案的改进,所述邮件地址处理器包括:编码单元,用于根据单元信息进行编码,生成虚拟邮件地址;与所述编码单元相连的第二发送单元,用于将所述虚拟邮件地址与单元信息间的对应关系发送至邮件用户代理;解码单元,用于对所述虚拟邮件地址进行解码以解码出单元信息;与所述解码单元相连的查找单元,用于根据所述解码单元所解码出的单元信息查找相应的实体邮件地址;与所述查找单元相连的第一发送单元,用于将所述查找单元所查找出的实体邮件地址发送至所述邮件传输代理。
作为上述方案的改进,所述邮件传输代理包括:请求单元,用于根据所述邮件用户代理所发送的邮件生成查询请求;与所述请求单元相连的第三发送单元,用于将所述请求单元所生成的查询请求发送至邮件地址处理器;转发单元,用于根据邮件地址处理器所发送的实体邮件地址将所述邮件转发至收件方。
实施本发明实施例,具有如下有益效果:
通过特定的A36编码技术构建虚拟邮件地址,可优化邮件地址的传输,相比base64编码,可以有至少同样高效的实现和更高的编码比率,同时也解决了base64编码空间超出了RFC822所规定的邮件地址可用字符的适用范围的问题。
另外,为每一个组织架构单元分配一个映射的虚拟邮件地址,可避免为每一个组织架构单元创建单独的邮件列表及邮箱维护,从而把管理粒度从单个邮件列表提高到整个组织或整个系统的层面,大大提高了组织架构复杂的企业的管理效率。发件时,邮件传输代理根据编码技术对虚拟邮件地址进行相应的解码,并查找收件人的实体邮件地址以实现邮件的发送。同时,虚拟邮件地址能够把实际递交的邮件地址等细节向用户隐藏,由于虚拟邮件地址是一个轻量级方案,虚拟邮件地址没有真实的邮箱与其对应,不占用额外的系统资源。虚拟邮件地址不需要专用客户端支持也能使用,收件人不需要在邮件中展开,因此,不会导致在群发给一个很大的部门时邮件本身变得庞大,也不会和收件人个数限制等问题的产生矛盾冲突。虚拟邮件地址适用于SMTP(简单邮件传输协议)及所有类似的投递协议,任何客户端收到包含有虚拟邮件地址的信件可直接回复,转发,在回复或转发时虚拟邮箱地址仍然有效,和一般的邮件列表地址并无区别。虚拟邮件地址具备固定及长期有效性,任何客户端均可把虚拟邮件地址保存到地址本并重复使用。虚拟邮件地址只和组织架构单元的内部标识(如部门重命名)有关,但移动等操作都不会改变部门的虚拟邮件地址。
附图说明
图1是本发明一种基于虚拟地址的邮箱群发方法的第一实施例流程图;
图2是本发明一种基于虚拟地址的邮箱群发方法的第二实施例流程图;
图3是本发明一种邮箱群发系统的结构示意图;
图4是本发明一种邮箱群发系统中邮件传输代理的结构示意图;
图5是本发明一种邮箱群发系统中邮件地址处理器的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述。
图1是本发明一种基于虚拟地址的邮箱群发方法的第一实施例流程图,包括:
S100,发件方通过邮件用户代理将邮件发送至邮件传输代理。
所述邮件包括邮件本体及收件方的虚拟邮件地址。
需要说明的是,一个组织中包括多个单元,一个单元内包含多个用户。其中,虚拟邮件地址由单元信息编码后转换而成,用于表示组织中各单元的邮件地址,虚拟邮件地址与单元一一对应,单元信息不同,其虚拟邮件地址也不同。优选地,所述单元信息为单元名称。
例如,在企业中,企业相当于组织,部门相当于单元,员工相当于用户。一个企业包括多个部门,一个部门包含有多个员工,相应地,即虚拟邮件地址用于表示企业中各部门的邮件地址,虚拟邮件地址与部门一一对应。
邮件用户代理将邮件发送至邮件传输代理前,发件方通过邮件用户代理编辑邮件,邮件用户代理查询通讯录,获取组织中的所有单元信息及单元信息所对应的虚拟邮件地址。若发件方通过邮件用户代理向单元内的所有用户群发邮件,则需要以单元为收件方。发件前,既要对邮件本体进行编辑,还要选择收件单元所对应的虚拟邮件地址。另外,在邮件用户代理将邮件发送至邮件传输代理的过程中,邮件用户代理并不需要知道单元中包含哪些用户,更不需管理单元中的用户,大大节省了系统资源。
S101,所述邮件传输代理根据所述虚拟邮件地址生成查询请求,并将所述查询请求发送至邮件地址处理器。
邮件用户代理将邮件发送至邮件传输代理后,邮件传输代理根据虚拟邮件地址生成查询请求,所述查询请求中包含所述虚拟邮件地址。同时,将生成的查询请求发送至邮件地址处理器。
S102,所述邮件地址处理器根据所述收件方的虚拟邮件地址查找实体邮件地址。
需要说明的是,虚拟邮件地址用于表示单元的邮件地址,而单元中包含多个用户,其中,不同用户具有不同的实体邮件地址,因此单元的虚拟邮件地址可对应该单元中所有用户的实体邮件地址。另外,邮件地址处理器中存储有各单元与实体邮件地址的对应关系。邮件地址处理器可根据查询请求中的收件方虚拟邮件地址还原出单元信息,并根据单元信息查找各收件单元内所有用户的实体邮件地址。
S103,将所述实体邮件地址发送至所述邮件传输代理。
S104,所述邮件传输代理根据所述实体邮件地址将所述邮件转发至收件方。
所述邮件传输代理根据所述实体邮件地址将所述邮件递交到相应的路由以投递至收件单元内的所有用户的邮箱中,实新邮箱群发。
例如,组织A中包括有单元A1、A2、A3、A4、A5,其中单元A1中有用户a,单元A2中有用户b及用户c,单元A3中有用户d、用户e、用户f。用户a需将通知以邮件形式转发至单元A2及单元A3中的所有用户。此时,用户a通过邮件用户代理编辑邮件并选择单元A2及单元A3作为接收方。用户a通过邮件用户代理将邮件发送至邮件传输代理。邮件传输代理收到邮件后,生成查询请求并将查询请求发送至邮件地址处理器,所述查询请求中记录有单元A2及单元A3的虚拟邮件地址。邮件地址处理器收到查询请求后,根据查询请求中的收件方虚拟邮件地址还原出单元信息,可知该邮件是需要发送给单元A2及单元A3的所有用户,并根据单元信息查找出单元A2中用户b、用户c的实体邮件地址及单元A3中用户d、用户e、用户f的实体邮件地址。然后,邮件地址处理器将查找出的实体邮件地址发送至邮件传输代理,最后邮件传输代理根据实体邮件地址将邮件分别转发至用户b、用户c、用户d、用户e及用户f的邮箱。
图2是本发明一种基于虚拟地址的邮箱群发方法的第二实施例流程图,包括:
S200,邮件地址处理器根据单元信息进行编码,生成虚拟邮件地址。
需要说明的是,一个组织中包括多个单元,一个单元内包含多个用户。其中,虚拟邮件地址由单元信息编码后转换而成,用于表示组织中各单元的邮件地址,虚拟邮件地址与单元一一对应,单元信息不同,其虚拟邮件地址也不同。优选地,所述单元信息为单元名称。例如,在企业中,企业相当于组织,部门相当于单元,员工相当于用户。一个企业包括多个部门,一个部门包含有多个员工,相应地,即虚拟邮件地址用于表示企业中各部门的邮件地址,虚拟邮件地址与部门一一对应。
所述虚拟邮件地址的编码方式如下:
需要说明的是,所述虚拟邮件地址由前缀、虚拟用户名及虚拟域名组成。
所述前缀为固定的字符"xcm--",所述前缀可用于区别虚拟邮件地址及普通邮件地址。
虚拟域名为单元所属组织的有效域名中任意一个。由于一个组织包括多个单元,即单元均有其所属的组织。例如,组织A中包括有单元A1、A2、A3、A4、A5,即单元A1、A2、A3、A4、A5所属的组织均为组织A。此时,若组织A注册的有效域名有多个,则可提取其中一个作为单元的虚拟域名。优选地,所述提取方式可以是随机,也可以由用户预先设置。
虚拟用户名由单元信息按照一定的编码规则编码而成。
优选地,虚拟用户名采用A36编码算法进行编码,A36编码算法是本发明中一种专门针对邮件地址传递的可逆编码方法,可以把大小写不敏感的ASCII字符序列(仅限于0x20到0x7e之间的字符,大写字母和小写字母认为是等价,加上回车换行和制表符,共72个字符)高效地编码为字母和数字的组合(26个字母加10个数字,共36个字符)。A36编码要求编码前字符串所组成的每一个字符都必须满足以下两个条件:1、必须满足正则[\x09\x0a\x0d\x20-\x7e]。2、每个字符的大小写不敏感,即A和a,Z和z为等价字符。综合上述的两个前提条件,可知,原始信息的每个字符的有效信息量为72。
编码以每5个字符作为一个分组单元,将各分组单元中的5个字符编码为6个新的字符,由于编码前使用72个字符,编码后使用36个字符,因此,编码前每一组的5个字符的有效信息量为725,编码后每一组的6位的编码信息量是366,而366>725已满足一个分组的信息量要求的。编码时,根据编码表,先将分组后的每个待编码字符转换为0~71之间的一个整数,再将转换而来的整数除以2求余,即得到一位在0~35之间的输出整数,同时,将每组中剩下的5个余数(余数为0或1)合并起来,余数的信息量为25(25=32),再将合并起来的余数进行转换,得到一位0~31之间的输出整数,从而总共得到6位0~35之间的输出数据,再根据编码表,将输出数据转换为对应的字母或数字,即可得到一组的输出字符。而对于不足5的n个字符输入,则直接丢去不足的位,即可得到n+1位的输出数据。
相应地,示范编码例子如表1所示:
表1
编码前字符串 | 编码后字符串 |
(空串) | (空串) |
a | bt |
1 | bi |
b | au |
2 | aj |
abc | ftuu |
123 | fijj |
abcde | vtuuvv |
12345 | vijjkk |
abcdeabcde | vtuuvvvtuuvv |
1234567890 | vijjkkkllmmi |
ou:a | l03nt |
ou:a/* | 103nthaf |
ou:a/b | 103nthau |
ou:a/b/* | 103nthcuhf |
foo/bar | ow00hubt2 |
需要说明的是,采用A36编码方法进行编码时,单元信息为ASCII码。相应地,还可以采用其它编码方式对单元信息进行编码以生成虚拟用户名。例如,可以采用Punycode编码方法,此时,单元信息可以为非ASCII码,例如单元信息“产品部”经Punycode编码后,生成的虚拟用户名为“xn--wlqq2m6v3d”。
最后,将前缀、虚拟用户名及虚拟域名组成起来,即可构成完整的虚拟邮件地址。例如,单元A的虚拟域名为“foo.com”,虚拟用户名为“103nthcuhf”,则合并后,单元A的虚拟邮件地址为“xcm--f103nthcuhffoo.com”。
需要说明的是,步骤S200中还可以采用其它编码方式进行编码以生成虚拟邮件地址。
S201,将所述虚拟邮件地址与单元信息间的对应关系发送至邮件用户代理。
编码后,邮件地址处理器创建了虚拟邮件地址与单元信息间一一对应的映射关系,并将所述虚拟邮件地址与单元信息间的对应关系发送至邮件用户代理的通讯录中。
S202,发件方通过邮件用户代理将邮件发送至邮件传输代理。
所述邮件包括邮件本体及收件方的虚拟邮件地址。
邮件用户代理将邮件发送至邮件传输代理前,发件方通过邮件用户代理编辑邮件,邮件用户代理查询通讯录,获取组织中的所有单元信息及单元信息所对应的虚拟邮件地址。若发件方通过邮件用户代理向单元内的所有用户群发邮件,则需要以单元为收件方。发件前,既要对邮件本体进行编辑,还要选择收件单元所对应的虚拟邮件地址。另外,在邮件用户代理将邮件发送至邮件传输代理的过程中,邮件用户代理并不需要知道单元中包含哪些用户,更不需管理单元中的用户,大大节省了系统资源。
需要说明的是,所述步骤S200、S201与步骤S202之间没有必然的先后顺序,进行步骤S202之前并不一定需要进行步骤S200及步骤S201,只有在单元信息出现变化(修改、新增、删除)时,才需运行步骤S200及步骤S201。
S203,所述邮件传输代理生成查询请求并发送至邮件地址处理器。
邮件用户代理将邮件发送至邮件传输代理后,邮件传输代理生成查询请求,所述查询请求中包括收件方的虚拟邮件地址。同时,将生成的查询请求发送至邮件地址处理器。
S204,邮件地址处理器将所述虚拟邮件地址进行解码以解码出单元信息。
需要说明的是,虚拟邮件地址用于表示单元的邮件地址,而单元中包含多个用户,其中,不同用户具有不同的实体邮件地址,因此单元的虚拟邮件地址可对应该单元中所有用户的实体邮件地址。
解码时,需根据步骤S200的编码方法进行解码。
具体的,若采用A36编码进行编码,则邮件地址处理器需根据A36编码算法的逆向算法进行解码。即以6个字符为一组进行分组,根据编码表将每个字符转换为0~35之间的整数,前5个整数分别乘以2,将第6个整数转换为二进制数,将乘以2后的前5个整数加上第6个数据对应的余数位,还原得到5个0~71之间的整数,再查找编码表,还原为对应的ASCII字符,得到单元信息。
S205,根据所述单元信息查找出所述单元信息所对应的实体邮件地址。
需要说明的是,邮件地址处理器中存储有各单元与实体邮件地址的对应关系。邮件地址处理器可根据单元信息查找各收件单元内所有用户的实体邮件地址。
S206,将所述实体邮件地址发送至所述邮件传输代理。
S207,所述邮件传输代理根据所述实体邮件地址将所述邮件转发至收件方。
所述邮件传输代理根据所述实体邮件地址将所述邮件递交到相应的路由以投递至收件单元内的所有用户的邮箱中,实现邮箱群发。
例如,组织A中包括有单元A1、A2、A3、A4、A5,其中单元A1中有用户a,单元A2中有用户b及用户c,单元A3中有用户d、用户e、用户f。用户a需将通知以邮件形式转发至单元A2及单元A3中的所有用户。此时,用户a通过邮件用户代理编辑邮件并选择单元A2及单元A3作为接收方。用户a通过邮件用户代理将邮件发送至邮件传输代理。邮件传输代理收到邮件后,生成查询请求并将查询请求发送至邮件地址处理器,所述查询请求中记录有单元A2及单元A3的虚拟邮件地址。邮件地址处理器收到查询请求后,对查询请求中的收件方虚拟邮件地址进行解码以得出单元信息,由单元信息可知该邮件是需要发送给单元A2及单元A3的所有用户,因此,邮件地址处理器根据单元信息查找出单元A2中用户b、用户c的实体邮件地址及单元A3中用户d、用户e、用户f的实体邮件地址。然后,邮件地址处理器将查找出的实体邮件地址发送至邮件传输代理,最后邮件传输代理根据实体邮件地址将邮件分别转发至用户b、用户c、用户d、用户e及用户f的邮箱。
图3是本发明一种邮箱群发系统1的结构示意图,所述邮箱群发系统1包括邮件用户代理2、邮件传输代理3及邮件地址处理器4。
邮件用户代理2,用于编辑邮件,并将所述邮件发送至邮件传输代理3。所述邮件包括邮件本体及收件方的虚拟邮件地址。
需要说明的是,一个组织中包括多个单元,一个单元内包含多个用户。虚拟邮件地址由邮件地址处理器4对单元信息进行编码后转换而成,用于表示组织中各单元的邮件地址,虚拟邮件地址与单元一一对应。优选地,所述单元信息为单元名称,可有效区分不同单元。
邮件用户代理2将邮件发送至邮件传输代理3前,发件方通过邮件用户代理2编辑邮件,邮件用户代理2查询通讯录,获取组织中的所有单元信息及单元信息所对应的虚拟邮件地址。若发件方通过邮件用户代理2向单元内的所有用户群发邮件,则需要以单元为收件方。发件前,既要对邮件本体进行编辑,还要选择收件单元所对应的虚拟邮件地址。
邮件传输代理3,用于根据所述邮件用户代理1所发送的邮件生成查询请求,并将所述查询请求发送至邮件地址处理器4。同时,根据邮件地址处理器4所发送的实体邮件地址将所述邮件转发至收件方。
所述查询请求中包括收件方的虚拟邮件地址。
邮件地址处理器4,用于编码生成虚拟邮件地址以及对虚拟邮件地址的解码处理,查找并发送实体邮件地址至所述邮件传输代理3。
需要说明的是,所述编码方法与解码方法一一对应。
例如,当发件方通过邮件用户代理2向单元内的所有用户群发邮件时,邮件用户代理2查找通讯录,选择收件单元所对应的虚拟邮件地址,将编辑后的邮件发送至邮件传输代理3。邮件传输代理3根据邮件用户代理2所发送的邮件生成查询请求,并将所述查询请求发送至邮件地址处理器4。邮件地址处理器4对查询请求中的虚拟邮件地址进行解码处理以解码出单元信息,并根据单元信息查找实体邮件地址,同时,发送实体邮件地址至所述邮件传输代理3。邮件传输代理3根据邮件地址处理器4所发送的实体邮件地址将所述邮件转发至单元内所有用户的邮箱中。
另外,邮件地址处理器4预先对单元信息进行编码以生成虚拟邮件地址,并将所述虚拟邮件地址与单元信息间的对应关系发送至邮件用户代理的通讯录中。
图4是本发明一种邮箱群发系统1中邮件传输代理3的结构示意图,包括:
请求单元31,用于根据所述邮件用户代理2所发送的邮件生成查询请求。
与所述请求单元31相连的第三发送单元32,用于将所述请求单元31所生成的查询请求发送至邮件地址处理器。
转发单元33,用于根据邮件地址处理器4所发送的实体邮件地址将所述邮件转发至收件方。
图5是本发明一种邮箱群发系统1中邮件地址处理器4的结构示意图,包括:
编码单元44,用于根据单元信息进行编码,生成虚拟邮件地址。
需要说明的是,一个组织中包括多个单元,一个单元内包含多个用户。其中,虚拟邮件地址由单元信息编码后转换而成,用于表示组织中各单元的邮件地址,虚拟邮件地址与单元一一对应,单元信息不同,其虚拟邮件地址也不同。优选地,所述单元信息为单元名称。
编码单元44对虚拟邮件地址的进行编码方式如下:
需要说明的是,所述虚拟邮件地址由前缀、虚拟用户名及虚拟域名组成。
所述前缀为固定的字符"xcm--",所述前缀可用于区别虚拟邮件地址及普通邮件地址。
虚拟域名为单元所属组织的有效域名中任意一个。由于一个组织包括多个单元,即单元均有其所属的组织。例如,组织A中包括有单元A1、A2、A3、A4、A5,即单元A1、A2、A3、A4、A5所属的组织均为组织A。此时,若组织A注册的有效域名有多个,则可提取其中一个作为单元的虚拟域名。优选地,所述提取方式可以是随机,也可以由用户预先设置。
虚拟用户名由单元信息按照一定的编码规则编码而成。
优选地,虚拟用户名采用A36编码算法进行编码,A36编码算法是本发明中一种专门针对邮件地址传递的可逆编码方法,可以把大小写不敏感的ASCII字符序列(仅限于0x20到0x7e之间的字符,大写字母和小写字母认为是等价,加上回车换行和制表符,共72个字符)高效地编码为字母和数字的组合(26个字母加10个数字,共36个字符)。A36编码要求编码前字符串所组成的每一个字符都必须满足以下两个条件:1、必须满足正则[\x09\x0a\x0d\x20-\x7e]。2、每个字符的大小写不敏感,即A和a,Z和z为等价字符。综合上述的两个前提条件,可知,原始信息的每个字符的有效信息量为72。
编码以每5个字符作为一个分组单元,将各分组单元中的5个字符编码为6个新的字符,由于编码前使用72个字符,编码后使用36个字符,因此,编码前每一组的5个字符的有效信息量为725,编码后每一组的6位的编码信息量是366,而366>725已满足一个分组的信息量要求的。编码时,根据编码表,先将分组后的每个待编码字符转换为0~71之间的一个整数,再将转换而来的整数除以2求余,即得到一位在0~35之间的输出整数,同时,将每组中剩下的5个余数(余数为0或1)合并起来,余数的信息量为25(25=32),再将合并起来的余数进行转换,得到一位0~31之间的输出整数,从而总共得到6位0~35之间的输出数据,再根据编码表,将输出数据转换为对应的字母或数字,即可得到一组的输出字符。而对于不足5的n个字符输入,则直接丢去不足的位,即可得到n+1位的输出数据。
需要说明的是,编码单元44也可以采用其它编码方式进行编码以生成虚拟邮件地址。
第二发送单元45,与所述编码单元44相连,用于将所述虚拟邮件地址与单元信息间的对应关系发送至邮件用户代理。
需要说明的是,编码单元44预先对组织中的单元信息进行编码以生产虚拟邮件地址,并通过第二发送单元45将所述虚拟邮件地址与单元信息间的对应关系发送至邮件用户代理。当发件方通过邮件用户代理2向单元内的所有用户群发邮件时,邮件用户代理2查找通讯录,即可获取单元信息及单元信息所对应的虚拟邮件地址。
解码单元41,用于对所述虚拟邮件地址进行解码以解码出单元信息。
解码时,解码单元41需根据编码单元44的编码方法进行解码。
具体的,若采用A36编码进行编码,则邮件地址处理器需根据A36编码算法的逆向算法进行解码。即以6个字符为一组进行分组,根据编码表将每个字符转换为0~35之间的整数,前5个整数分别乘以2,将第6个整数转换为二进制数,将乘以2后的前5个整数加上第6个数据对应的余数位,还原得到5个0~71之间的整数,再查找编码表,还原为对应的ASCII字符,得到单元信息。
查找单元42,与所述解码单元41相连,用于根据所述解码单元41所解码出的单元信息查找相应的实体邮件地址。
需要说明的是,邮件地址处理器4中存储有各单元与实体邮件地址的对应关系。查找单元42可根据单元信息查找各收件单元内所有用户的实体邮件地址。
第一发送单元43,与所述查找单元42相连,用于将所述查找单元42所查找出的实体邮件地址发送至所述邮件传输代理3。
当发件方通过邮件用户代理2向单元内的所有用户群发邮件时,邮件用户代理2查找通讯录,选择收件单元所对应的虚拟邮件地址,将编辑后的邮件发送至邮件传输代理3。邮件传输代理3在的请求单元31根据邮件用户代理2所发送的邮件生成查询请求,并将所述查询请求通过第三发送单元32发送至邮件地址处理器4。邮件地址处理器4的解码单元41对查询请求中的虚拟邮件地址进行解码处理以解码出单元信息,并由查找单元42根据单元信息查找实体邮件地址,并通过第一发送单元43发送实体邮件地址至所述邮件传输代理3。邮件传输代理3根据邮件地址处理器4所发送的实体邮件地址通过转发单元33将所述邮件转发至实体邮件地址所对应的用户的邮箱中。
由上可知,本发明使用虚拟邮件地址动态来解决部门的电子邮件发送问题,通过特定的编码技术构建虚拟邮件地址,同时自动为每一个组织架构单元分配一个映射的虚拟邮件地址,避免为每一个组织架构单元创建单独的邮件列表及邮箱维护,从而把管理粒度从单个邮件列表提高到整个组织或整个系统的层面,大大提高了组织架构复杂的企业的管理效率。另外,虚拟邮件地址能够把实际递交的邮件地址等细节向用户隐藏,虚拟邮件地址没有真实的邮箱与其对应,不占用额外的系统资源。虚拟邮件地址方案不需要专用客户端支持也能使用,收件人不需要在邮件中展开,因此,不会导致在群发给一个很大的部门时邮件本身变得庞大,也不会和收件人个数限制等问题的产生矛盾冲突。
以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围。
Claims (6)
1.一种基于虚拟地址的邮箱群发方法,其特征在于,包括:
发件方通过邮件用户代理将邮件发送至邮件传输代理,所述邮件包括邮件本体及收件方的虚拟邮件地址;
所述邮件传输代理根据所述虚拟邮件地址生成查询请求,并将所述查询请求发送至邮件地址处理器,所述查询请求中包含所述虚拟邮件地址;
所述邮件地址处理器根据所述虚拟邮件地址查找实体邮件地址,并将所述实体邮件地址发送至所述邮件传输代理;
所述邮件传输代理根据所述实体邮件地址将所述邮件转发至收件方;
所述虚拟邮件地址由前缀、虚拟用户名及虚拟域名组成,虚拟用户名采用A36编码算法进行编码;
A36编码算法是针对邮件地址传递的可逆编码方法,把大小写不敏感的ASCII字符序列编码为字母和数字的组合,其中,所述ASCII字符是仅限于0x20到0x7e之间的字符,大写字母和小写字母等价,加上回车换行和制表符,共72个字符,所述字母和数字的组合是26个字母加10个数字,共36个字符;
编码以每5个字符作为一个分组单元,将各分组单元中的5个字符编码为6个新的字符;
编码时,根据编码表,先将分组后的每个待编码字符转换为0~71之间的一个整数,再将转换而来的整数除以2求余,即得到一位在0~35之间的输出整数,同时,将每组中剩下的5个余数合并起来,余数的信息量为25,再将合并起来的余数进行转换,得到一位0~31之间的输出整数,从而总共得到6位0~35之间的输出数据,再根据编码表,将输出数据转换为对应的字母或数字,即可得到一组的输出字符,而对于不足5的n个字符输入,则直接丢去不足的位,即可得到n+1位的输出数据。
2.如权利要求1所述的基于虚拟地址的邮箱群发方法,其特征在于,所述邮件地址处理器根据收件方的虚拟邮件地址查找实体邮件地址的步骤包括:
邮件地址处理器对所述虚拟邮件地址进行解码以解码出单元信息;
根据所述单元信息查找出所述单元信息所对应的实体邮件地址;
邮件地址处理器根据A36编码算法的逆向算法进行解码,以6个字符为一组进行分组,根据编码表将每个字符转换为0~35之间的整数,前5个整数分别乘以2,将第6个整数转换为二进制数,将乘以2后的前5个整数加上第6个数据对应的余数位,还原得到5个0~71之间的整数,再查找编码表,还原为对应的ASCII字符,得到单元信息。
3.如权利要求1或2所述的基于虚拟地址的邮箱群发方法,其特征在于,还包括:
邮件地址处理器对单元信息进行编码,生成虚拟邮件地址;
将所述虚拟邮件地址与单元信息间的对应关系发送至邮件用户代理。
4.一种邮箱群发系统,其特征在于,包括:
邮件用户代理,用于编辑邮件,并将所述邮件发送至邮件传输代理,所述邮件包括邮件本体及收件方的虚拟邮件地址;
邮件传输代理,用于根据所述邮件用户代理所发送的邮件生成查询请求,并将所述查询请求发送至邮件地址处理器,同时根据邮件地址处理器所发送的实体邮件地址将所述邮件转发至收件方,所述查询请求中包含所述虚拟邮件地址;
邮件地址处理器,用于编码生成虚拟邮件地址以及对虚拟邮件地址的解码处理,查找并发送实体邮件地址至所述邮件传输代理;
所述虚拟邮件地址由前缀、虚拟用户名及虚拟域名组成,虚拟用户名采用A36编码算法进行编码;
A36编码算法是针对邮件地址传递的可逆编码方法,把大小写不敏感的ASCII字符序列编码为字母和数字的组合,其中,所述ASCII字符是仅限于0x20到0x7e之间的字符,大写字母和小写字母等价,加上回车换行和制表符,共72个字符,所述字母和数字的组合是26个字母加10个数字,共36个字符;
编码以每5个字符作为一个分组单元,将各分组单元中的5个字符编码为6个新的字符;
编码时,根据编码表,先将分组后的每个待编码字符转换为0~71之间的一个整数,再将转换而来的整数除以2求余,即得到一位在0~35之间的输出整数,同时,将每组中剩下的5个余数合并起来,余数的信息量为25,再将合并起来的余数进行转换,得到一位0~31之间的输出整数,从而总共得到6位0~35之间的输出数据,再根据编码表,将输出数据转换为对应的字母或数字,即可得到一组的输出字符,而对于不足5的n个字符输入,则直接丢去不足的位,即可得到n+1位的输出数据;
邮件地址处理器根据A36编码算法的逆向算法进行解码,以6个字符为一组进行分组,根据编码表将每个字符转换为0~35之间的整数,前5个整数分别乘以2,将第6个整数转换为二进制数,将乘以2后的前5个整数加上第6个数据对应的余数位,还原得到5个0~71之间的整数,再查找编码表,还原为对应的ASCII字符,得到单元信息。
5.如权利要求4所述的邮箱群发系统,其特征在于,所述邮件地址处理器包括:
编码单元,用于根据单元信息进行编码,生成虚拟邮件地址;
与所述编码单元相连的第二发送单元,用于将所述虚拟邮件地址与单元信息间的对应关系发送至邮件用户代理;
解码单元,用于对所述虚拟邮件地址进行解码以解码出单元信息;
与所述解码单元相连的查找单元,用于根据所述解码单元所解码出的单元信息查找相应的实体邮件地址;
与所述查找单元相连的第一发送单元,用于将所述查找单元所查找出的实体邮件地址发送至所述邮件传输代理。
6.如权利要求4所述的邮箱群发系统,其特征在于,所述邮件传输代理包括:
请求单元,用于根据所述邮件用户代理所发送的邮件生成查询请求;
与所述请求单元相连的第三发送单元,用于将所述请求单元所生成的查询请求发送至邮件地址处理器;
转发单元,用于根据邮件地址处理器所发送的实体邮件地址将所述邮件转发至收件方。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210342583.7A CN102891791B (zh) | 2012-09-17 | 2012-09-17 | 一种基于虚拟地址的邮箱群发方法及邮箱群发系统 |
PCT/CN2012/085136 WO2014040343A1 (zh) | 2012-09-17 | 2012-11-23 | 一种基于虚拟地址的邮箱群发方法及邮箱群发系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210342583.7A CN102891791B (zh) | 2012-09-17 | 2012-09-17 | 一种基于虚拟地址的邮箱群发方法及邮箱群发系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102891791A CN102891791A (zh) | 2013-01-23 |
CN102891791B true CN102891791B (zh) | 2016-04-27 |
Family
ID=47535165
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210342583.7A Active CN102891791B (zh) | 2012-09-17 | 2012-09-17 | 一种基于虚拟地址的邮箱群发方法及邮箱群发系统 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN102891791B (zh) |
WO (1) | WO2014040343A1 (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108737443B (zh) * | 2018-06-14 | 2020-06-02 | 北京大学 | 一种基于密码算法的隐匿邮件地址方法 |
CN110348822B (zh) * | 2019-07-18 | 2023-05-19 | 张统刚 | 一种有助于垃圾邮件防范的智能邮件地址方法 |
CN111798207A (zh) | 2020-06-28 | 2020-10-20 | 字节跳动有限公司 | 一种邮件处理方法、装置、设备和介质 |
CN114866505A (zh) * | 2022-04-12 | 2022-08-05 | 上海蒜芽信息科技有限公司 | 邮件发送方法、系统、设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1501295A (zh) * | 2002-11-13 | 2004-06-02 | 联想(北京)有限公司 | 一种数字邮局系统与电子邮件系统兼容的方法 |
CN1747455A (zh) * | 2004-09-09 | 2006-03-15 | 王学东 | 利用用户识别码发送邮件的系统及方法 |
CN101175048A (zh) * | 2006-05-05 | 2008-05-07 | 国际商业机器公司 | 用于利用可移植的电子邮件地址的方法和服务器 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8677251B2 (en) * | 2008-05-30 | 2014-03-18 | Microsoft Corporation | Creation and suggestion of contact distribution lists |
-
2012
- 2012-09-17 CN CN201210342583.7A patent/CN102891791B/zh active Active
- 2012-11-23 WO PCT/CN2012/085136 patent/WO2014040343A1/zh active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1501295A (zh) * | 2002-11-13 | 2004-06-02 | 联想(北京)有限公司 | 一种数字邮局系统与电子邮件系统兼容的方法 |
CN1747455A (zh) * | 2004-09-09 | 2006-03-15 | 王学东 | 利用用户识别码发送邮件的系统及方法 |
CN101175048A (zh) * | 2006-05-05 | 2008-05-07 | 国际商业机器公司 | 用于利用可移植的电子邮件地址的方法和服务器 |
Also Published As
Publication number | Publication date |
---|---|
WO2014040343A1 (zh) | 2014-03-20 |
CN102891791A (zh) | 2013-01-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8438225B2 (en) | Traversing between electronic mail and real time communications | |
CN101848238B (zh) | 一种工作流程审批方法 | |
CN102891791B (zh) | 一种基于虚拟地址的邮箱群发方法及邮箱群发系统 | |
US20060031309A1 (en) | Electronic mail attachment management system and method | |
CN103903124B (zh) | 一种电子邮件处理方法及装置 | |
CN101917520B (zh) | 移动终端数据的转换/备份方法、设备和系统 | |
KR20060112181A (ko) | 전자 메시지용 스키마 계층구조 | |
CN100566302C (zh) | 电子邮件显示方法及系统 | |
WO2010077580A2 (en) | Inter-carrier management of messaging groups | |
CN101917676A (zh) | 手机短信向即时通信业务平滑过渡的双模式客户端及方法 | |
CN104463556B (zh) | 电子邮件正文引用信息的整理和发现方法及系统 | |
CN100579081C (zh) | 实现邮件快捷回复的方法及其系统 | |
CN104579920A (zh) | 一种邮件发送方法及装置 | |
CN1971595B (zh) | 一种合并电子邮件的方法和系统 | |
CN1971597A (zh) | 一种显示电子邮件历史记录的方法和系统 | |
CN102882767A (zh) | 一种邮件发送方法及邮件发送平台 | |
CN1941749A (zh) | 基于移动即时通信服务的即时电子邮件收发系统 | |
CN101465820B (zh) | 消息发送系统及方法 | |
CN1482829A (zh) | 移动数字邮件系统 | |
CN100588185C (zh) | 一种电子邮件处理系统及方法 | |
CN100369445C (zh) | 基于移动电话号码提供虚拟电子邮箱服务的装置和方法 | |
Wams et al. | Pervasive messaging | |
KR20090113922A (ko) | 이메일 송수신에 사용되는 데이터 전송량 및 통신 횟수를최소화하는 대용량 이메일 전송 시스템 및 그 방법 | |
CN101076018B (zh) | 一种集团即时通讯方法和集团即时通讯系统 | |
CN104581654A (zh) | 一种名片信息的交换方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20180110 Address after: 510000 Guangdong city of Guangzhou province Panyu District Xiaoguwei Street Mingzhi University City Street No. 1 Building 5 building 503 room information hub Patentee after: Critics of science and Technology (Guangzhou) Co. Ltd. Address before: 100080 room 8003, cyber building, No. 19 South Haidian Road, Beijing, Haidian District Patentee before: MaiMailtech (Beijing) Co., Ltd. |
|
TR01 | Transfer of patent right |