异步消息推送方法及系统与流程

文档序号:12278937阅读:880来源:国知局
异步消息推送方法及系统与流程

本发明涉及通信技术领域,尤其涉及一种异步消息推送方法及系统。



背景技术:

在日常的工作中,经常需要发送各类消息给用户,目前常用的发送方式是由业务系统直接发送消息,但由于业务系统直接发送消息大部分属于线性机制(即必须等待消息推送结果返回后才会继续向下运行),如果推送服务器出现故障(比如发送邮件时,邮件服务器崩溃),无法向业务系统返回推送结果,此时,业务系统会一直等待推送结果,而不发送其他消息,造成消息推送延误,影响用户体验。

上述内容仅用于辅助理解本发明的技术方案,并不代表承认上述内容是现有技术。



技术实现要素:

本发明的主要目的在于提供一种异步消息推送方法及系统,旨在解决现有技术中推送服务器出现故障时,业务系统会一直等待推送结果,而不发送其他消息,造成消息推送延误的技术问题。

为实现上述目的,本发明提供一种异步消息推送方法,所述方法包括以下步骤:

获取业务系统发送的待推送消息,所述待推送消息包括:目标用户信息和消息内容;

根据所述待推送消息的消息类型采用异步操作调用不同的推送接口,根据所述目标用户信息通过所述推送接口将所述消息内容推送至对应的目标用户。

优选地,所述根据所述待推送消息的消息类型采用异步操作调用不同的推送接口之前,所述方法还包括:

对所述待推送消息的数据格式进行校验,在校验通过后,执行所述根据所述待推送消息的消息类型采用异步操作调用不同的推送接口的步骤。

优选地,所述目标用户信息为所述业务系统内网的目标用户的用户信息;

相应地,所述获取业务系统发送的待推送消息之后,所述方法还包括:

提取并存储所述待推送消息的中心含义,根据所述中心含义的存储地址生成链接,通过所述目标用户信息查找与所述目标用户信息对应的外网用户信息,根据所述外网用户信息将所述链接推送至对应的外网用户。

优选地,所述根据所述外网用户信息将所述链接推送至对应的外网用户之前,所述方法还包括:

对所述链接进行压缩操作,获得压缩后的链接数据;

所述根据所述外网用户信息将所述链接推送至对应的外网用户,进一步包括:

根据所述外网用户信息将压缩后的链接数据推送至对应的外网用户。

优选地,所述根据所述外网用户信息将所述链接推送至对应的外网用户之后,所述方法还包括:

接收所述外网用户针对所述链接对应的中心含义所反馈的审核信息,并将所述审核信息转发至所述业务系统,以使所述业务系统根据所述审核信息进行处理。

此外,为实现上述目的,本发明还提供一种异步消息推送系统,所述系统包括:

消息获取模块,用于获取业务系统发送的待推送消息,所述待推送消息包括:目标用户信息和消息内容;

异步推送模块,用于根据所述待推送消息的消息类型采用异步操作调用不同的推送接口,根据所述目标用户信息通过所述推送接口将所述消息内容推送至对应的目标用户。

优选地,所述系统还包括:

格式校验模块,用于对所述待推送消息的数据格式进行校验,在校验通过后,调用所述异步推送模块。

优选地,所述目标用户信息为所述业务系统内网的目标用户的用户信息;

相应地,所述系统还包括:

链接推送模块,用于提取并存储所述待推送消息的中心含义,根据所述中心含义的存储地址生成链接,通过所述目标用户信息查找与所述目标用户信息对应的外网用户信息,根据所述外网用户信息将所述链接推送至对应的外网用户。

优选地,所述链接推送模块,还用于对所述链接进行压缩操作,获得压缩后的链接数据,根据所述外网用户信息将压缩后的链接数据推送至对应的外网用户。

优选地,所述系统还包括:

反馈接收模块,用于接收所述外网用户针对所述链接对应的中心含义所反馈的审核信息,并将所述审核信息转发至所述业务系统,以使所述业务系统根据所述审核信息进行处理。

本发明在获取业务系统发送的待推送消息后,根据所述待推送消息的消息类型采用异步操作调用不同的推送接口,根据所述目标用户信息通过所述推送接口将所述消息内容推送至对应的目标用户,由于通过异步操作调用推送接口,从而将待推送消息推送至目标用户,避免了消息延误,提高了用户体验。

