一种抢占式跨平台消息推送方法和服务器的制造方法

文档序号:9238017
一种抢占式跨平台消息推送方法和服务器的制造方法
【技术领域】
[0001]本发明涉及计算机互联网技术领域,尤其涉及一种抢占式跨平台消息推送方法和服务器。
【背景技术】
[0002]目前基本的消息推送的实现类型有以下两种:
[0003]第一种,独占推送,即消息只推送给用户最后登录的用户设备;第二种,全部推送,即消息推送给用户所有的用户设备。
[0004]上述两种方法均存在缺点。第一种方式虽然不会产生重复的消息推送,但缺点是限制用户只能同时在一台用户设备登录,当用户切换到新的用户设备时,旧的用户设备会断开连接,用户需要重新输入用户名密码登录新设备,造成了不必要的麻烦。第二种方式虽然不限制用户只能登录一台用户设备,但由于同时向所有用户登录过的用户设备推送消息,会产生很多重复消息。一个典型的场景是,用户A在网上聊天,另外一个用户B向其发送了一条消息,用户A的已登录手机设备和平板电脑会同时响起消息推送的提示音。而此时,其实用户A在手机设备上进行操作即可以看到新消息,本无需在查看其他设备的重复推送消息。

【发明内容】

[0005]本发明提供了一种抢占式跨平台消息推送方法,能够将推送消息只推送给必要的用户设备,同时不限制用户的登录设备。
[0006]本发明提供了一种抢占式跨平台消息推送服务器,能够将推送消息只推送给必要的用户设备,同时不限制用户的登录设备。
[0007]本发明的技术方案是这样实现的:
[0008]一种抢占式跨平台消息推送方法,包括:
[0009]服务器为每个用户维护用户设备列表,所述用户设备列表包括该用户登录使用过的全部用户设备信息;
[0010]当用户设备连接到服务器时,服务器将所述用户设备的状态设置为已连接;当用户设备与服务器断开连接时,服务器将所述用户设备的状态设置为未连接;
[0011]服务器接收用户设备发送的抢占请求,将当前系统时间作为该用户设备的抢占时间,并将所述抢占时间保存在对应的用户设备列表中;
[0012]服务器需要向用户推送消息时,查询所述用户的用户设备列表中状态设置为已连接、并且抢占时间最晚的用户设备,将消息推送至所述用户设备。
[0013]上述方法中,用户设备发送抢占请求的方式可以为:用户与所述用户设备的程序界面进行交互时,用户设备向服务器发送抢占请求;或者,用户发送消息时,用户设备向服务器发送抢占请求。
[0014]查询用户的用户设备列表中状态设置为已连接、并且抢占时间最晚的用户设备,将消息推送至所述用户设备的方式可以为:从用户的用户设备列表中选择出状态设置为已连接的所有设备,将选择出的所有设备按照抢占时间由晚到早的顺序排序,将排序后的第一个设备作为该用户的主要用户设备,将消息推送至该主要用户设备。
[0015]一种抢占式跨平台消息推送服务器,包括:
[0016]列表维护模块,用于为每个用户维护用户设备列表,所述用户设备列表包括该用户登录使用过的全部用户设备信息;当用户设备连接到所述服务器时,将所述用户设备的状态设置为已连接;当用户设备与所述服务器断开连接时,将所述用户设备的状态设置为未连接;当服务器接收到用户设备发送的抢占请求时,将当前系统时间作为该用户设备的抢占时间,并将所述抢占时间保存在对应的用户设备列表中;
[0017]推送模块,用于需要向用户推送消息时,查询所述用户的用户设备列表中状态设置为已连接、并且抢占时间最晚的用户设备,将消息推送至所述用户设备。
[0018]上述服务器中,推送模块查询用户的用户设备列表中状态设置为已连接、并且抢占时间最晚的用户设备,将消息推送至所述用户设备的方式可以为:从用户的用户设备列表中选择出状态设置为已连接的所有设备,将选择出的所有设备按照抢占时间由晚到早的顺序排序,将排序后的第一个设备作为该用户的主要用户设备,将消息推送至该主要用户设备。
[0019]可见,本发明提出的抢占式跨平台消息推送方法和服务器,能够将消息推送至最后抢占并且保持连接的用户设备上,并且允许用户同时登录多个设备。
【附图说明】
[0020]图1为本发明提出的抢占式跨平台消息推送方法实现流程图;
[0021]图2为本发明实施例一的用户设备列表不意图一;
[0022]图3为本发明实施例一的用户设备列表示意图二 ;
[0023]图4为本发明实施例一中选取主要用户设备的实现流程图;
[0024]图5为本发明提出的抢占式跨平台消息推送服务器结构示意图。
【具体实施方式】
[0025]本发明提出一种抢占式跨平台消息推送方法,如图1为该方法实现流程图,包括:
[0026]步骤101:服务器为每个用户维护用户设备列表,所述用户设备列表包括该用户登录使用过的全部用户设备信息;
[0027]步骤102:当用户设备连接到服务器时,服务器将所述用户设备的状态设置为已连接;当用户设备与服务器断开连接时,服务器将所述用户设备的状态设置为未连接;
[0028]步骤103:服务器接收用户设备发送的抢占请求,将当前系统时间作为该用户设备的抢占时间,并将所述抢占时间保存在对应的用户设备列表中;
[0029]步骤104:服务器需要向用户推送消息时,查询所述用户的用户设备列表中状态设置为已连接、并且抢占时间最晚的用户设备,将消息推送至所述用户设备。
[0030]上述步骤103中,用户设备发送抢占请求的方式可以为:用户与所述用户设备的程序界面进行交互时,用户设备向服务器发送抢占请求;或者,用户发送消息时,用户设备向服务器发送抢占请求。
[0031]上述步骤104中,查询用户的用户设备列表中状态设置为已连接、并且抢占时间最晚的用户设备,将消息推送至所述用户设备的方式可以为:从用户的用户设备列表中选择出状态设置为已连接的所有设备,将选择出的所有设备按照抢占时间由晚到早的顺序排列,将排列后的第一个设备作为该用户的主要用户设备,将消息推送至该主要用户设备。
[0032]以下参照附图,举具体的实施例详细介绍。
[0033]实施例一:
[0034]本实施例包括用户设备连接状态维护、用户设备抢占和消息推送三个部分。
[0035]第一部分:
[0036]针对每个用户,系统维护一个用户设备列表。该列表包含了用户登录使用过的全部用户设备。针对每个用户设备,当用户设备连接到服务器时,将该用户设备的状态设置为已连接;当用户设备与服务
再多了解一些
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1