一种实现离线状态定时推送消息的方法

文档序号:8945658阅读:707来源:国知局
一种实现离线状态定时推送消息的方法
【技术领域】
[0001]本发明涉及的是一种消息推送的方法,可以应用于移动网络设备中。
【背景技术】
[0002]Push (推送)技术又称网播技术,最早由Point Cast Network公司于1996年提出,其目的是为了提高用户获取信息的针对性和时效性。无论是推送或者是服务器端的推送,描述的是一种由中心服务器或者发布者提交的请求或者一个给定的事务并且基于互联网对请求和事务的一种交互。随着移动设备的广泛使用,各种各样适用于移动端的应用程序层出不穷。几乎所有移动端应用都涉及到消息推送。目前被广泛使用的消息推送方式,无论是轮询推送还是持续连接推送,其基本特点是:需要用户接入网络;客户端接收到消息则立即通知用户。这样的推送方式有如下几个弊端:对用户所处环境有严格要求,即非联网状态无法接收消息通知;给用户造成困扰,即消息通知可能在不适当的时候出现;对消息发布者的工作有较高要求,即消息发布者必须要在指定时间准时发布消息。

【发明内容】

[0003]本发明的目的在于提供一种实现服务器端随时推送消息,不受消息预期通知时间限制,客户端可离线、定时接收消息通知,不受用户所处环境限制的消息推送方法。
[0004]本发明的目的是这样实现的:
[0005]一种实现离线状态定时推送消息的方法,步骤如下:
[0006]a)服务器端为每条消息附加消息序号及指定通知时间;
[0007]b)当客户端处于联网状态时周期性地向服务器发出请求,请求参数中包含本地最新消息序号;
[0008]c)服务器接收到客户端请求后,将消息库中序号高于该请求参数中最新消息序号的全部消息发送给客户端;
[0009]d)客户端收到服务器响应后将响应消息保存在本地消息库,并写入任务列表,制定定时任务,定时任务在消息指定通知时间触发,主要功能包括向用户显示消息、更新任务列表(从任务列表中移除该任务)、更新本地消息库(对该消息文件进行移动或删除操作,维持整洁合理的目录结构);
[0010]e)客户端应用每次启动时自动加载本地任务列表,根据列表设置定时任务,该过程无需联网。
[0011]其中,对于a)步骤及其后续步骤中的消息序号可以适当调整具体形式或直接使用消息的通知时间代替。对于b)步骤中的周期性消息请求方式使用socket持久连接。对于d)步骤中的定时任务可视具体情况针对全部或部分消息制定,对于明确在本次应用服务中不会触发的消息,可不对其设置定时任务以减少不必要资源消耗。该步骤中的更新本地消息库不在定时任务中执行,而在应用启动时对其进行更新,清理T时间以前的消息,T由用户或应用程序开发者指定。
【附图说明】
[0012]附图是本发明所述的消息推送流程图。
【具体实施方式】
[0013]下面结合附图对本发明做更详细的描述:
[0014]1.消息发布者在发布消息时为消息手动或自动设置消息序号,以序号递增顺序设置,并为消息指定通知时间,将这两个属性与消息内容一同存入服务器消息库。
[0015]2.客户端接入网络后获取本地最新消息序号,并将其作为参数由请求模块向服务器发送消息请求,以获得最新消息。该过程周期性进行,从应用启动后接入网络时刻起进行,直到应用进程终止或网络关闭为止。
[0016]3.服务器接收到客户端请求后,由请求处理模块对请求进行解析,获取请求参数中的消息序号,通过消息管理模块将消息库版本号高于该参数的全部消息经由响应模块发送给客户端。
[0017]4.客户端接收到消息后,通过响应处理模块进行解析,将全部消息存储在本地消息库,并遍历整个消息列表,针对不同通知时间的消息做不同处理:
[0018]a)对于通知时间所指示时间大于当前时间的消息,在本地任务列表中记录该条消息以及其通知时间,并设置定时任务,在指定时间触发该任务。
[0019]b)通知时间小于当前时间的消息,则直接触发定时任务,不更新本地任务列表。
[0020]其中,定时任务主要功能有:显示消息通知、更新任务列表,即从任务列表中删除该消息记录、更新本地消息库,即从本地消息库中删除该条消息(此操作可根据实际需求选择不执行)。
[0021]5.客户端进程启动时,无视联网状态,自动加载本地消息列表,根据列表中每条消息的指定通知时间设置定时任务,任务功能同步骤4.
[0022]6.必要时对本地消息库进行清理,或选择定期清理,清理对象为T时间以前的消息,T由用户或应用开发者指定。
【主权项】
1.一种实现离线状态定时推送消息的方法,其特征是: a)服务器端为每条消息附加消息序号及指定通知时间; b)当客户端处于联网状态时周期性地向服务器发出请求,请求参数中包含本地最新消息序号; c)服务器接收到客户端请求后,将消息库中序号高于该请求参数中最新消息序号的全部消息发送给客户端; d)客户端收到服务器响应后将响应消息保存在本地消息库,并写入任务列表,制定定时任务,定时任务在消息指定通知时间触发,主要功能包括向用户显示消息、更新任务列表、更新本地消息库; e)客户端应用每次启动时自动加载本地任务列表,根据列表设置定时任务,该过程无需联网。2.根据权利要求1所述的一种实现离线状态定时推送消息的方法,其特征是:a)步骤及其后续步骤中的消息序号可以适当调整具体形式或直接使用消息的通知时间代替。3.根据权利要求1或2所述的一种实现离线状态定时推送消息的方法,其特征是:步骤b)中的周期性消息请求方式使用socket持久连接。4.根据权利要求1或2所述的一种实现离线状态定时推送消息的方法,其特征是:步骤d)中的定时任务可视具体情况针对全部或部分消息制定,对于明确在本次应用服务中不会触发的消息,可不对其设置定时任务以减少不必要资源消耗。5.根据权利要求3所述的一种实现离线状态定时推送消息的方法,其特征是:步骤d)中的定时任务可视具体情况针对全部或部分消息制定,对于明确在本次应用服务中不会触发的消息,可不对其设置定时任务以减少不必要资源消耗。6.根据权利要求1、2或5所述的一种实现离线状态定时推送消息的方法,其特征是:步骤d)中的更新本地消息库不在定时任务中执行,而在应用启动时对其进行更新,清理T时间以前的消息,T由用户或应用程序开发者指定。7.根据权利要求3所述的一种实现离线状态定时推送消息的方法,其特征是:步骤d)中的更新本地消息库不在定时任务中执行,而在应用启动时对其进行更新,清理T时间以前的消息,T由用户或应用程序开发者指定。8.根据权利要求4所述的一种实现离线状态定时推送消息的方法,其特征是:步骤d)中的更新本地消息库不在定时任务中执行,而在应用启动时对其进行更新,清理T时间以前的消息,T由用户或应用程序开发者指定。
【专利摘要】本发明提供的是一种实现离线状态定时推送消息的方法。过程如下:客户端应用处于联网时自动向服务器发出请求,参数为本地最新消息序号;服务器接收到请求时,将消息库中消息序号高于请求参数的消息响应给客户端;客户端接收到服务器响应后,更新本地消息序号,并将全部消息保存在本地,更新本地任务列表,根据消息指定的通知时间设置定时器,制定定时推送任务;客户端程序每次启动时自动加载本地任务列表,制定定时推送任务。本发明实现了离线状态的消息推送,并可根据服务器端定制的时间定时通知。由于消息通知不受联网条件限制,使得消息发布更加灵活,一定程度减少了发布工作在时间上的局限性,并极大地改善了用户体验。
【IPC分类】H04L12/58, H04L29/06
【公开号】CN105162682
【申请号】CN201510454330
【发明人】姚念民, 宋文明, 谭国真, 高振国, 陈炳才, 卢志茂
【申请人】大连理工大学
【公开日】2015年12月16日
【申请日】2015年7月29日
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1