附图说明

图1为本发明异步消息推送方法第一实施例的流程示意图;

图2为本发明异步消息推送方法第二实施例的流程示意图;

图3为本发明异步消息推送方法第三实施例的流程示意图;

图4为本发明异步消息推送方法第四实施例的流程示意图;

图5为本发明异步消息推送方法第五实施例的流程示意图;

图6为本发明异步消息推送系统第一实施例的功能模块示意图;

图7为本发明异步消息推送系统第二实施例的功能模块示意图;

图8为本发明异步消息推送系统第三实施例的功能模块示意图;

图9为本发明异步消息推送系统第四实施例的功能模块示意图;

图10为本发明异步消息推送系统第五实施例的功能模块示意图;

本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

参照图1,本发明异步消息推送方法第一实施例提供一种异步消息推送方法,所述方法包括:

S10:获取业务系统发送的待推送消息,所述待推送消息包括:目标用户信息和消息内容;

需要说明的是,本实施例的方法的执行主体为消息系统,即用于对消息进行推送的系统,其可布设于服务器上,本实施例对此不加以限制。

应理解的是,所述消息系统可预留一个web service服务接口,当所述业务系统需要推送待推送消息时,即可调用所述web service服务接口,再按照所述消息系统所支持的数据格式传入数据,当然,假设web service服务接口在不能满足业务系统的需求时,可按接口实现一套新的通知方式即可。

可理解的是,所述业务系统即为用于处理具体业务的系统,例如:办公自动化(Office Automation,OA)系统,当然,还可为其他系统,本实施例对此不加以限制。

在具体实现中,所述目标用户信息即为用于确定待推送消息需推送的目标用户的信息,所述消息内容即为所述待推送消息的正文。

S20:根据所述待推送消息的消息类型采用异步操作调用不同的推送接口,根据所述目标用户信息通过所述推送接口将所述消息内容推送至对应的目标用户。

需要说明的是,所述目标用户可理解为目标用户的用户设备,所述用户设备可为移动终端或PC端,所述移动终端可为智能手机、平板电脑、掌上电脑(PDA)或专用终端等设备,本实施例对此不加以限制。

应理解的是,由于待推送消息按照消息类型划分,即可分为邮件、短信或微信等类型;

以所述待推送消息是邮件为例,其对应的目标用户信息为目标邮箱信息,其对应的消息内容即为邮件正文;

以所述待推送消息是短信为例,其对应的目标用户信息为目标手机号,其对应的消息内容即为短信正文;

以所述待推送消息是微信为例,其对应的目标用户信息为目标微信号,其对应的消息内容即为微信正文。

可理解的是,所述异步操作即是并行处理的方式,例如:待推送消息共有20条,如果按照现有技术,则会由业务系统将20条待推送消息进行依次推送,每推送1条待推送消息,都需要等待推送结果,在推送服务器出现故障的情况下,非常容易产生消息延误,而本实施例通过异步操作的方式,并行处理这20条待推送消息,即将这20条待推送消息同时推送出去,20条待推送消息之间不会互相影响,从而避免了消息延误,提高了用户体验。

当然,这20条待推送消息可能具有不同的消息类型,例如:这20条待推送消息中的6条待推送消息为邮件,4条待推送消息为短信,剩余的10条待推送消息为微信,故而,会预设与各消息类型对应的推送接口,在推送所述待推送消息时,分别调用对应的推送接口来推送所述待推送消息。

本实施例在获取业务系统发送的待推送消息后,根据所述待推送消息的消息类型采用异步操作调用不同的推送接口,根据所述目标用户信息通过所述推送接口将所述消息内容推送至对应的目标用户,由于通过异步操作调用推送接口,从而将待推送消息推送至目标用户,避免了消息延误,提高了用户体验。

参照图2,图2为本发明异步消息推送方法第二实施例的流程示意图,基于上述图1所示的实施例,基于第一实施例提出本发明异步消息推送方法的第二实施例。

在本实施例中,步骤S20之前,所述方法还包括:

S200:对所述待推送消息的数据格式进行校验,在校验通过后,执行所述步骤S20。

