一种信息推送方法及系统的制作方法

文档序号:7798236阅读:114来源:国知局
一种信息推送方法及系统的制作方法
【专利摘要】本发明提供一种信息推送方法及系统,所述方法包括:第一终端向服务器发送请求,请求所述服务器向第二终端或者向所述第二终端和所述第一终端推送信息;所述服务器接收到所述请求后,向所述第二终端或者向所述第二终端和所述第一终端推送所述信息;所述第二终端或者所述第二终端和所述第一终端接收到所述服务器推送的所述信息后,向所述服务器发送接收回执。应用本发明提供的方法及系统使得信息推送成功率得到提高,并且使得服务器确保将信息实时地成功传递到终端。
【专利说明】一种信息推送方法及系统
【技术领域】
[0001]本发明涉及网络通信【技术领域】,尤其涉及一种信息推送方法及系统。
【背景技术】
[0002]目前,服务器向客户端提供数据的方式主要有推送(Push)和拖拽(Pull)两种不同的信息传输模式,传统信息传输方法,通常米用拖拽模式传送信息,即由客户发送服务要求,服务器根据要求发回客户所需的结果。
[0003]推送模式是服务器未经客户的请求直接向客户发送信息。服务器推送的效率通常要比客户端拖曳效率高,因为在推送模式中,服务器与客户端始终保持连接状态,即使没有数据传输时也保持连接状态,所以应用此模式不必为后续数据建立新的连接。客户端拖曳效率低,正是因为在服务器与客户端之间必须每次为传送数据建立新的连接,在实际情况中,建立所述连接通常需要花费相当多的时间,多达一秒甚至更多。因此从性能上考虑,月艮务器推送对于最终用户更有吸引力,特别是对于需要经常更新信息的情况下。
[0004]现有的信息推送成功率不稳定,服务器无法确保将信息实时地成功传递到客户端,即服务器无法获知客户端是否正常地接收到了所述信息,所以现有的信息推送方式一般只应用于娱乐行业,不能应用于教育等对信息传递的可靠性要求较高的行业。

【发明内容】

[0005]本发明的目的在于提出一种信息推送方法及系统,能够提高信息推送成功率,使得服务器确保将信息实时地成功传递到终端。
[0006]为达此目的,本发明采用以下技术方案:
[0007]一种信息推送方法,包括:
[0008]第一终端向服务器发送请求,请求所述服务器向第二终端或者向所述第二终端和所述第一终端推送信息;
[0009]所述服务器接收到所述请求后,向所述第二终端或者向所述第二终端和所述第一终端推送所述信息;
[0010]所述第二终端或者所述第二终端和所述第一终端接收到所述服务器推送的所述信息后,向所述服务器发送接收回执。
[0011]—种信息推送系统,包括:
[0012]第一终端,用于向服务器发送推送信息的请求,还用于接收所述服务器推送的信息,还用于向所述服务器发送接收回执;
[0013]服务器,用于接收所述第一终端发送的推送信息的请求,还用于向所述第二终端或所述第一终端和所述第二终端推送信息,还用于为所述信息设置发送状态;
[0014]第二终端,用于接收所述服务器推送的信息,还用于向所述服务器发送接收回执。
[0015]本发明提供的方法与系统通过终端向服务器发送接收回执的监控机制,使得信息推送成功率得到提高,并且使得服务器确保将信息实时地成功传递到终端。【专利附图】

