CN104954227A - 一种抢占式跨平台消息推送方法和服务器 - Google Patents
一种抢占式跨平台消息推送方法和服务器 Download PDFInfo
- Publication number
- CN104954227A CN104954227A CN201410112571.4A CN201410112571A CN104954227A CN 104954227 A CN104954227 A CN 104954227A CN 201410112571 A CN201410112571 A CN 201410112571A CN 104954227 A CN104954227 A CN 104954227A
- Authority
- CN
- China
- Prior art keywords
- user
- subscriber equipment
- server
- equipment
- time
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Landscapes
- Information Transfer Between Computers (AREA)
Abstract
本发明提出一种抢占式跨平台消息推送方法和服务器,其中方法包括:服务器为每个用户维护用户设备列表,所述用户设备列表包括该用户登录使用过的全部用户设备信息;当用户设备连接到服务器时,服务器将所述用户设备的状态设置为已连接;当用户设备与服务器断开连接时,服务器将所述用户设备的状态设置为未连接;服务器接收用户设备发送的抢占请求,将当前系统时间作为该用户设备的抢占时间,并将所述抢占时间保存在对应的用户设备列表中;服务器需要向用户推送消息时,查询所述用户的用户设备列表中状态设置为已连接、并且抢占时间最晚的用户设备,将消息推送至所述用户设备。本发明能够将推送消息只推送给必要的用户设备,同时不限制用户的登录设备。
Description
技术领域
本发明涉及计算机互联网技术领域,尤其涉及一种抢占式跨平台消息推送方法和服务器。
背景技术
目前基本的消息推送的实现类型有以下两种:
第一种,独占推送,即消息只推送给用户最后登录的用户设备;第二种,全部推送,即消息推送给用户所有的用户设备。
上述两种方法均存在缺点。第一种方式虽然不会产生重复的消息推送,但缺点是限制用户只能同时在一台用户设备登录,当用户切换到新的用户设备时,旧的用户设备会断开连接,用户需要重新输入用户名密码登录新设备,造成了不必要的麻烦。第二种方式虽然不限制用户只能登录一台用户设备,但由于同时向所有用户登录过的用户设备推送消息,会产生很多重复消息。一个典型的场景是,用户A在网上聊天,另外一个用户B向其发送了一条消息,用户A的已登录手机设备和平板电脑会同时响起消息推送的提示音。而此时,其实用户A在手机设备上进行操作即可以看到新消息,本无需在查看其他设备的重复推送消息。
发明内容
本发明提供了一种抢占式跨平台消息推送方法,能够将推送消息只推送给必要的用户设备,同时不限制用户的登录设备。
本发明提供了一种抢占式跨平台消息推送服务器,能够将推送消息只推送给必要的用户设备,同时不限制用户的登录设备。
本发明的技术方案是这样实现的:
一种抢占式跨平台消息推送方法,包括:
服务器为每个用户维护用户设备列表,所述用户设备列表包括该用户登录使用过的全部用户设备信息;
当用户设备连接到服务器时,服务器将所述用户设备的状态设置为已连接;当用户设备与服务器断开连接时,服务器将所述用户设备的状态设置为未连接;
服务器接收用户设备发送的抢占请求,将当前系统时间作为该用户设备的抢占时间,并将所述抢占时间保存在对应的用户设备列表中;
服务器需要向用户推送消息时,查询所述用户的用户设备列表中状态设置为已连接、并且抢占时间最晚的用户设备,将消息推送至所述用户设备。
上述方法中,用户设备发送抢占请求的方式可以为:用户与所述用户设备的程序界面进行交互时,用户设备向服务器发送抢占请求;或者,用户发送消息时,用户设备向服务器发送抢占请求。
查询用户的用户设备列表中状态设置为已连接、并且抢占时间最晚的用户设备,将消息推送至所述用户设备的方式可以为:从用户的用户设备列表中选择出状态设置为已连接的所有设备,将选择出的所有设备按照抢占时间由晚到早的顺序排序,将排序后的第一个设备作为该用户的主要用户设备,将消息推送至该主要用户设备。
一种抢占式跨平台消息推送服务器,包括:
列表维护模块,用于为每个用户维护用户设备列表,所述用户设备列表包括该用户登录使用过的全部用户设备信息;当用户设备连接到所述服务器时,将所述用户设备的状态设置为已连接;当用户设备与所述服务器断开连接时,将所述用户设备的状态设置为未连接;当服务器接收到用户设备发送的抢占请求时,将当前系统时间作为该用户设备的抢占时间,并将所述抢占时间保存在对应的用户设备列表中;
推送模块,用于需要向用户推送消息时,查询所述用户的用户设备列表中状态设置为已连接、并且抢占时间最晚的用户设备,将消息推送至所述用户设备。
上述服务器中,推送模块查询用户的用户设备列表中状态设置为已连接、并且抢占时间最晚的用户设备,将消息推送至所述用户设备的方式可以为:从用户的用户设备列表中选择出状态设置为已连接的所有设备,将选择出的所有设备按照抢占时间由晚到早的顺序排序,将排序后的第一个设备作为该用户的主要用户设备,将消息推送至该主要用户设备。
可见,本发明提出的抢占式跨平台消息推送方法和服务器,能够将消息推送至最后抢占并且保持连接的用户设备上,并且允许用户同时登录多个设备。
附图说明
图1为本发明提出的抢占式跨平台消息推送方法实现流程图;
图2为本发明实施例一的用户设备列表示意图一;
图3为本发明实施例一的用户设备列表示意图二;
图4为本发明实施例一中选取主要用户设备的实现流程图;
图5为本发明提出的抢占式跨平台消息推送服务器结构示意图。
具体实施方式
本发明提出一种抢占式跨平台消息推送方法,如图1为该方法实现流程图,包括:
步骤101:服务器为每个用户维护用户设备列表,所述用户设备列表包括该用户登录使用过的全部用户设备信息;
步骤102:当用户设备连接到服务器时,服务器将所述用户设备的状态设置为已连接;当用户设备与服务器断开连接时,服务器将所述用户设备的状态设置为未连接;
步骤103:服务器接收用户设备发送的抢占请求,将当前系统时间作为该用户设备的抢占时间,并将所述抢占时间保存在对应的用户设备列表中;
步骤104:服务器需要向用户推送消息时,查询所述用户的用户设备列表中状态设置为已连接、并且抢占时间最晚的用户设备,将消息推送至所述用户设备。
上述步骤103中,用户设备发送抢占请求的方式可以为:用户与所述用户设备的程序界面进行交互时,用户设备向服务器发送抢占请求;或者,用户发送消息时,用户设备向服务器发送抢占请求。
上述步骤104中,查询用户的用户设备列表中状态设置为已连接、并且抢占时间最晚的用户设备,将消息推送至所述用户设备的方式可以为:从用户的用户设备列表中选择出状态设置为已连接的所有设备,将选择出的所有设备按照抢占时间由晚到早的顺序排列,将排列后的第一个设备作为该用户的主要用户设备,将消息推送至该主要用户设备。
以下参照附图,举具体的实施例详细介绍。
实施例一:
本实施例包括用户设备连接状态维护、用户设备抢占和消息推送三个部分。
第一部分:
针对每个用户,系统维护一个用户设备列表。该列表包含了用户登录使用过的全部用户设备。针对每个用户设备,当用户设备连接到服务器时,将该用户设备的状态设置为已连接;当用户设备与服务器断开连接时,将该用户设备的状态设置为未连接。如图2为一个用户的用户设备列表示意图。
第二部分:
客户设备通过几种预设的抢占时机主动发送抢占请求至服务器。
例如,用户与用户设备的程序界面进行交互时,用户设备向服务器发送抢占请求;或者,用户发送消息时,用户设备向服务器发送抢占请求。
服务器接收到抢占请求后,将当前系统时间作为抢占时间保存到用户设备列表中的对应设备中。如图3为包括抢占时间的用户设备列表示意图。
第三部分:
服务器需要向用户推送消息时,首先检查该用户的用户设备列表,选取连接状态为已连接的全部用户设备,并按照用户设备抢占时间由晚到早的顺序排序,将排序后的第一个设备作为该用户的主要用户设备,将消息推送至该主要用户设备。如图4为选取主要用户设备的实现流程图。
本发明还提出一种抢占式跨平台消息推送服务器,如图5为该服务器的结构示意图,包括:
列表维护模块501,用于为每个用户维护用户设备列表,所述用户设备列表包括该用户登录使用过的全部用户设备信息;当用户设备连接到所述服务器时,将所述用户设备的状态设置为已连接;当用户设备与所述服务器断开连接时,将所述用户设备的状态设置为未连接;当服务器接收到用户设备发送的抢占请求时,将当前系统时间作为该用户设备的抢占时间,并将所述抢占时间保存在对应的用户设备列表中;
推送模块502,用于需要向用户推送消息时,查询所述用户的用户设备列表中状态设置为已连接、并且抢占时间最晚的用户设备,将消息推送至所述用户设备。
上述服务器中,推送模块502查询用户的用户设备列表中状态设置为已连接、并且抢占时间最晚的用户设备,将消息推送至所述用户设备的方式可以为:从用户的用户设备列表中选择出状态设置为已连接的所有设备,将选择出的所有设备按照抢占时间由晚到早的顺序排序,将排序后的第一个设备作为该用户的主要用户设备,将消息推送至该主要用户设备。
综上可见,本发明主要保护多终端跨平台消息推送的抢占机制。首先在服务器维护了每个用户的一个根据抢占时间索引并排序的用户设备列表,根据设备与服务器的连接请求动态更新对应的连接状态信息。当客户端通过预设的抢占时机发起抢占请求后,服务器将处理时的系统时间作为对应设备的抢占时间并保存在用户设备列表中。由于用户设备列表根据抢占时间排序,使得最后抢占并保持连接的设备成为最终的主要推送设备。本发明综合了独占推送和全推两种常见推送形式的优点,既不限制用户只能在一台设备登录使用,也不会推送过多重复消息到多台设备,而是集中推送到用户最后抢占使用的主要设备,使消息在多设备共享同步以及及时的通知提醒之间找到一个有效的平衡点。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
Claims (5)
1.一种抢占式跨平台消息推送方法,其特征在于,所述方法包括:
服务器为每个用户维护用户设备列表,所述用户设备列表包括该用户登录使用过的全部用户设备信息;
当用户设备连接到服务器时,服务器将所述用户设备的状态设置为已连接;当用户设备与服务器断开连接时,服务器将所述用户设备的状态设置为未连接;
服务器接收用户设备发送的抢占请求,将当前系统时间作为该用户设备的抢占时间,并将所述抢占时间保存在对应的用户设备列表中;
服务器需要向用户推送消息时,查询所述用户的用户设备列表中状态设置为已连接、并且抢占时间最晚的用户设备,将消息推送至所述用户设备。
2.根据权利要求1所述的方法,其特征在于,所述用户设备发送抢占请求的方式为:
用户与所述用户设备的程序界面进行交互时,用户设备向服务器发送抢占请求;或者,用户发送消息时,用户设备向服务器发送抢占请求。
3.根据权利要求1所述的方法,其特征在于,所述查询用户的用户设备列表中状态设置为已连接、并且抢占时间最晚的用户设备,将消息推送至所述用户设备的方式为:
从用户的用户设备列表中选择出状态设置为已连接的所有设备,将选择出的所有设备按照抢占时间由晚到早的顺序排序,将排序后的第一个设备作为该用户的主要用户设备,将消息推送至该主要用户设备。
4.一种抢占式跨平台消息推送服务器,其特征在于,所述服务器包括:
列表维护模块,用于为每个用户维护用户设备列表,所述用户设备列表包括该用户登录使用过的全部用户设备信息;当用户设备连接到所述服务器时,将所述用户设备的状态设置为已连接;当用户设备与所述服务器断开连接时,将所述用户设备的状态设置为未连接;当服务器接收到用户设备发送的抢占请求时,将当前系统时间作为该用户设备的抢占时间,并将所述抢占时间保存在对应的用户设备列表中;
推送模块,用于需要向用户推送消息时,查询所述用户的用户设备列表中状态设置为已连接、并且抢占时间最晚的用户设备,将消息推送至所述用户设备。
5.根据权利要求4所述的服务器,其特征在于,所述推送模块查询用户的用户设备列表中状态设置为已连接、并且抢占时间最晚的用户设备,将消息推送至所述用户设备的方式为:
从用户的用户设备列表中选择出状态设置为已连接的所有设备,将选择出的所有设备按照抢占时间由晚到早的顺序排序,将排序后的第一个设备作为该用户的主要用户设备,将消息推送至该主要用户设备。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410112571.4A CN104954227B (zh) | 2014-03-25 | 2014-03-25 | 一种抢占式跨平台消息推送方法和服务器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410112571.4A CN104954227B (zh) | 2014-03-25 | 2014-03-25 | 一种抢占式跨平台消息推送方法和服务器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104954227A true CN104954227A (zh) | 2015-09-30 |
CN104954227B CN104954227B (zh) | 2018-04-20 |
Family
ID=54168599
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410112571.4A Active CN104954227B (zh) | 2014-03-25 | 2014-03-25 | 一种抢占式跨平台消息推送方法和服务器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104954227B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108696420A (zh) * | 2017-04-10 | 2018-10-23 | 北京雪球信息科技有限公司 | 通讯网络中的消息推送方法和装置 |
CN109362045A (zh) * | 2018-11-28 | 2019-02-19 | 内蒙古工业大学 | 一种基于短信数据分析的预防重大群体性事件的预判系统 |
CN110661821A (zh) * | 2018-06-28 | 2020-01-07 | 山东北邮信息技术产业研究院有限公司 | 一种消息推送方法及消息推送装置 |
CN115913787A (zh) * | 2023-02-16 | 2023-04-04 | 国网浙江省电力有限公司 | 适用于电力数据的文件加解密传输方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080228890A1 (en) * | 2005-08-19 | 2008-09-18 | David Alson George | System and method for pushing activated instant messages |
CN102025648A (zh) * | 2009-09-16 | 2011-04-20 | 腾讯科技(深圳)有限公司 | 一种即时通讯的方法和服务器 |
US20120170528A1 (en) * | 2011-01-05 | 2012-07-05 | Samsung Electronics Co. Ltd. | Method for polling a message in an instant messenger and a mobile device adapted to the method |
CN103001941A (zh) * | 2012-08-29 | 2013-03-27 | 五八同城信息技术有限公司 | 基于多点登陆的消息分流方法及装置 |
CN103546363A (zh) * | 2012-07-12 | 2014-01-29 | 中国移动通信集团公司 | 一种即时通信消息推送方法、装置及系统 |
-
2014
- 2014-03-25 CN CN201410112571.4A patent/CN104954227B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080228890A1 (en) * | 2005-08-19 | 2008-09-18 | David Alson George | System and method for pushing activated instant messages |
CN102025648A (zh) * | 2009-09-16 | 2011-04-20 | 腾讯科技(深圳)有限公司 | 一种即时通讯的方法和服务器 |
US20120170528A1 (en) * | 2011-01-05 | 2012-07-05 | Samsung Electronics Co. Ltd. | Method for polling a message in an instant messenger and a mobile device adapted to the method |
CN103546363A (zh) * | 2012-07-12 | 2014-01-29 | 中国移动通信集团公司 | 一种即时通信消息推送方法、装置及系统 |
CN103001941A (zh) * | 2012-08-29 | 2013-03-27 | 五八同城信息技术有限公司 | 基于多点登陆的消息分流方法及装置 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108696420A (zh) * | 2017-04-10 | 2018-10-23 | 北京雪球信息科技有限公司 | 通讯网络中的消息推送方法和装置 |
CN108696420B (zh) * | 2017-04-10 | 2020-09-11 | 雪球(北京)技术开发有限公司 | 通讯网络中的消息推送方法和装置 |
CN110661821A (zh) * | 2018-06-28 | 2020-01-07 | 山东北邮信息技术产业研究院有限公司 | 一种消息推送方法及消息推送装置 |
CN109362045A (zh) * | 2018-11-28 | 2019-02-19 | 内蒙古工业大学 | 一种基于短信数据分析的预防重大群体性事件的预判系统 |
CN115913787A (zh) * | 2023-02-16 | 2023-04-04 | 国网浙江省电力有限公司 | 适用于电力数据的文件加解密传输方法 |
Also Published As
Publication number | Publication date |
---|---|
CN104954227B (zh) | 2018-04-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3836486A1 (en) | Service link selection control method and device | |
CN104717133A (zh) | 一种分布式消息推送系统及方法 | |
CN104954227A (zh) | 一种抢占式跨平台消息推送方法和服务器 | |
CN104580550A (zh) | 分布式系统中多业务板分流时的nat处理方法及设备 | |
CN109510758B (zh) | 会话建立方法、终端及系统 | |
CN105939291A (zh) | 报文处理方法和网络设备 | |
CN101448004A (zh) | 基于即时通信的用户状态发布方法、服务器及系统 | |
CN103548315A (zh) | 用于高性能低等待时间实时通知递送的方法和装置 | |
CN104539462B (zh) | 一种切换至灾备应用实例的方法及装置 | |
CN102130853A (zh) | 实现群组信息交互的方法及系统 | |
CN107528767B (zh) | 会话的处理方法和装置 | |
JP7367120B2 (ja) | インタフェースによるユーザインタラクションに基づく動的オブジェクトアップデートサブスクリプション | |
CN102185701A (zh) | 一种实现群组信息交互的方法及系统 | |
CN104168200A (zh) | 一种基于Open vSwitch实现ACL功能的方法及系统 | |
JP6345254B2 (ja) | ビデオ通信終了方法および装置 | |
CN105681122B (zh) | 用于电信设备监视的方法和系统 | |
CN105635222A (zh) | 云终端升级方法、系统、网管服务器及代理服务器 | |
CN104580346A (zh) | 数据传输方法及装置 | |
CN107423446B (zh) | 基于云存储的新媒体自动化可信部署系统和方法 | |
CN104022896B (zh) | 一种配置管理方法、装置及网络设备 | |
US10110537B2 (en) | Method and device for notifying information of social client | |
NZ587500A (en) | A method for presenting an updated status overview of persons staying in one or more specific geographical locations abroad | |
CN105025042B (zh) | 一种确定数据信息的方法及系统、代理服务器 | |
CN107566475B (zh) | 一种会话故障转移方法及装置 | |
CN103533001A (zh) | 基于http多重代理的通信方法和系统、中间代理服务器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20181206 Address after: 100102 19th Floor, 3A Block, Soho Tower, Wangjing, No. 1 Courtyard, Futong East Street, Chaoyang District, Beijing Patentee after: Snowball (Beijing) Technology Development Co., Ltd. Address before: 100080 Beijing Haidian District Haidian North Second Street No. 8 803 Patentee before: BEIJING XUEQIU INFORMATION TECHNOLOGY CO., LTD. |