由于不同消息类型的数据格式会存在一些差异,例如:对于待推送消息为邮件而言,由于其对应的目标用户信息为目标邮箱信息,故而,所述待推送消息中需要具有满足邮箱格式的部分,而对于待推送消息为短信而言,由于其对应的目标用户信息为目标手机号,故而,所述待推送消息中需要具有满足手机号格式的部分。

在具体实现中,待推送消息中的数据格式可能存在问题,例如:待推送消息中的目标邮箱信息不满足邮箱格式,导致待推送消息无法推送出去,为了防止出现该问题,本实施例中会先对所述待推送消息的数据格式进行校验,在校验通过后,再执行步骤S20。

当然,假设校验不通过,可进行校验不通过的提示等处理,而先不执行步骤S20,在重复校验通过后,再执行步骤S20。

参照图3,图3为本发明异步消息推送方法第三实施例的流程示意图,基于上述图1或图2所示的实施例,基于第一实施例或第二实施例提出本发明异步消息推送方法的第三实施例,图3以基于第一实施例提出的实施例为例。

本实施例中,所述目标用户信息为所述业务系统内网的目标用户的用户信息;

相应地,所述步骤S10之后,所述方法还包括:

S30:提取并存储所述待推送消息的中心含义,根据所述中心含义的存储地址生成链接,通过所述目标用户信息查找与所述目标用户信息对应的外网用户信息,根据所述外网用户信息将所述链接推送至对应的外网用户。

需要说明的是,由于业务系统很有可能是部署于内网中的业务系统,例如:部署于内网中的OA系统,在此情况下,所述待推送消息的消息类型通常局限于邮件等用于内网传输的消息,相应地,业务系统无法连接外网,也就是说,在消息推送时,通常也是直接推送给业务系统内网的目标用户。

但这样会导致在用户出差或外出等不方便进入内网的情况下,不便于使用所述OA系统,无法查看所述待推送消息,为避免该问题,本实施例中,提取并存储所述待推送消息的中心含义,根据所述中心含义的存储地址生成链接,通过所述目标用户信息查找与所述目标用户信息对应的外网用户信息,根据所述外网用户信息将所述链接推送至对应的外网用户。

需要说明的是,由于所述业务系统部署于内网,无需暴露在因特网上,提高了安全性。

可理解的是,所述中心含义是从所述待推送消息的消息内容中提取,其反映了所述消息内容的核心含义。

在具体实现中个,为便于查找与所述目标用户信息对应的外网用户信息,可预先设置一个目标用户信息和外网用户信息的映射关系表,在需要查找与所述目标用户信息对应的外网用户信息时,可直接通过所述目标用户信息在所述映射关系表中进行查找,例如:在OA系统中,对于一个内网用户可预留一个或多个外网用户信息,将该内网用户信息与预留的外网用户信息建立对应关系,并添加至所述映射关系表中。

需要说明的是,所述链接可为统一资源定位符(Uniform Resoure Locator,URL),其用于反映所述中心含义的存储地址,也就是说,在触发所述链接时,会从所述存储地址中确定并展示所述中心含义。

参照图4,图4为本发明异步消息推送方法第四实施例的流程示意图,基于上述图3所示的实施例,基于第三实施例提出本发明异步消息推送方法的第四实施例。

本实施例中,步骤S30中,根据所述外网用户信息将所述链接推送至对应的外网用户之前,所述方法还包括:

对所述链接进行压缩操作,获得压缩后的链接数据;

步骤S30中,根据所述外网用户信息将所述链接推送至对应的外网用户,进一步包括:

根据所述外网用户信息将压缩后的链接数据推送至对应的外网用户。

可理解的是,所述链接通常较长,例如:32字节,但在传输的过程中,可能会较为浪费流量,为避免该问题,同时为了保密需要,本实施例中,会将所述链接进行压缩操作,再将压缩后的链接数据推送至对应的外网用户。

需要说明的是,在所述外网用户的用户设备接收到所述压缩后的链接数据后,会先对所述压缩后的链接数据进行解压缩,再进行展示。

当然,所述压缩可采用多种算法,本实施例对此不加以限制。

参照图5,图5为本发明异步消息推送方法第五实施例的流程示意图,基于上述图4所示的实施例,基于第四实施例提出本发明异步消息推送方法的第五实施例。

本实施例中,步骤S30之后,所述方法还包括:

