《一种基于ANDROID移动平台的运维消息推送方法.pdf》由会员分享,可在线阅读,更多相关《一种基于ANDROID移动平台的运维消息推送方法.pdf(8页完整版)》请在专利查询网上搜索。
1、(10)申请公布号 CN 103973718 A (43)申请公布日 2014.08.06 CN 103973718 A (21)申请号 201310028244.6 (22)申请日 2013.01.25 H04L 29/08(2006.01) (71)申请人 成都勤智数码科技股份有限公司 地址 610000 四川省成都市高新区天华二路 81 号天府软件园 C 区 10 号楼 20 层 (72)发明人 袁啸川 (54) 发明名称 一种基于 android 移动平台的运维消息推送 方法 (57) 摘要 一种基于 android 移动平台的运维消息推送 方法, 包括服务端和客户端 ; 服务端分为基。
2、础业 务模块和消息推送模块 ; 服务端提供及时消息推 送, 以及离线消息的保存与再次连接时的推送。 客 户端与服务端以 socket 长连接的方式维持会话 ; 客户端以注册的方式建立 androidservice ; 客户 端提供多种消息提示的方式 ; 采用这种方案的运 维应用的消息推送, 不仅告警消息获取及时, 且可 减少用户操作不便, 提高交互性和工作效率。 (51)Int.Cl. 权利要求书 1 页 说明书 3 页 附图 3 页 (19)中华人民共和国国家知识产权局 (12)发明专利申请 权利要求书1页 说明书3页 附图3页 (10)申请公布号 CN 103973718 A CN 103。
3、973718 A 1/1 页 2 1. 一种基于 android 移动平台的运维消息推送方法, 包含有服务端部分和客户端部 分, 其特征在于, 该方法的服务端部分包括以下步骤 : 1) 服务端启动 ; 2) 服务端判断是否有消息需要推送, 没有, 则间隔一定时间继续轮询 ; 有, 准备进行消 息推送 ; 3) 服务端提供及时消息推送, 以及离线消息的保存与再次连接时的推送 ; 客户端的工作与服务端相适应, 包括以下步骤 : 1) 启动运维应用, 并登陆 ; 2) 登陆成功后, 启动 Service, Service 以注册的方式建立, 并在启动后一直运行和工 作在 android 系统后台, 。
4、用户在系统中手动结束或者系统重启后该 service 才会结束 ; 3) 启动线程, 通过 socket 长连接与服务端保存会话 ; 4) 接收离线消息 ; 5) 监听消息 ; 是否有新消息被推送进入, 没有, 继续监听 ; 有, 准备进行提示 ; 6) 监听到消息, 判断是否需要系统消息栏提示 ; 如果运维应用没启动或者当前界面不 在运维应用内, 则以 android 的 notification 系统消息栏方式提示用户, 并在用户点击消 息时启动应用、 跳转到对应业务模块 ; 如果在应用界面内, 则更新界面数据并以提示框形式 提示用户。 2.根据权利要求1所述一种基于android移动平台。
5、的运维消息推送方法, 其特征在于 : 服务端分为基础业务模块和消息推送模块 ; 所述服务端启动步骤具体包括, 包括启动基础 业务模块, 启动消息推送模块, 启动轮询线程。 3. 根据权利要求 1 所述一种基于 android 移动平台的运维消息推送方法, 其特征在 于 : 服务端推送消息的具体步骤为 : 判断用户是否在线, 如果用户在线, 直接推送消息到客 户端 ; 如果用户没在线, 标记消息为离线消息, 并在数据库中持久化。 权 利 要 求 书 CN 103973718 A 2 1/3 页 3 一种基于 android 移动平台的运维消息推送方法 技术领域 0001 本发明涉及IT运维领域,。
6、 尤其涉及android移动平台的运维系统应用的一种消息 推送方法。 背景技术 0002 目前 android 移动平台上的 IT 运维系统应用在 IT 运维工作中的作用越发重要, 对提高工作效率, 降低工作成本都起到了重要的作用。比如移动平台在获取信息方面有比 较明显的优势, 能让服务端主动推送监控告警的消息给客户端。然而, 目前的 android 移动 平台上的 IT 运维系统应用推送消息的方式为短信推送方式, 此方式有以下不足 : 1) 因为通信运营商、 技术、 网络等因素, 会造成一定延迟, 运维工程师不能最快的的获 取到告警消息 ; 2) 交互性比较差, 运维工程师在查看短信时人为的。
7、记住告警的消息标识, 然后启动 IT 运维系统应用, 登录系统, 到具体功能模块去查找, 查看告警的消息。 发明内容 0003 本发明的目的在于提供一种基于 android 移动平台的运维应用的消息推送方法, 不仅可以提高告警消息获取的及时性、 且可以使运维人员的查看与使用更加方便。 0004 本发明是采用如下方案实现上述发明目的的, 一种基于 android 移动平台的运维 消息推送方法, 包含有服务端部分和客户端部分两部, 服务端的工作步骤如下 : 1) 服务端启动, 包括启动基础业务模块, 启动消息推送模块, 启动轮询线程 ; 2) 服务端判断是否有消息需要推送, 没有, 则间隔一定时间。
8、继续轮询 ; 有, 准备进行消 息推送 ; 3) 判断用户是否在线, 如果用户在线, 直接推送消息到客户端 ; 如果用户没在线, 标记 消息为离线消息, 并在数据库中持久化。 0005 与服务端相适应的, 客户端的工作包括以下步骤 : 1) 启动运维应用, 并登陆 ; 2) 登陆成功后, 启动 Service, Service 以注册的方式建立, 并在启动后一直运行和工 作在 android 系统后台, 用户在系统中手动结束或者系统重启后该 service 才会结束 ; 3) 启动线程, 通过 socket 长连接与服务端保存会话 ; 4) 接收离线消息 ; 5) 监听消息 ; 是否有新消息被。
9、推送进入, 没有, 继续监听 ; 有, 准备进行提示 ; 6) 监听到消息, 判断是否需要系统消息栏提示 ; 如果运维应用没启动或者当前界面不 在运维应用内, 则以 android 的 notification 系统消息栏方式提示用户, 并在用户点击消 息时启动应用、 跳转到对应业务模块 ; 如果在应用界面内, 则更新界面数据并以提示框形式 提示用户。 0006 在本方案中, 服务器端不仅提供运维系统所需要的业务功能的支持, 并且提供与 说 明 书 CN 103973718 A 3 2/3 页 4 客户端通信的SOCKET长连接, 以便及时推送消息 ; 该模块采用开源的Apache MINA框。
10、架, 基 于 JAVA NIO 异步不阻塞的方式实现消息推送 ; 当启动服务端时, 一并启动消息推送模块, 该模块中启动轮询线程, 轮询数据库中需要推送的消息 ; 如有消息被发现, 则以消息方式推 送给客户端或者标记消息为离线消息, 当客户端登陆后, 再次推送。 0007 在本方案中, 客户端不仅提供与服务器端所对应的功能模块, 并且提供一个 android 的 service, 该 service 以注册的方式实现, 启动后常驻 android 系统中, 即便用户 关闭客户端应用, service 依然在 android 系统后台工作 ; 该 service 中提供 socket 的管 道,。
11、 以长连接的方式和服务器端保持会话 ; 登陆并维持会话成功后, 向服务端消息推送模块 发送消息表明身份, 以便监听消息, 获取离线消息 ; 此后, 启动线程不间断监听消息, 在监听 到消息后给出相应的系统提示和相关操提示。 0008 采用这种方案的运维应用的消息推送, 不仅告警消息获取及时, 且可减少用户操 作不便, 提高交互性和工作效率。 比如 : 当应用未启动时, 或应用虽启动但未在应用中时, 给 出 android 系统的系统消息提示, 并且在点击消息后可直接启动应用并跳转到相应模块 ; 在应用中时, 更新应用的相关数据, 并提示消息, 提醒用户。 附图说明 0009 本发明将通过例子并。
12、参照附图的方式说明, 其中 图 1 是本发明的原理示意图 ; 图 2 是本发明服务端的流程示意图 ; 图 3 是本发明客户端的流程示意图。 具体实施方式 0010 本说明书中公开的所有特征, 或公开的所有方法或过程中的步骤, 除了互相排斥 的特征和 / 或步骤以外, 均可以以任何方式组合。 0011 如图 1 所示, 本发明包括有服务器端和客户端。服务器端不仅提供运维系统所需 要的业务功能的支持, 并且提供与客户端通信的 SOCKET 长连接, 以便及时推送消息 ; 该模 块采用开源的Apache MINA 框架, 基于 JAVA NIO 异步不阻塞的方式实现消息推送。客户端 不仅提供与服务器。
13、端所对应的功能模块, 并且提供一个 android 的 service, 该 service 以 注册的方式实现, 启动后常驻 android 系统中, 即便用户关闭客户端应用, service 依然在 android 系统后台工作 ; 该 service 中提供 socket 的管道, 以长连接的方式和服务器端保 持会话 ; 客户端运行在各 android 系统终端中, 终端数量可能有数百或数千个。 0012 该方法的整体工作流程为 : (1) 包括服务端和客户端 ; (2) 客户端与服务端以 socket 长连接的方式维持会话 ; (3) 客户端以注册的方式建立 android servi。
14、ce ; (4) 客户端提供消息提示的方式 : 应用未启动或者不在应用内, 采用 android notification 方式给出系统提示, 并且在点击系统消息栏目中对应的通知消息时, 可以启 动、 跳转或者跳转到对应提示的信息的模块 ; 在应用内, 更新数据并给出提示信息 ; (5) 服务端分为基础业务模块和消息推送模块 ; 说 明 书 CN 103973718 A 4 3/3 页 5 (6) 服务端提供及时消息推送, 以及离线消息的保存与再次连接时的推送。 0013 如图 2 所示, 详细描述了服务端工作所包括的以下步骤 : 1. 启动基础业务模块 ; 2. 启动消息推送模块 ; 3. 。
15、启动轮询线程 ; 4. 判断是否有消息需要推送。没有, 则间隔一定时间继续轮询。有, 准备进行消息推 送 ; 5. 判断用户是否在线。如果在线, 直接推送消息到客户端 ; 如果没在线, 标记消息为离 线消息, 并在数据库中持久化。 0014 如图 3 所示, 详细描述了客户端工作所包括的以下步骤 : 1. 启动应用, 并登陆 ; 2. 登陆成功后, 启动 Service。Service 以注册的方式建立, 并在启动后一直运行和工 作在 android 系统后台 ( 用户在系统中手动结束或者系统重启后该 service 才会结束 ) ; 3. 启动线程, 通过 socket 长连接与服务端保存会。
16、话 ; 4. 接收离线消息 ; 5. 监听消息 ; 6. 监听到消息, 判断是否需要系统消息栏提示。如果应用没启动或者当前界面不在 应用内, 则以 android 的 notification 系统消息栏方式提示用户, 并在用户点击消息时启 动应用、 跳转到对应业务模块。 如果在应用界面内, 则更新界面数据并以提示框形式提示用 户。 0015 从上述说明可知, 本发明中的消息推送的工作方法及其装置, 不仅可以灵活、 方 便、 及时有效的实现消息推送, 避免第三方造成的各种延迟或者成本问题, 以及更方便的交 互方式带来人性化体验。 0016 本发明并不局限于前述的具体实施方式。 本发明扩展到任何在本说明书中披露的 新特征或任何新的组合, 以及披露的任一新的方法或过程的步骤或任何新的组合。 说 明 书 CN 103973718 A 5 1/3 页 6 图 1 说 明 书 附 图 CN 103973718 A 6 2/3 页 7 图 2 说 明 书 附 图 CN 103973718 A 7 3/3 页 8 图 3 说 明 书 附 图 CN 103973718 A 8 。