消息推送系统及其方法

文档序号:7824203阅读:220来源:国知局
消息推送系统及其方法
【专利摘要】本发明提供一种消息推送系统及其方法,所述消息推送系统包括:资源服务器,用于储存要向移动终端推动的消息;消息监测服务器,用于当移动终端处于解锁状态时,监听于UDP传输信道,接收自所述移动终端发送的检测指令,所述消息监测服务器检测所述资源服务器内是否有向移动终端推动的消息;若有,则所述资源服务器向所述移动终端推送消息;第一推送服务器,用于当移动终端处于待机状态时,轮询所述资源服务器内是否有要向移动终端推动的消息,若有,则推送所述消息至一第三方的第二推送服务器,所述第二推送服务器向所述移动终端推送消息。这样的分时处理使得移动终端能够及时得获得推送的消息,提高了整个推送系统的数据传输的速度。
【专利说明】消息推送系统及其方法

【技术领域】
[0001]本发明涉及移动设备处理领域,并且更具体地,涉及消息推送的系统及其方法。

【背景技术】
[0002]移动终端(膝上计算机、掌上计算机、移动电话、智能电话、多媒体电话、便携媒体播放器、GPS单元、移动游戏系统等)的用户可能安装了从服务器接收通知消息的应用。例如,这种应用包括“推送(push) ”电子邮件服务(例如,MobileMe、Microsoft Exchange、ActiveSync、Push_IMAP、Yahoo ! Push等)或其它推送服务(例如,更新/升级服务、新闻服务、博客服务、播客服务、社交网络服务,或可能发送通知消息的其他类型的服务)。
[0003]特别地,可以通过设立一个系统推送服务器来统筹从各个应用的推送服务器来的推送消息。例如,将从各个应用的推送服务器发出的推送消息,先统一推送至系统推送服务器,再由系统推送服务器针对移动终端进行消息推送。或者还有的是系统推送服务器轮询各个应用的推送服务器,当有需要推送的消息时,直接提取并推送至移动终端。也就是说,无论移动终端是否运行客户端,各类消息都经由一个统一的系统推送服务器进行推送,这样的推送机制使得推送消息并不能即时推送至移动终端,并且受制于系统推送服务器本身的处理效率,以及应用的推送服务器、系统推送服务器、移动终端三者之间的实际交互情况等等,容易造成消息传输的阻滞。
[0004]另外,现有技术中,需推送至移动终端的消息大部分是通过TCP (Transmiss1nControl Protocol,传输控制协议)进行推送的。同时,现有移动终端在待机情况下,不能通过UDP(User Data Protocol,用户数据报协议)通讯信道进行通讯,但是可以保持TCP长连接。
[0005]其中,TCP是基于连接的协议,也就是说,在正式收发数据前,必须和对方建立可靠的连接。一般TCP连接至少要经过三次“对话”才能建立起来。UDP是与TCP相对应的协议。它是面向非连接的协议,它不需要与对方建立连接,而是直接就把数据包发送过去。正是TCP协议和UDP协议的这些特性,导致基于TCP协议的消息推送所用的时间较长。另外,保持TCP连接对系统资源的占用也更多。而基于UDP来进行消息推送的速度更快,其对系统资源的占用也更少。


【发明内容】

