一种消息推送方法、服务器及计算机可读存储介质与流程

文档序号:11234837阅读:371来源:国知局
一种消息推送方法、服务器及计算机可读存储介质与流程
本发明涉及通信
技术领域
,尤其涉及一种消息推送方法、服务器及计算机可读存储介质。
背景技术
:目前,消息推送是各终端厂商和应用程序厂商运营的重要手段,是维系用户和产品之间的一条非常重要的渠道。通过消息推送可以有效提高用户的活跃度和粘性、引导用户更好的使用产品、唤醒沉默用户。现有的消息推送的所采用的推送逻辑大致可以分为两种:一是根据消息的提交排序来推送,二是根据消息的开始发送时间来推送。不论选用哪种推送逻辑,推送消息均需要在服务端来匹配和去重处理,以确保不遗漏消息。然而,推送消息的提交排序和开始发送时间通常是不一致的,且二者并无关联。只根据提交排序来推送,会出现提交晚的推送消息因开始时间早而被先推送,进而遗漏提交早还未到开始发送时间的消息;也会出现开始发送时间晚的推送消息反而被先推送,因此影响用户体验。只根据消息的开始发送时间来推送,对于两条或多条消息在同一时间开始发送的情形,推送顺序只能随机,需要增加额外的去重复处理机制。技术实现要素:本发明实施例提供一种消息推送方法,可智能去重且快速有效地将推送消息推送至每个客户端,进而增强用户的体验。第一方面,本发明实施例提供了一种消息推送方法,该方法包括:获取所述推送消息的开始发送时间;根据所述推送消息的提交顺序进行排序生成排序序号,其中所述开始发送时间和排序序号作为所述推送消息的属性参数;获取客户端的联网时间;根据历史属性参数、所述属性参数和所述联网时间从所述推送信息中筛选出待推送消息,其中所述历史属性参数包括历史发送时间和历史排序序号;根据所述待推送信息的排序序号,将所述待推送消息推送至所述客户端。第二方面,本发明实施例提供了一种服务器,该服务器包括:第一获取单元,用于获取所述推送消息的开始发送时间;生成单元,用于根据所述推送消息的提交顺序进行排序生成排序序号,其中所述开始发送时间和排序序号作为所述推送消息的属性参数;第二获取单元,用于获取客户端的联网时间;筛选单元,用于根据历史属性参数、所述属性参数和所述联网时间从推送信息中筛选出待推送消息,其中所述历史属性参数包括历史发送时间和历史排序序号;推送单元,用于根据所述待推送信息的排序序号,将所述待推送消息推送至所述客户端。第三方面,本发明实施例又提供了一种服务器,其包括处理器、输入设备、输出设备和存储器,所述处理器、输入设备、输出设备和存储器相互连接,其中,所述存储器用于存储程序代码,所述处理器被配置用于调用所述程序代码,执行本发明提供的任一项所述的方法。第四方面,本发明实施例还提供了一种计算机可读存储介质,其中所述计算机存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行发明提供的任一项所述的方法。本发明实施例通过获取接收到推送消息的开始发送时间;根据所述推送消息的提交顺序进行排序生成排序序号,其中所述开始发送时间和排序序号作为所述推送消息的属性参数;在获取客户端的联网时间;根据历史属性参数、所述属性参数和联网时间从推送信息中筛选出待推送消息,其中所述历史属性参数包括历史发送时间和历史排序序号;根据所述待推送信息的排序序号,将所述待推送消息推送至所述客户端。该方法通过判断推送消息的属性参数是否满足客户端的联网时间和所述历史属性参数构成的推送逻辑关系,若满足则将推送消息推送至该客户端,因此利用该方法进行消息推送可避免客户端收到重复消息,造成无谓的流量浪费,进而增强客户的体验度。附图说明为了更清楚地说明本发明实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是本发明实施例提供的一种消息推送方法的示意流程图;图2是图1所示消息推送方法中步骤s104的子步骤示意流程图;图3是本发明实施例提供的一种消息推送方法的另一示意流程图;图4至图7是本发明实施例提供的消息推送方法应用场景的示意图;图8是本发明实施例提供的一种服务器的示意性框图;图9是本发明实施例提供的一种服务器的另一示意性框图。具体实施方式下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。还应当理解,在此本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。还应当进一步理解,在本发明说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。如在本说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。请参阅图1,图1是本发明实施例提供的一种消息推送方法的示意流程图。该方法可以运行在消息推送电子设备中,该消息推送电子设备可例如为:用于推送消息的服务器。该服务器通过运行该消息推送方法将推送消息推送至各个客户端中,其中该客户端包括系统客户端和应用客户端,可以安装在智能手机(如android手机、ios手机等)、平板电脑或智能穿戴设备等终端中,如图1所示,该方法包括步骤s101~s105。s101、获取所述推送消息的开始发送时间。在本发明的实施例中,推送消息是指需要推送至各个客户端的消息,包括文字消息和图片消息等。开始发送时间是指由运行商设置具体发送推送消息的时间,比如推送消息ⅰ,可以设置为8:00开始发送该推送消息ⅰ,那么8:00即是该推送消息ⅰ的开始发送时间。可以理解的,该开始发送时间还可包括年、月、日等时间信息,而本实施例只用一天内24时的时间点示例。s102、根据所述推送消息的提交顺序进行排序生成排序序号,其中所述开始发送时间和排序序号作为所述推送消息的属性参数。在本发明的实施例中,若运行商提交多个推送消息,可以根据其提交顺序,对该多个推送消息进行排序并生成排序序号。比如提交3条推送消息,分别为推送消息ⅰ、推送消息ⅱ和推送消息ⅲ,则根据其提交顺序将该3条推送消息进行排序并生成排序序号,如果之前没有推送消息,则排序序号为1、2和3;如果之前有推送消息,则在此基础上累加,例如之前已有100条推送消息,对应的排序序号已到100,则推送消息ⅰ、推送消息ⅱ和推送消息ⅲ的排序序号分别为101、102和103。具体地,可以在服务器中设置一个自增机制,根据推送消息的提交顺序,进行自增以生成对应排序序号,也可以在预设周期内对该排序序号进行清零,从新排序。预设周期可以运营商自己设定。其中,该开始发送时间和排序序号设为推送消息的属性参数。比如推送消息ⅰ的开始发送时间为8:00,且推送消息ⅰ的排序序号为101,则推送消息ⅰ的属性参数为(8:00,101)。s103、获取客户端的联网时间。在本发明的实施例中,获取客户端的联网时间具体为:服务器获取其与客户端的联网时间。该联网时间是指客户端和服务器保持通讯的时间,客户端与服务器通过定时心跳信息维持一个长连接,该联网时间具体为心跳信号上报时刻。如果客户端和服务器保持一个长连接,那么服务器的当前时间就可以理解为该联网时间,比如服务器发现客户端a在8:00时有心跳信号上报,则该8:00为客户端a的联网时间。可以理解的是,该联网时间包括联网起始时间至保持一个长连接的结束时间。s104、根据历史属性参数、所述属性参数和所述联网时间从所述推送信息中筛选出待推送消息,其中所述历史属性参数包括历史发送时间和历史排序序号。在本发明的实施例中,根据推送消息的属性参数中的开始发送时间和联网时间确定到达发送时间的推送消息,在根据历史属性参数和所述属性参数从多个推送消息中筛选出满足推送条件的推送消息作为待推送消息。具体为,如图2所示,步骤s104具体包括s104a~s104c。s104a、判断所述推送消息的开始发送时间是否达到所述联网时间。比如,推送消息ⅰ的开始发送时间为9:00,服务器与客户端a的联网时间为8:00,即可判断出推送消息ⅰ的开始发送时间达到所述联网时间。s104b、若所述推送消息的开始发送时间达到所述联网时间,判断所述推送消息的属性参数是否大于所述历史属性参数。具体地,判断所述推送消息的属性参数是否大于所述历史属性参数,包括:判断所述推送消息的开始发送时间是否大于所述历史属性参数中的历史发送时间,以及所述推送消息的排序序号是否大于所述历史属性参数中的历史排序序号;若所述推送消息的开始发送时间大于所述历史属性参数中的历史发送时间,或所述推送消息的排序序号大于所述历史属性参数中的历史排序序号,判定所述推送消息的属性参数大于所述历史属性参数。比如,推送消息ⅰ的属性参数为(8:00,2)其中8:00为推送消息的开始发送时间,2为推送消息ⅰ的排序序号。推送消息ⅱ的属性参数为(10:00,1)其中10:00为推送消息ⅱ的开始发送时间,2为推送消息ⅱ的排序序号。而历史属性参数为(9:00,1),其中9:00为所述历史属性参数中的历史发送时间,1为所述历史属性参数中的历史排序序号。根据上述具体的判断方法,可知推送消息ⅰ和推送消息ⅱ的属性参数均是大于所述历史属性参数。s104c、若所述推送消息的属性参数大于所述历史属性参数,将所述推送信息筛选为所述待推送消息。其中,若所述推送消息的属性参数大于所述历史属性参数,具体为推送消息的开始发送时间大于所述历史属性参数中的历史发送时间,或所述推送消息的排序序号大于所述历史属性参数中的历史排序序号。比如上述步骤中的推送消息ⅰ和推送消息ⅱ。将该推送消息ⅰ和推送消息ⅱ筛选为待推送消息。s105、根据所述待推送信息的排序序号,将所述待推送消息推送至所述客户端。在本发明的实施例中,根据上述步骤从多个待推送消息中筛选出待推送消息后,如果该待推送消息包括多个,比如3个待推送消息,其对应的推送消息的排序序号分别为4、6和7,则根据这三个排序序号的大小将三个待推送消息推送至客户端,以供使用该客户端的客户进行浏览参考。本实施例通过获取接收到推送消息的开始发送时间;根据所述推送消息的提交顺序进行排序生成排序序号,其中所述开始发送时间和排序序号作为所述推送消息的属性参数;在获取客户端的联网时间;根据历史属性参数、所述属性参数和联网时间从推送信息中筛选出待推送消息,其中所述历史属性参数包括历史发送时间和历史排序序号;根据所述待推送信息的排序序号,将所述待推送消息推送至所述客户端。其中,该方法通过获取推送消息的开始发送时间和排序序号两个属性参数,在从所述推送消息中筛选出属性参数满足客户端的联网时间和所述历史属性参数构成的推送逻辑关系的待推送消息,利用该推送逻辑关系可以一一筛选出待推送消息,并将所述待推送消息推送至该客户端,因此利用该方法进行消息推送可避免客户端收到重复消息,造成无谓的流量浪费,进而增强客户的体验度。请参阅图3,图3是本发明实施例提供的一种消息推送方法的另一示意流程图。该方法可以运行在消息推送设备中,该消息推送设备可例如为用于推送消息的服务器。服务器通过运行该消息推送方法将推送消息推送至各个客户端中,该客户端包括系统客户端和应用客户端,该客户端可以安装在智能手机(如android手机、ios手机等)、平板电脑或智能穿戴设备等终端中,如图3所示,该方法包括步骤s201~s206。s201、若接收到推送消息,获取所述推送消息的开始发送时间。在本发明的实施例中,若接收到运营商等提交的至少一个推送消息,获取至少一个所述推送消息的开始发送时间。其中,推送消息是指需要推送至各个客户端的消息,包括文字消息和图片消息等。开始发送时间是指由运行商设置具体发送推送消息的时间,比如推送消息ⅰ,可以设置为8:00开始发送该推送消息ⅰ,那么8:00即是该推送消息ⅰ的开始发送时间。s202、根据所述推送消息的提交顺序进行排序生成排序序号,其中所述开始发送时间和排序序号作为所述推送消息的属性参数。本发明的实施例中,若运行商提交多个推送消息,可以根据其提交顺序,对该多个推送消息进行排序并生成排序序号。比如提交3条推送消息,分别为推送消息ⅰ、推送消息ⅱ和推送消息ⅲ,则根据其提交顺序将该3条推送消息进行排序并生成排序序号,如果之前没有推送消息,则排序序号为1、2和3。其中,该开始发送时间和排序序号设为推送消息的属性参数。比如推送消息ⅰ的开始发送时间为8:00,且推送消息ⅰ的排序序号为1,则推送消息ⅰ的属性参数为(8:00,1)。s203、获取客户端的联网时间。在本发明的实施例中,获取客户端的联网时间具体为:服务器获取其与客户端的联网时间。该联网时间是指客户端和服务器保持通讯的时间,客户端与服务器通过定时心跳信息维持一个长连接,该联网时间具体为心跳信号上报时刻。如果客户端和服务器保持一个长连接,那么服务器的当前时间就可以理解为该联网时间,比如服务器发现客户端a在8:00时有心跳信号上报,则该8:00为客户端a的联网时间。s204、根据历史属性参数、所述属性参数和所述联网时间从所述推送信息中筛选出待推送消息,其中所述历史属性参数包括历史发送时间和历史排序序号。在本发明的实施例中,具体地,判断所述推送消息的开始发送时间是否达到所述联网时间;若所述推送消息的开始发送时间达到所述联网时间,判断所述推送消息的属性参数是否大于所述历史属性参数;若所述推送消息的属性参数大于所述历史属性参数,将所述推送信息筛选为待推送消息。需要说明的是,判断所述推送消息的属性参数是否大于所述历史属性参数,只要所述属性参数中的其中一个参数大于历史属性参数中相应的参数,即为所述推送消息的属性参数是大于所述历史属性参数。s205、根据所述待推送信息的排序序号,将所述待推送消息推送至所述客户端。在本发明的实施例中,根据上述步骤从多个待推送消息中筛选出待推送消息后,如果该待推送消息包括多个,比如3个待推送消息,其对应的推送消息的排序序号分别为4、6和7,则根据这三个排序序号的大小将三个待推送消息推送至客户端,以供使用该客户端的客户进行浏览参考。s206、根据所述待推送消息的属性参数更新所述历史属性参数。在本发明的实施例中,具体为根据所述待推送消息的属性参数按预设更新规则更新所述历史属性参数。所述待推送消息的属性参数,比如,推送消息ⅰ的属性参数为(8:00,1)。所述历史属性参数表示为(btime0,mid0),其中btime0为历史发送时间,mid0为历史排序序号,且btime0和mid0均为零。其中,预设更新规则为更新所述历史属性参数的规则,根据所述待推送消息的属性参数按预设更新规则更新所述历史属性参数,具体包括:确定所述待推送消息的属性参数中大于所述历史属性参数的参数值;根据所述参数值更新所述历史属性参数。比如待推送消息ⅰ的属性参数为(8:00,1),而历史属性参数为(6:00,2),则待推送消息的属性参数中大于所述历史属性参数的参数值为8:00,根据参数值8:00更新所述历史属性参数,更新后的历史属性参数为(8:00,2)。更新后的历史属性参数作为下次推送消息时使用。本实施例通过获取推送消息的开始发送时间和排序序号两个属性参数,在从所述推送消息中筛选出属性参数满足客户端的联网时间和所述历史属性参数构成的推送逻辑关系的待推送消息,利用该推送逻辑关系可以一一筛选出待推送消息,并将所述待推送消息推送至该客户端,在将所述待推送消息推送至该客户端之后,利用预设更新规则更新该历史属性参数以便下次筛选待推送消息,因此利用该方法进行消息推送可避免客户端收到重复消息,造成无谓的流量浪费,进而增强客户的体验度。请参阅图4~图7所示,为了更为详尽地说明该消息推送方法,结合实际场景进行说明,该应用场景中包括4个客户端,分别为客户端a、客户端b、客户端c和客户端d。其中,运营商提交3条推送消息,分别为推送消息ⅰ、推送消息ⅱ和推送消息ⅲ。推送消息的属性参数为(btime,mid),其中btime为推送消息的开始发送时间,mid为推送消息的排序序号。运营商提交3条推送消息可由表1来表示。表1为推送消息的属性参数推送消息midbtimei19:00ii28:00iii310:00假设,客户端a的联网时间为8:00以前,即客户端a在8:00一直处于联网状态,心跳信号稳定,对应图4;客户端b的联网时间为8:00以后,对应图5;客户端c的联网时间为9:00以后,对应图6;客户端d的联网时间为10:00以后,对应图6。在图4中,客户端a与服务器一直处于联网状态,之后心跳信号稳定,即8:00之前就已经联网。当到达8:00时,服务器通过执行上述消息推送方法,将推送消息ⅰ、推送消息ⅱ和推送消息ⅲ按图4中流程依次推送至客户端a。具体地,从3个推送消息中依次筛选缓存待推送消息ii,待推送消息i和待推送消息iii,并推送至客户端a,同时在推送的过程中根据推送消息的属性参数根据历史属性参数,该历史属性参数为客户端a的历史属性参数。在图5中,客户端b与服务器在8:00以后,9:00之前处于联网状态,之后心跳信号稳定。当到达8:00时,服务器通过执行上述消息推送方法,将推送消息ⅰ、推送消息ⅱ和推送消息ⅲ按图5中流程依次推送至客户端b。具体地,从3个推送消息中依次筛选缓存待推送消息ii,待推送消息i和待推送消息iii,并推送至客户端a,同时在推送的过程中根据推送消息的属性参数根据历史属性参数,该历史属性参数为客户端b的历史属性参数。推送至客户端b的过程和推送至客户端a过程相同。在图6中,客户端c与服务器在9:00以后处于联网状态,之后心跳信号稳定。当到达9:00时,服务器通过执行上述消息推送方法,将推送消息ⅰ、推送消息ⅱ和推送消息ⅲ按图6中流程依次推送至客户端c。具体地,从3个推送消息中先筛选缓存待推送消息i和待推送消息ii,在筛选缓存待推送消息iii,并推送至客户端c,同时在推送的过程中根据推送消息的属性参数根据历史属性参数,该历史属性参数为客户端c的历史属性参数。在图7中,客户端d与服务器在10:00以后处于联网状态,之后心跳信号稳定。当到达10:00时,服务器通过执行上述消息推送方法,将推送消息ⅰ、推送消息ⅱ和推送消息ⅲ按图7中流程依次推送至客户端d。具体地,从3个推送消息中筛选缓存待推送消息i、待推送消息ii和待推送消息iii,并推送至客户端d,同时在推送的过程中根据推送消息的属性参数根据历史属性参数,该历史属性参数为客户端d的历史属性参数。综上,从上述四个推送场景可以看出,该消息推送方法可智能去重,能够将多条推送消息及时推送至客户端,从而实现智能高效的推送效果。需要说明的是,上述场景中,运营提交的推送消息虽然只列出了3条,但对于多条推送消息时,也可以实现智能去重且及时推送至不同客户端。请参阅图8,图8是本发明实施例提供的一种服务器的示意性框图。服务器300用于执行上述实施例中消息推送方法。如图4所示,服务器300包括:第一获取单元301、生成单元302、第二获取单元303、筛选单元304、推送单元305和更新单元306。第一获取单元301,用于若接收到推送消息,获取所述推送消息的开始发送时间。具体地,若接收到运营商等提交的至少一个推送消息,获取至少一个所述推送消息的开始发送时间。其中,推送消息是指需要推送至各个客户端的消息,包括文字消息和图片消息等。开始发送时间是指由运行商设置具体发送推送消息的时间,比如推送消息ⅰ,可以设置为8:00开始发送该推送消息ⅰ,那么8:00即是该推送消息ⅰ的开始发送时间。生成单元302,用于根据所述推送消息的提交顺序进行排序生成排序序号,其中所述开始发送时间和排序序号作为所述推送消息的属性参数。具体地,若运行商提交多个推送消息,可以根据其提交顺序,对该多个推送消息进行排序并生成排序序号。比如提交3条推送消息,分别为推送消息ⅰ、推送消息ⅱ和推送消息ⅲ,则根据其提交顺序将该3条推送消息进行排序并生成排序序号,如果之前没有推送消息,则排序序号为1、2和3。其中,该开始发送时间和排序序号设为推送消息的属性参数。比如推送消息ⅰ的开始发送时间为8:00,且推送消息ⅰ的排序序号为1,则推送消息ⅰ的属性参数为(8:00,1)第二获取单元303,用于获取客户端的联网时间。具体地,获取客户端的联网时间具体为:服务器获取其与客户端的联网时间。该联网时间是指客户端和服务器保持通讯的时间,客户端与服务器通过定时心跳信息维持一个长连接,该联网时间具体为心跳信号上报时刻。如果客户端和服务器保持一个长连接,那么服务器的当前时间就可以理解为该联网时间,比如服务器发现客户端a在8:00时有心跳信号上报,则该8:00为客户端a的联网时间。筛选单元304,用于根据历史属性参数、所述属性参数和联网时间从推送信息中筛选出待推送消息,其中所述历史属性参数包括历史发送时间和历史排序序号。具体地,根据推送消息的属性参数中的开始发送时间和联网时间确定到达发送时间的推送消息,在根据历史属性参数和所述属性参数从多个推送消息中筛选出满足推送条件的推送消息作为待推送消息。基于此,筛选单元304包括第一判断单元3041、第二判断单元3042和第一筛选单元3043。其中,第一判断单元3041,用于判断所述推送消息的开始发送时间是否达到所述联网时间。比如,推送消息ⅰ的开始发送时间为9:00,服务器与客户端a的联网时间为8:00,即可以判断出推送消息ⅰ的开始发送时间达到所述联网时间8:00。其中,第二判断单元3042,用于若所述推送消息的开始发送时间达到所述联网时间,判断所述推送消息的属性参数是否大于所述历史属性参数。具体地,判断所述推送消息的属性参数是否大于所述历史属性参数,包括:判断所述推送消息的开始发送时间是否大于所述历史属性参数中的历史发送时间,以及所述推送消息的排序序号是否大于所述历史属性参数中的历史排序序号;若所述推送消息的开始发送时间大于所述历史属性参数中的历史发送时间,或所述推送消息的排序序号大于所述历史属性参数中的历史排序序号,判定所述推送消息的属性参数大于所述历史属性参数。其中,第一筛选单元3043,用于若所述推送消息的属性参数大于所述历史属性参数,将所述推送信息筛选为待推送消息。具体地,若所述推送消息的属性参数大于所述历史属性参数,推送消息的开始发送时间大于所述历史属性参数中的历史发送时间,或所述推送消息的排序序号大于所述历史属性参数中的历史排序序号。推送单元305,用于根据所述待推送信息的排序序号,将所述待推送消息推送至所述客户端。具体地,根据上述步骤从多个待推送消息中筛选出待推送消息后,如果该待推送消息包括多个,比如3个待推送消息,其对应的推送消息的排序序号分别为4、6和7,则根据这三个排序序号的大小将三个待推送消息推送至客户端,以供使用该客户端的客户进行浏览参考。更新单元306,用于根据所述待推送消息的属性参数更新所述历史属性参数。具体地,根据所述待推送消息的属性参数按预设更新规则更新所述历史属性参数。所述待推送消息的属性参数,比如,推送消息ⅰ的属性参数为(8:00,1)。所述历史属性参数表示为(btime0,mid0),其中btime0为历史发送时间,mid0为历史排序序号,且btime0和mid0均为零。其中,预设更新规则为更新所述历史属性参数的规则,根据所述待推送消息的属性参数按预设更新规则更新所述历史属性参数,具体包括:确定所述待推送消息的属性参数中大于所述历史属性参数的参数值;根据所述参数值更新所述历史属性参数上述实施例的服务器通过获取接收到推送消息的开始发送时间;根据所述推送消息的提交顺序进行排序生成排序序号,其中所述开始发送时间和排序序号作为所述推送消息的属性参数;在获取客户端的联网时间;根据历史属性参数、所述属性参数和联网时间从推送信息中筛选出待推送消息,其中所述历史属性参数包括历史发送时间和历史排序序号;根据所述待推送信息的排序序号,将所述待推送消息推送至所述客户端;根据所述待推送消息的属性参数更新所述历史属性参数。利用该消息推送方法进行消息推送时可以有效避免客户端收到重复消息,造成无谓的流量浪费,进而增强客户的体验度。参见图9所示,图9是本发明另一实施例提供的一种服务器示意框图。如图所示的本实施例中的终端可以包括:一个或多个处理器801;一个或多个输入设备802,一个或多个输出设备803和存储器804。上述处理器801、输入设备802、输出设备803和存储器804通过总线805连接。存储器802用于存储指令,处理器801用于执行存储器802存储的指令。其中,处理器801用于执行:若接收到推送消息,获取所述推送消息的开始发送时间;根据所述推送消息的提交顺序进行排序生成排序序号,其中所述开始发送时间和排序序号作为所述推送消息的属性参数;获取客户端的联网时间;根据历史属性参数、所述属性参数和联网时间从推送信息中筛选出待推送消息,其中所述历史属性参数包括历史发送时间和历史排序序号;根据所述待推送信息的排序序号,将所述待推送消息推送至所述客户端。进一步地,处理器801还用于执行:判断所述推送消息的开始发送时间是否达到所述联网时间;若所述推送消息的开始发送时间达到所述联网时间,判断所述推送消息的属性参数是否大于所述历史属性参数;若所述推送消息的属性参数大于所述历史属性参数,将所述推送信息筛选为待推送消息进一步地,处理器801还用于执行:判断所述推送消息的开始发送时间是否大于所述历史属性参数中的历史发送时间,以及所述推送消息的排序序号是否大于所述历史属性参数中的历史排序序号;若所述推送消息的开始发送时间大于所述历史属性参数中的历史发送时间,或所述推送消息的排序序号大于所述历史属性参数中的历史排序序号,判定所述推送消息的属性参数大于所述历史属性参数。在某些实施例中,其中,处理器801用于执行:若接收到推送消息,获取所述推送消息的开始发送时间;根据所述推送消息的提交顺序进行排序生成排序序号,其中所述开始发送时间和排序序号作为所述推送消息的属性参数;获取客户端的联网时间;根据历史属性参数、所述属性参数和联网时间从推送信息中筛选出待推送消息,其中所述历史属性参数包括历史发送时间和历史排序序号;根据所述待推送信息的排序序号,将所述待推送消息推送至所述客户端;根据所述待推送消息的属性参数更新所述历史属性参数。在某些实施例中,进一步地,处理器801还用于执行:根据所述待推送消息的属性参数按预设更新规则更新所述历史属性参数。应当理解,在本发明实施例中,所称处理器801可以是中央处理单元(centralprocessingunit,cpu),该处理器还可以是其他通用处理器、数字信号处理器(digitalsignalprocessor,dsp)、专用集成电路(applicationspecificintegratedcircuit,asic)、现成可编程门阵列(field-programmablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。输入设备802可以包括触控板、指纹采传感器(用于采集用户的指纹信息和指纹的方向信息)、麦克风等,输出设备803可以包括显示器(lcd等)、扬声器等。该存储器804可以包括只读存储器和随机存取存储器,并向处理器801提供指令和数据。存储器804的一部分还可以包括非易失性随机存取存储器。例如,存储器804还可以存储设备类型的信息。具体实现中,本发明实施例中所描述的处理器801、输入设备802、输出设备803可执行本发明实施例提供的的方法的第一实施例和第二实施例中所描述的实现方式,也可执行本发明实施例所描述的终端的实现方式,在此不再赘述。在本发明的另一实施例中提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现:若接收到推送消息,获取所述推送消息的开始发送时间;根据所述推送消息的提交顺序进行排序生成排序序号,其中所述开始发送时间和排序序号作为所述推送消息的属性参数;获取客户端的联网时间;根据历史属性参数、所述属性参数和联网时间从推送信息中筛选出待推送消息,其中所述历史属性参数包括历史发送时间和历史排序序号;根据所述待推送信息的排序序号,将所述待推送消息推送至所述客户端。此外,所述计算机程序被处理器执行时实现:若接收到推送消息,获取所述推送消息的开始发送时间;根据所述推送消息的提交顺序进行排序生成排序序号,其中所述开始发送时间和排序序号作为所述推送消息的属性参数;获取客户端的联网时间;根据历史属性参数、所述属性参数和联网时间从推送信息中筛选出待推送消息,其中所述历史属性参数包括历史发送时间和历史排序序号;根据所述待推送信息的排序序号,将所述待推送消息推送至所述客户端;根据所述待推送消息的属性参数更新所述历史属性参数。所述计算机可读存储介质可以是前述任一实施例所述的服务器的内部存储单元,例如服务器的硬盘或内存。所述计算机可读存储介质也可以是所述服务器的外部存储设备,例如所述服务器上配备的插接式硬盘,智能存储卡(smartmediacard,smc),安全数字(securedigital,sd)卡,闪存卡(flashcard)等。进一步地,所述计算机可读存储介质还可以既包括所述服务器的内部存储单元也包括外部存储设备。所述计算机可读存储介质用于存储所述计算机程序以及所述服务器所需的其他程序和数据。所述计算机可读存储介质还可以用于暂时地存储已经输出或者将要输出的数据。本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的服务器和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。在本申请所提供的几个实施例中,应该理解到,所揭露的服务器和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口、装置或单元的间接耦合或通信连接,也可以是电的,机械的或其它的形式连接。所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本发明实施例方案的目的。另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本
技术领域
的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1