S40:接收所述外网用户针对所述链接对应的中心含义所反馈的审核信息,并将所述审核信息转发至所述业务系统,以使所述业务系统根据所述审核信息进行处理。

可理解的是,假设所述业务系统为OA系统,可能会存在一些特殊情况,例如:员工发送待推送消息请示领导,但领导出差或外出等不方便进入内网的情况,为对该特殊情况进行处理,可将所述链接推送至所述领导的外网设备,在领导看到所述中心含义后,可对所述待推送消息进行审核,也就是说,领导可在外网设备上输入是否批准所述待推送消息的审核信息,然后,即可接受所述外网用户针对所述链接对应的中心含义所反馈的审核信息,并将所述审核信息转发至所述业务系统,以使所述业务系统根据所述审核信息进行后续的处理。

参照图6,本发明异步消息推送系统第一实施例提供一种异步消息推送系统,所述系统包括:

消息获取模块10,用于获取业务系统发送的待推送消息,所述待推送消息包括:目标用户信息和消息内容;

需要说明的是,本实施例的系统,可布设于服务器上,本实施例对此不加以限制。

可理解的是,所述业务系统即为用于处理具体业务的系统,例如:办公自动化(Office Automation,OA)系统,当然,还可为其他系统,本实施例对此不加以限制。

在具体实现中,所述目标用户信息即为用于确定待推送消息需推送的目标用户的信息,所述消息内容即为所述待推送消息的正文。

异步推送模块20,用于根据所述待推送消息的消息类型采用异步操作调用不同的推送接口,根据所述目标用户信息通过所述推送接口将所述消息内容推送至对应的目标用户。

应理解的是,由于待推送消息按照消息类型划分,即可分为邮件、短信或微信等类型;

以所述待推送消息是邮件为例,其对应的目标用户信息为目标邮箱信息,其对应的消息内容即为邮件正文;

以所述待推送消息是短信为例,其对应的目标用户信息为目标手机号,其对应的消息内容即为短信正文;

以所述待推送消息是微信为例,其对应的目标用户信息为目标微信号,其对应的消息内容即为微信正文。

可理解的是,所述异步操作即是并行处理的方式,例如:待推送消息共有20条,如果按照现有技术,则会由业务系统将20条待推送消息进行依次推送,每推送1条待推送消息,都需要等待推送结果,在推送服务器出现故障的情况下,非常容易产生消息延误,而本实施例通过异步操作的方式,并行处理这20条待推送消息,即将这20条待推送消息同时推送出去,20条待推送消息之间不会互相影响,从而避免了消息延误,提高了用户体验。

当然,这20条待推送消息可能具有不同的消息类型,例如:这20条待推送消息中的6条待推送消息为邮件,4条待推送消息为短信,剩余的10条待推送消息为微信,故而,会预设与各消息类型对应的推送接口,在推送所述待推送消息时,分别调用对应的推送接口来推送所述待推送消息。

本实施例在获取业务系统发送的待推送消息后,根据所述待推送消息的消息类型采用异步操作调用不同的推送接口,根据所述目标用户信息通过所述推送接口将所述消息内容推送至对应的目标用户,由于通过异步操作调用推送接口,从而将待推送消息推送至目标用户,避免了消息延误,提高了用户体验。

参照图7,图7为本发明异步消息推送系统第二实施例的功能模块示意图,基于上述图6所示的实施例,基于第一实施例提出本发明异步消息推送系统的第二实施例。

在本实施例中,所述系统还包括:

格式校验模块200,用于对所述待推送消息的数据格式进行校验,在校验通过后,调用所述异步推送模块20。

由于不同消息类型的数据格式会存在一些差异,例如:对于待推送消息为邮件而言,由于其对应的目标用户信息为目标邮箱信息,故而,所述待推送消息中需要具有满足邮箱格式的部分,而对于待推送消息为短信而言,由于其对应的目标用户信息为目标手机号,故而,所述待推送消息中需要具有满足手机号格式的部分。

在具体实现中,待推送消息中的数据格式可能存在问题,例如:待推送消息中的目标邮箱信息不满足邮箱格式,导致待推送消息无法推送出去,为了防止出现该问题,本实施例中会先对所述待推送消息的数据格式进行校验,在校验通过后,再调用所述异步推送模块20。