[0006]为了解决上述技术问题,本发明提供消息推送系统及其方法,加快消息推送的速度,减少对系统资源的占用。
[0007]本发明的消息推送系统,包括:资源服务器,用于储存要向移动终端推动的消息;消息监测服务器,用于当移动终端处于解锁状态时,监听于UDP传输信道,接收自所述移动终端发送的检测指令,所述消息监测服务器检测所述资源服务器内是否有向移动终端推动的消息;若有,则所述资源服务器向所述移动终端推送消息;第一推送服务器,用于当移动终端处于待机状态时,轮询所述资源服务器内是否有要向移动终端推动的消息,若有,则推送所述消息至一第三方的第二推送服务器,所述第二推送服务器向所述移动终端推送消息。
[0008]优选地,所述第二推送服务器与所述移动终端之间保持扣?长连接。
[0009]根据本发明的另一个方面,还提供一种消息推送方法,采用上述消息推送系统,其特征在于,当所述移动终端解锁时,所述移动终端通过耶?传输信道发送检测指令到所述消息监测服务器;所述消息监测服务器检测所述资源服务器内是否有要向移动终端推动的消息,若有,则所述资源服务器向所述移动终端推送消息。
[0010]优选地,当所述消息被推送后,该消息从所述资源服务器删除。
[0011]优选地,所述资源服务器基于肌1?协议向所述移动终端推送消息。
[0012]优选地,所述移动终端执行第一操作时向所述消息检测服务器发送所述检测指令,其中,所述第一操作包括如下操作中的一种或多种:所述移动终端的屏幕的滑动操作,包括上拉、下拉或者左右滑动;所述移动终端的屏幕的点击操作;所述移动终端的按键的点击操作;或者所述移动终端相应外接输入设备的输入操作。
[0013]优选地,所述移动终端以第一时间间隔为周期向所述消息检测服务器发送所述检测指令。
[0014]优选地,随所述移动终端的网络带宽增加,所述第一时间间隔减少。
[0015]优选地,所述第一时间间隔为1至15秒之间的任意长度。
[0016]本发明对移动终端的消息推送机制进行了分时处理,也就是说在移动终端解锁时,移动终端通过仙?传输信道检测是否有新的数据,若有,则移动终端直接向资源服务器请求以获取要向移动终端推送的消息。在移动终端待机时,由第二推送服务器(第三方)向移动终端推送消息。这样的分时处理使得移动终端能够及时得获得推送的消息,提高了整个推送系统的数据传输的速度。

【专利附图】

【附图说明】
[0017]通过参照附图详细描述其示例实施方式,本发明的上述和其它特征及优点将变得更加明显。
[0018]图1示出根据本发明的消息推送方法的流程图;
[0019]图2示出第一实施例中移动终端解锁时的消息推送系统的拓扑图;
[0020]图3示出第一实施例中移动终端解锁时的消息推送方法的时序图;
[0021]图4示出第二实施例中移动终端待机时的消息推送系统的拓扑图;以及
[0022]图5示出第二实施例中移动终端待机时的消息推送系统的时序图。