【附图说明】
[0016]通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
[0017]图1是本发明实施提供的一种信息推送方法的方法流程图;
[0018]图2是本发明实施提供的一种信息推送方法中的发送状态信息的信令流程图;
[0019]图3是本发明实施提供的一种信息推送系统的结构示意图;
[0020]图4是本发明实施提供的一种用于教育行业的信息推送方法流程图;
[0021]图5是本发明实施提供的另一种用于教育行业的信息推送方法流程图。
【具体实施方式】
[0022]下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部内容。
[0023]实施例一
[0024]如图1所示,本实施例提供一种信息推送方法,包括:
[0025]步骤101,第一终端向服务器发送请求,请求所述服务器向第二终端或者向所述第二终端和所述第一终端推送信息;
[0026]步骤102,所述服务器接收到所述请求后,向所述第二终端或者向所述第二终端和所述第一终端推送所述信息;
[0027]步骤103,所述服务器为所述信息设置发送状态;
[0028]步骤104,所述第二终端或者所述第二终端和所述第一终端接收到所述服务器推送的所述信息后,向所述服务器发送接收回执。
[0029]在本实施例中,服务器不是自行向其他终端推送信息,而是响应第一终端的请求,才向其他终端推送信息,并且服务器向第二终端推送信息的同时也可以向第一终端推送信息,即第一终端也可以接收到推送的所述信息。服务器对推送的信息设置一个发送状态,用于监控第一或第二终端对所述推送信息的接收情况,当第一或第二终端接收到所述信息后会向所述服务器发送接收回执,通知所述服务器该终端已经接收了所述信息。
[0030]示例性的,所述服务器接收到所述接收回执后,更新所述发送状态。
[0031]服务器接收到接收回执之后会更改发送状态,服务器即能得知是否所有的终端都接收到了该信息或者某个终端未接收到该信息,服务器可以将所述的发送状态发送给第一终端,即本推送信息的推送要求者。
[0032]示例性的,所述服务器未收到所述接收回执时,所述方法还包括:所述服务器重新推送所述信息。
[0033]服务器未收到所述接收回执,即表示某个终端未能接受所述推送信息,所以服务器可以重新推送该信息,使前一次未能接收到该信息的终端再次接收,其他已经接收到该信息的终端可以选择再次接收或者拒绝接收,服务器只要确认所有目标终端都接收到了该信息即不再进行推送。
[0034]示例性的,所述服务器定期向所述第二终端或者向所述第二终端和所述第一终端发送第一状态信息,用于确认所述服务器与所述第二终端或者与所述第二终端和所述第一终端的连接状态。
[0035]推送信息的服务器和被该推送信息的服务器推送信息的终端之间还要互发状态信息。服务器可以定期向终端发送一种数据包用于确认网络中的终端是否处于在线状态,这种服务器向终端发送的数据包是第一状态信息,通过此步骤可以确认服务器与终端间的长连接状态。
[0036]示例性的,所述第二终端或者所述第二终端和所述第一终端在指定的期限内未收到所述第一状态信息时,所述方法还包括:
[0037]所述第二终端或者所述第二终端和所述第一终端向所述服务器发送第二状态信息,用于确认所述服务器与所述第二终端或者与所述第二终端和所述第一终端的连接状态。
[0038]如果某终端在一定时间内未能接受到服务器发来的第一状态信息,即有可能是服务器本身断线或者该终端自身断线,所以此时该终端可以主动向服务器发送一种数据包用于确认服务器的状态或者自身的状态,这种终端向服务器发送的数据包是第二状态信息,通过此步骤可以进一步确认服务器与终端间的长连接状态。
[0039]假设服务器应第一终端的请求向第一终端和第二终端推送信息,则状态信息的互发可如图2所示,包括:
[0040]步骤201,所述服务器定期向所述第二终端和所述第一终端发送第一状态信息,用于确认所述服务器与所述第二终端和所述第一终端的连接状态。
[0041]所述第二终端和所述第一终端在指定的期限内未收到所述第一状态信息时,所述方法还包括:
[0042]步骤202,所述第二终端和所述第一终端向所述服务器发送第二状态信息,用于确认所述服务器与所述第二终端和所述第一终端的连接状态。
[0043]示例性的,所述第二终端或者所述第二终端和所述第一终端发送所述第二状态信息失败时,所述方法还包括:
[0044]所述第二终端或者所述第二终端和所述第一终端重启,并与所述服务器建立网络连接。
[0045]如果终端向服务器发送第二状态信息失败,即表示服务器可能已经离线或者自身已经离线,这种离线可能是终端的通信功能出现异常,所以此时终端可以重新启动相关的功能模块,并重新尝试与服务器建立网络连接。
[0046]实施例二
[0047]如图3所示,本实施例提供一种信息推送系统,用于实现上述方法,所述系统包括:
[0048]第一终端301,用于向服务器302发送推送信息的请求,还用于接收所述服务器302推送的信息,还用于向所述服务器302发送接收回执;
[0049]服务器302,用于接收所述第一终端301发送的推送信息的请求,还用于向所述第二终端303或所述第一终端301和所述第二终端303推送信息,还用于为所述信息设置发送状态;
[0050]第二终端303,用于接收所述服务器302推送的信息,还用于向所述服务器302发送接收回执。
[0051]本实施例中的第一终端301或第二终端303可以是个人计算机、便携式电脑、平板电脑、手持终端等设备,服务器302可以是具有大型数据库的大型计算机或者云服务端等,服务器302可以有多个,并且可以有不同的任务分工,例如利用一个控制服务器302控制信息的推送,同时利用一个业务服务器302用于存储相关的业务信息,也可以是一个服务器302即完成推送调度任务同时也存储业务信息,控制服务器302可以设置在本地局域网中,业务服务器302可以是云存储端。服务器302与第一终端301或第二终端303的连接可以是wifi无线连接或有线连接。
[0052]示例性的,所述服务器302还用于为所述信息设置发送状态,还用于更新所述发送状态。
[0053]示例性的,所述服务器302还用于当所述服务器302未收到所述回执时,重新推送信息。
[0054]示例性的,所述服务器302还用于定期向所述第二终端303或所述第一终端301和所述第二终端303发送第一状态信息,确认所述服务器302与所述第二终端303或所述第一终端301和所述第二终端303的连接状态。
[0055]示例性的,所述第一终端301和所述第二终端303还用于当所述第一终端301或所述第二终端303在指定的期限内未收到所述状态信息时,向所述服务器302发送第二状态信息,确认所述服务器302与第一终端301或所述第二终端303的连接状态。
[0056]示例性的,所述第一终端301和所述第二终端303还用于当所述第一终端301或所述第二终端303向所述服务器302发送状态信息时发送失败时,重启并与所述服务器302建立网络连接。
[0057]实施例三
[0058]如图4所示,本实施例提供一种信息推送方法,具体用于教育行业中教师与学生的交流互动,本方法的逻辑组网架构由一个控制服务器、一个业务服务器、教师终端、学生终端组成,并且教师终端、学生终端都采用无线手持终端,所述逻辑组网架构采用的通信协议是可扩展通讯和表不协议,即The ExtensibleMessaging and Presence Protocol,简称XMPP0其中,教师终端可视为上述第一终端,学生终端可视为上述第二终端。
[0059]图4所示的信息推送方法包括:
[0060]步骤401,教师终端向控制服务器发出一个业务推送请求,例如请求给每个学生终端发送一个课堂练习;
[0061]步骤402,控制服务器接到所述推送请求后,控制服务器向业务服务器提取相关的内容;
[0062]步骤403,控制服务器给每个学生终端推送信息,通知学生终端接收课堂练习;
[0063]步骤404,学生终端接收完课堂练习后,向控制服务器发送接收回执;
[0064]控制服务器收到所述接收回执后更新发送状态。
[0065]本实施例提供的信息推送方法,通过接收回执的机制使服务器确认网络中所有的学生终端是否全都正常的接收到了课堂练习,若某个或多个学生终端未能接收到课堂练习,服务器可以重新进行推送;并且在所述流程中,控制服务器每隔一段时间向每个学生终端发送一种数据包,以确认每个学生终端都处于联网状态,若某个学生终端未能在规定的时间间隔里收到控制服务器发来的状态信息,则该学生终端主动向所述控制服务器发送另一种数据包,进一步确认该终端与控制服务器的连接状态;若学生终端向控制服务器发送数据包时失败,则该学生终端将会重启自身的无线通信模块,并且重新尝试与控制服务器建立连接。
[0066]应用本实施例提供的方法可以使教师与学生在课堂上实时交流、实时互动、保证信息传递的稳定性。
[0067]实施例四
[0068]如图5所示,本实施例提供另一种信息推送方法,具体用于教育行业中教师之间的交流互动,本方法的逻辑组网架构由一个控制服务器、一个业务服务器、发起者终端、参与者终端组成,并且发起者终端、参与者终端都采用无线手持终端,所述逻辑组网架构采用的通信协议是可扩展通讯和表示协议,即The Extensible Messaging and PresenceProtocol,简称XMPP。其中,发起者终端可视为上述第一终端,参与者终端可视为上述第二终端。
[0069]所述方法包括:
[0070]步骤501,发起者终端向控制服务器发出一个业务推送请求,例如请求给每个参与者终端以及发起者终端自身发送一个课题讨论;
[0071]步骤502,控制服务器接到所述推送请求后,控制服务器向业务服务器提取相关的内容;
[0072]步骤503,控制服务器给每个参与者终端以及发起者终端推送信息,通知每个参与者终端以及发起者终端接收课题讨论;
[0073]步骤504,参与者终端以及发起者终端接收完课题讨论后,向控制服务器发送接收回执;
[0074]控制服务器收到所述接收回执后更新发送状态。
[0075]本实施例提供的信息推送方法,通过接收回执的机制使服务器确认网络中所有的参与者终端以及发起者终端是否全都正常的接收到了课题讨论,若某个参与者终端或发起者终端未能接收到课题讨论,服务器可以重新进行推送;并且在所述流程中,控制服务器每隔一段时间向每个参与者终端以及发起者终端发送一种数据包,以确认每个参与者终端以及发起者终端都处于联网状态,若某个参与者终端或发起者终端未能在规定的时间间隔里收到控制服务器发来的状态信息,则该参与者终端或发起者终端主动向所述控制服务器发送另一种数据包,进一步确认该终端与控制服务器的连接状态;若参与者终端或发起者终端向控制服务器发送数据包时失败,则该参与者终端或发起者终端将会重启自身的无线通信模块,并且重新尝试与控制服务器建立连接。
[0076]应用本实施例提供的方法可以使教师之间进行上实时交流、实时互动、保证信息传递的稳定性。
[0077]上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
【权利要求】
1.一种信息推送方法,其特征在于,包括: 第一终端向服务器发送请求,请求所述服务器向第二终端或者向所述第二终端和所述第一终端推送信息; 所述服务器接收到所述请求后,向所述第二终端或者向所述第二终端和所述第一终端推送所述信息; 所述第二终端或者所述第二终端和所述第一终端接收到所述服务器推送的所述信息后,向所述服务器发送接收回执。
2.根据权利要求1所述的方法,其特征在于, 所述服务器为所述信息设置发送状态; 所述服务器接收到所述接收回执后,更新所述发送状态。
3.根据权利要求2所述的方法,其特征在于,所述服务器未收到所述接收回执时,所述方法还包括:所述服务器重新推送所述信息。
4.根据权利要求1-3任一项所述的方法,其特征在于,所述方法还包括: 所述服务器定期向所述第二终端或者向所述第二终端和所述第一终端发送第一状态信息,用于确认所述服务器与所述第二终端或者与所述第二终端和所述第一终端的连接状态。
5.根据权利要求4所述的方法,其特征在于,所述第二终端或者所述第二终端和所述第一终端在指定的期限内未收到所述第一状态信息时,所述方法还包括: 所述第二终端或者所述第二终端和所述第一终端向所述服务器发送第二状态信息,用于确认所述服务器与所述第二终端或者与所述第二终端和所述第一终端的连接状态; 所述第二终端或者所述第二终端和所述第一终端发送所述第二状态信息失败时,所述第二终端或者所述第二终端和所述第一终端重启,并与所述服务器建立网络连接。
6.一种信息推送系统,其特征在于,包括: 第一终端,用于向服务器发送推送信息的请求,还用于接收所述服务器推送的信息,还用于向所述服务器发送接收回执; 服务器,用于接收所述第一终端发送的推送信息的请求,还用于向所述第二终端或所述第一终端和所述第二终端推送信息;第二终端,用于接收所述服务器推送的信息,还用于向所述服务器发送接收回执。
7.根据权利要求6所述的系统,其特征在于, 所述服务器还用于为所述信息设置发送状态,还用于更新所述发送状态。
8.根据权利要求7所述的系统,其特征在于, 所述服务器还用于当所述服务器未收到所述回执时,重新推送信息。
9.根据权利要求6-8任一项所述的系统,其特征在于,所述服务器还用于定期向所述第二终端或所述第一终端和所述第二终端发送第一状态信息,确认所述服务器与所述第二终端或所述第一终端和所述第二终端的连接状态。
10.根据权利要求9所述的系统,其特征在于, 所述第一终端和所述第二终端还用于当所述第一终端或所述第二终端在指定的期限内未收到所述状态信息时,向所述服务器发送第二状态信息,确认所述服务器与第一终端或所述第二终端的连接状态;所述第一终端和所述第二终端还用于当所述第一终端或所述第二终端向所述服务器发送状态信息时发送失败时, 重启并与所述服务器建立网络连接。
【文档编号】H04L29/08GK103841193SQ201410078902
【公开日】2014年6月4日 申请日期:2014年3月5日 优先权日:2014年3月5日
【发明者】李漠毫 申请人:天闻数媒科技(北京)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1