当然,假设校验不通过,可进行校验不通过的提示等处理,而先不调用所述异步推送模块20,在重复校验通过后,再调用所述异步推送模块20。

参照图8,图8为本发明异步消息推送系统第三实施例的功能模块示意图,基于上述图6或图7所示的实施例,基于第一实施例或第二实施例提出本发明异步消息推送系统的第三实施例,图8以基于第一实施例提出的实施例为例。

本实施例中,所述目标用户信息为所述业务系统内网的目标用户的用户信息;

相应地,所述系统还包括:

链接推送模块30,用于提取并存储所述待推送消息的中心含义,根据所述中心含义的存储地址生成链接,通过所述目标用户信息查找与所述目标用户信息对应的外网用户信息,根据所述外网用户信息将所述链接推送至对应的外网用户。

需要说明的是,由于业务系统很有可能是部署于内网中的业务系统,例如:部署于内网中的OA系统,在此情况下,所述待推送消息的消息类型通常局限于邮件等用于内网传输的消息,相应地,业务系统无法连接外网,也就是说,在消息推送时,通常也是直接推送给业务系统内网的目标用户。

但这样会导致在用户出差或外出等不方便进入内网的情况下,不便于使用所述OA系统,无法查看所述待推送消息,为避免该问题,本实施例中,提取并存储所述待推送消息的中心含义,根据所述中心含义的存储地址生成链接,通过所述目标用户信息查找与所述目标用户信息对应的外网用户信息,根据所述外网用户信息将所述链接推送至对应的外网用户。

可理解的是,所述中心含义是从所述待推送消息的消息内容中提取,其反映了所述消息内容的核心含义。

在具体实现中个,为便于查找与所述目标用户信息对应的外网用户信息,可预先设置一个目标用户信息和外网用户信息的映射关系表,在需要查找与所述目标用户信息对应的外网用户信息时,可直接通过所述目标用户信息在所述映射关系表中进行查找,例如:在OA系统中,对于一个内网用户可预留一个或多个外网用户信息,将该内网用户信息与预留的外网用户信息建立对应关系,并添加至所述映射关系表中。

需要说明的是,所述链接可为统一资源定位符(Uniform Resoure Locator,URL),其用于反映所述中心含义的存储地址,也就是说,在触发所述链接时,会从所述存储地址中确定并展示所述中心含义。

参照图9,图9为本发明异步消息推送系统第四实施例的功能模块示意图,基于上述图8所示的实施例,基于第三实施例提出本发明异步消息推送系统的第四实施例。

本实施例中,所述链接推送模块,还用于对所述链接进行压缩操作,获得压缩后的链接数据,根据所述外网用户信息将压缩后的链接数据推送至对应的外网用户。

可理解的是,所述链接通常较长,例如:32字节,但在传输的过程中,可能会较为浪费流量,为避免该问题,同时为了保密需要,本实施例中,会将所述链接进行压缩操作,再将压缩后的链接数据推送至对应的外网用户。

需要说明的是,在所述外网用户的用户设备接收到所述压缩后的链接数据后,会先对所述压缩后的链接数据进行解压缩,再进行展示。

当然,所述压缩可采用多种算法,本实施例对此不加以限制。

参照图10,图10为本发明异步消息推送系统第五实施例的功能模块示意图,基于上述图9所示的实施例,基于第四实施例提出本发明异步消息推送系统的第五实施例。

本实施例中,所述系统还包括:

反馈接收模块40,用于接收所述外网用户针对所述链接对应的中心含义所反馈的审核信息,并将所述审核信息转发至所述业务系统,以使所述业务系统根据所述审核信息进行处理。

可理解的是,假设所述业务系统为OA系统,可能会存在一些特殊情况,例如:员工发送待推送消息请示领导,但领导出差或外出等不方便进入内网的情况,为对该特殊情况进行处理,可将所述链接推送至所述领导的外网设备,在领导看到所述中心含义后,可对所述待推送消息进行审核,也就是说,领导可在外网设备上输入是否批准所述待推送消息的审核信息,然后,即可接受所述外网用户针对所述链接对应的中心含义所反馈的审核信息,并将所述审核信息转发至所述业务系统,以使所述业务系统根据所述审核信息进行后续的处理。

需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。

上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。

以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1