【具体实施方式】
[0023]现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的实施方式;相反,提供这些实施方式使得本发明将全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。在图中相同的附图标记表示相同或类似的结构,因而将省略它们的详细描述。
[0024]本发明在移动终端解锁和待机两种情况下使用不同的消息推送机制以使移动终端及时获得推送消息,提高整个推送系统的传输的速度,同时减少系统资源的占用。具体而言,本发明的消息推送方法的流程图如图1所示,共有6个步骤。
[0025]首先为步骤3101,判断移动终端是否解锁。
[0026]具体而言,该步骤可以由移动终端来检测,也可以由本发明提供的消息推送系统或者第三方的推送服务器检测。本领域技术人员可以理解,在此不予赘述。
[0027]其中,移动终端解锁可以包括移动终端运行一应用程序,或者移动终端使用其他操作。
[0028]若步骤3101的判断结果是移动终端解锁,则继续执行步骤3102。
[0029]步骤3102,移动终端通过口0?传输信道与消息推送系统通信以检测是否有需要向移动终端推送的消息。
[0030]其中,移动终端通过口0?传输信道向本发明提供的消息推送系统发送检测指令以检测是否有需要向移动终端推送的消息。若消息推送系统检测到需要向移动终端推送的消息,则继续执行步骤3103。若消息推送系统没有检测到有需要向移动终端推送的消息,则移动终端继续向消息推送系统发送检测指令。
[0031]步骤3103,消息推送系统将需要向移动终端推送的消息推送至移动终端。
[0032]其中,该消息基于肌1?协议被推送至移动终端。
[0033]若步骤3101的判断结果移动终端没有解锁,也就是移动终端处于待机状态,则执行步骤3104。
[0034]步骤3104,消息推送系统轮询是否有需要向移动终端推送的消息。
[0035]步骤3105,若有需要向移动终端推送的消息,则消息推送系统将该消息推送至一第三方的推送服务器。
[0036]步骤3106,该第三方的推送服务器将该消息推送至移动终端。
[0037]其中,第三方的推送服务器与移动终端保持扣?长连接,并通过扣?长连接来传输指示信息。
[0038]在图1的一个具体实施例中,上述推送消息显示在移动终端屏幕的下拉菜单中,用户看见上述推送消息想要获取更详细的信息,则点击该消息以打开客户端以获取更详细的信息。
[0039]第一实施例
[0040]第一实施例中,结合图2的拓扑图以及图3的时序图进一步细化了步骤3102以及步骤3103所描述的移动终端解锁时的消息推送系统对移动终端进行的消息推送。
[0041]消息推送系统10包括:资源服务器101、消息监测服务器102以及第一推送服务器103。其中,资源服务器101、消息监测服务器102以及第一推送服务器103优选地通过一局域网互相通讯,在一个变化例中,资源服务器101、消息监测服务器102以及第一推送服务器103也可以分别接入互联网以互相通讯。
[0042]移动终端20通过移动网络接入点30接入移动网络,并通过移动网络与消息推送系统10的各个服务器相通讯。在一个变化例中,移动终端20通过一无线网络接入点(例如路由器)接入无线网络。本领域技术人员可以实现更多移动终端20接入网络的实施方式,在此不予赘述。具体而言,移动终端20与资源服务器101的通讯基于!117?协议。移动终端20与消息监测服务器102的通讯基于仙?协议。
[0043]资源服务器101储存了需要向移动终端20推送的消息。进一步地,资源服务器101还可以储存移动终端20的标识信息、历史操作数据或者该移动终端20与其他移动终端之间的关联信息等等。在本发明的一个实施例中,资源服务器101包括多个数据堆栈,用于处理向多个移动终端20推送的消息。本领域技术人员理解,数据堆栈与移动终端20的对应关系可以有多种不同的变化。例如,一个数据堆栈与一个移动终端20相对应以管理该移动终端20的推送消息。或者,多个数据堆栈与多个移动终端相对应,该多个移动终端20具有相同的属性,例如,属于同一个群组,或者接收同一类新闻等等,该多个数据堆栈分别管理不同种类的移动终端20的推送消息。本领域技术人员利用现有技术可以实现更多的变化例,具体地,在此不予赘述。
[0044]当移动终端20解锁时,消息监测服务器102监听于仙?传输信道,接收自移动终端20发送一检测指令,并检测资源服务器101内是否有需要向移动终端20推送的消息。
[0045]第一推送服务器103,在移动终端待机时,轮询资源服务器101内是否有需要向移动终端20推送的消息并通过一第三方的推送服务器向移动终端20推送消息。
[0046]具体而言,本发明通过如下步骤实现移动终端解锁时的消息推送:
[0047]首先是步骤3301,移动终端20以一检测规则向消息监测服务器102发送一检测指令,该检测指令用于检测资源服务器101内是否有需要向移动终端推送的消息。其中,该检测指令基于仙?协议发送。
[0048]优选地,检测规则是移动终端20以一定时间间隔为周期向消息监测服务器102发送检测指令。该时间间隔可以是1至15秒中任一长度。例如,移动终端20以5秒为周期向消息监测服务器102发送检测指令。
[0049]在上述检测规则的一个变化例中,当移动终端20的网络带宽增加时,该时间间隔相应减少。也就是说,当移动终端20的网速增加时,减少检测指令的发送周期。例如,在移动终端20接入移动网络(如3(}网络)时的网络带宽明显小于移动终端20通过一路由器接入无线网络时的网络带宽(如犯?〗),则当移动终端20接入移动网络时,以10秒为周期向消息监测服务器102发送检测指令,而当移动终端20接入无线网络时,以5秒为周期向消息监测服务器102发送检测指令。
[0050]在上述检测规则的又一变化例中,该检测规则是当移动终端20执行某一操作时向消息监测服务器102发送检测指令。例如,当移动终端20的屏幕是触摸屏,则用户通过对屏幕的滑动使得移动终端20接收屏幕具有上拉、下拉或者左右滑动的操作数据时,移动终端20向消息监测服务器发送检测指令。又例如,当移动终端20的屏幕是触摸屏,则用户通过对屏幕的点击使得移动终端20接收屏幕被点击的操作数据时,移动终端20向消息监测服务器发送检测指令。再例如,用户对移动终端20的按键的点击操作或者移动终端20相应外接输入设备的输入操作等都可以触发移动终端20向消息监测服务器发送检测指令。
[0051]步骤3302,消息监测服务器102监听于仙?传输信道,当接收到移动终端20基于口0?传输信道传输的检测指令后,向资源服务器101检测是否有需要向移动终端20推送的消息。
[0052]步骤3303,当有需要向移动终端20推送的消息时,消息监测服务器102通过口0?传输信道向移动终端20返回检测结果。
[0053]步骤3304,移动终端20向资源服务器101发送请求信息以获取推送消息。其中,该请求信息基于肌了?协议发送。
[0054]步骤3305,资源服务器101将推送消息发送至移动终端20。其中,该推送消息基于肌1?协议发送。
[0055]在步骤3305 —个优选例中,当资源服务器101将推送消息发送至移动终端20后,将推送消息从资源服务器101中删除。
[0056]在步骤3305 —个变化例中,上述步骤3303和步骤3304可以省略。也就是说,当有需要向移动各终端20推送的消息时,直接执行步骤3305,资源服务器101将推送发送至移动终端20,这种方式只需要三个步骤就能完成消息推送,并且,仅在最后的消息发送时才使用到扣?长连接,所消耗的时间最短,一般为5秒,并且减少了通讯资源的占用。
[0057]通常,在现有的消息推送中,检测指令都是由!III?协议发送的,需要通过三次握手协议来能实现,耗时很长且占用了通讯资源。鉴于此类消息推送的检测指令都是周期性反复发送的,本发明通过使用仙?传输通道来传输检测指令,缩短了消息推送的时间并且减少了通讯资源的占用。
[0058]第二实施例
[0059]第二实施例中,结合图4的拓扑图以及图5的时序图进一步细化了步骤3103至步骤3106所描述的移动终端待机时的消息推送系统对移动终端进行的消息推送。
[0060]与第一实施例不同的是,图4还示出了一第三方系统的第二推送服务器40。第二推送服务器40优选地,为移动终端20的操作系统的推送服务器。
[0061]其中,第二推送服务器40通过无线网络与第一推送服务器102相通讯。第二推送服务器40通过无线网络与移动终端20相通讯,其中,第二推送服务器40与移动终端20保持丁⑶长连接。
[0062]第一推送服务器103和第二推送服务器40协同向移动终端20推送消息。
[0063]具体而言,本发明通过如下步骤实现移动终端待机时的消息推送:
[0064]首先是步骤3501,第一推送服务器103与资源服务器101相通讯以轮询资源服务器101是否有需要向移动终端推送的消息。
[0065]步骤3502,当有需要向移动终端推送的消息时,第一推送服务器103将该消息发送至第二推送服务器40。
[0066]步骤3503,第二推送服务器40收到上述信息后,通过扣?协议将该消息推送至移动终端20。
[0067]现有的移动终端20在解锁和待机的情况下都进行图5所示的消息推送机制,移动终端20需要与第二推送服务器40保持扣?长连接,当第一推送服务器103轮询资源服务器101有需要向移动终端20推送的消息,并通过第二推送服务器40向移动终端20推送该消息通常需要13秒的时间。
[0068]而仙?传输信道具有处理速度快,信息传输占用资源消耗小的优点,在移动终端20解锁时采用这样的设置能够有效提高新的消息检测时的速度和效率,进一步提高消息推送的速度。
[0069]使用了本发明的仙?检测机制,当移动终端20解锁时,消息监测服务器102检测到资源服务器101有需要向移动终端20推送的消息,并直接通过资源服务器101向移动终端20推送该消息(如第一实施例所述)则只需要5秒的时间,大大缩短了消息的推送时间,减小了用户的等待时间,提高了用户体验。
[0070]综上可知,本发明对移动终端的消息推送机制进行了分时处理,也就是说在移动终端解锁时,移动终端通过耶?传输信道检测是否有新的数据,若有,则移动终端直接向资源服务器请求以获取要向移动终端推送的消息。在移动终端待机时,由第二推送服务器(第三方)向移动终端推送消息。这样的分时处理使得移动终端能够及时得获得推送的消息,提高了整个推送系统的数据传输的速度。
[0071]以上具体地示出和描述了本发明的示例性实施方式。应该理解,本发明不限于所公开的实施方式,相反,本发明意图涵盖包含在所附权利要求的精神和范围内的各种修改和等效布置。
【权利要求】
1.一种消息推送系统,其特征在于,包括: 资源服务器,用于储存要向移动终端推动的消息; 消息监测服务器,用于当移动终端处于解锁状态时,监听于UDP传输信道,接收自所述移动终端发送的检测指令,所述消息监测服务器检测所述资源服务器内是否有向移动终端推动的消息;若有,则所述资源服务器向所述移动终端推送消息; 第一推送服务器,用于当移动终端处于待机状态时,轮询所述资源服务器内是否有要向移动终端推动的消息,若有,则推送所述消息至一第三方的第二推送服务器,所述第二推送服务器向所述移动终端推送消息。
2.根据权利要求1所述的消息推送系统,其特征在于,所述第二推送服务器与所述移动终端之间保持TCP长连接。
3.一种消息推送方法,采用如权利要求1所述的消息推送系统,其特征在于, 当所述移动终端解锁时,所述移动终端通过UDP传输信道发送检测指令到所述消息监测服务器; 所述消息监测服务器检测所述资源服务器内是否有要向移动终端推动的消息,若有,则所述资源服务器向所述移动终端推送消息。
4.根据权利要求3所述的消息推送方法,其特征在于,当所述消息被推送后,该消息从所述资源服务器删除。
5.根据权利要求4所述的消息推送方法,其特征在于,所述资源服务器基于HTTP协议向所述移动终端推送消息。
6.根据权利要求3至5任一项所述的消息推送方法,其特征在于,所述移动终端执行第一操作时向所述消息检测服务器发送所述检测指令,其中,所述第一操作包括如下操作中的一种或多种: 所述移动终端的屏幕的滑动操作,包括上拉、下拉或者左右滑动; 所述移动终端的屏幕的点击操作; 所述移动终端的按键的点击操作;或者 所述移动终端相应外接输入设备的输入操作。
7.根据权利要求3至5任一项所述的消息推送方法,其特征在于, 所述移动终端以第一时间间隔为周期向所述消息检测服务器发送所述检测指令。
8.根据权利要求7所述的消息推送方法,其特征在于,随所述移动终端的网络带宽增加,所述第一时间间隔减少。
9.根据权利要求7所述的消息推送方法,其特征在于,所述第一时间间隔为I至15秒之间的任意长度。
【文档编号】H04L12/58GK104486443SQ201410837023
【公开日】2015年4月1日 申请日期:2014年12月24日 优先权日:2014年12月24日
【发明者】李侠懿, 胡邦昀, 樊亮 申请人:上海心动企业发展有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1