CN109246220B - 一种消息推送***及方法 - Google Patents
一种消息推送***及方法 Download PDFInfo
- Publication number
- CN109246220B CN109246220B CN201811094844.1A CN201811094844A CN109246220B CN 109246220 B CN109246220 B CN 109246220B CN 201811094844 A CN201811094844 A CN 201811094844A CN 109246220 B CN109246220 B CN 109246220B
- Authority
- CN
- China
- Prior art keywords
- client
- pushed
- message
- request
- identifier
- 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.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims abstract description 18
- 238000004891 communication Methods 0.000 claims abstract description 45
- 238000012790 confirmation Methods 0.000 claims abstract description 37
- 230000000977 initiatory effect Effects 0.000 claims abstract description 5
- 239000000126 substance Substances 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 14
- 230000001960 triggered effect Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 238000011161 development Methods 0.000 description 2
- 210000001503 joint Anatomy 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000008707 rearrangement Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/55—Push-based network services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明实施例公开了一种消息推送***及方法,所述***包括:至少一个通讯终端、消息服务器及客户端确认模块;通讯终端,用于向消息服务器发起消息推送请求;消息服务器,用于根据消息推送请求向客户端确认模块发送待推送客户端获取请求;客户端确认模块,用于根据待推送客户端获取请求确定待推送客户端获取请求所对应的至少一个待推送客户端标识,并将至少一个待推送客户端标识发送至消息服务器;消息服务器,还用于接收待推送客户端标识,并向待推送客户端标识对应的待推送客户端推送待推送消息,实现了客户端类型不同时消息推送接口的统一,在开启一条线程的基础上,实现了不同类型的消息的推送,节省了资源的同时节省了通讯终端的耗电量。
Description
技术领域
本发明实施例涉及通讯技术领域,尤其涉及一种消息推送***及方法。
背景技术
随着移动终端设备的不断发展,移动终端在医疗领域的应用也越来越广泛。受医院工作环境的影响,医护人员不方便通过移动电话等方式进行沟通。目前,面向普通移动终端的多媒体通讯软件发展迅速,如,各医护人员可以通过移动终端进行通讯。
但现有的消息推送技术中,大部分都是在特定的平台上,针对特定场景、特定的客户端开发的,无法满足医院特定环境中的需要。并且,现有的消息推送技术中,需要针对不同的消息推送方式(如点对点和发布/订阅)做不同的调用和处理,通过不同的线程进行消息的推送及发布。并且客户端所运行的***不同(如安卓、IOS等***)时,相应的消息推送方式也不同,从而导致应用开发人员必须针对不同的手机平台单独学习、开发,进而导致开发效率低下。另外,现有的消息推送技术中,发送不同的消息、订阅不同的消息主题需要开启不同的发送或监听线程,建立不同的连接,这些线程和连接不仅增加了资源得消耗,还增加了电量的消耗。
发明内容
本发明实施例提供了一种消息推送***及方法,以实现针对不同的客户端实现消息推送接口的统一,并且在开启一条线程的基础上,实现不同类型的消息的推送,节省资源的同时节省通讯终端的耗电量。
第一方面,本发明实施例提供了一种消息推送***,包括:至少一个通讯终端、消息服务器及客户端确认模块;
所述通讯终端,用于向消息服务器发起包含有待推送消息的消息推送请求;
所述消息服务器,用于根据所述消息推送请求向所述客户端确认模块发送待推送客户端获取请求;
所述客户端确认模块,用于根据所述消息服务器发送的待推送客户端获取请求确定所述待推送客户端获取请求所对应的至少一个待推送客户端标识,并将所述至少一个待推送客户端标识发送至所述消息服务器;
所述消息服务器,还用于接收所述待推送客户端标识,并向所述待推送客户端标识对应的待推送客户端推送所述待推送消息。
第二方面,本发明实施例还提供了一种消息推送方法,应用于如本发明任意实施例所提供的消息推送***,包括:
通讯终端向消息服务器发起包含有待推送消息的消息推送请求;
所述消息服务器根据所述消息推送请求向所述客户端确认模块发送待推送客户端获取请求;
所述客户端确认模块根据所述消息服务器发送的待推送客户端获取请求确定所述待推送客户端获取请求所对应的至少一个待推送客户端标识,并将所述待推送客户端标识发送至所述消息服务器;
所述消息服务器接收所述待推送客户端标识,并向所述待推送客户端标识对应的待推送客户端推送所述待推送消息。
本发明实施例所提供的消息推送***,包括:至少一个通讯终端、消息服务器及客户端确认模块;通讯终端,用于向消息服务器发起包含有待推送消息的消息推送请求;消息服务器,用于根据消息推送请求向客户端确认模块发送待推送客户端获取请求;客户端确认模块,用于根据消息服务器发送的待推送客户端获取请求确定待推送客户端获取请求所对应的至少一个待推送客户端标识,并将至少一个待推送客户端标识发送至消息服务器;消息服务器,还用于接收待推送客户端标识,并向待推送客户端标识对应的待推送客户端推送待推送消息,通过消息服务器向客户端确认模块获取待推送客户端标识,实现了客户端类型不同时消息推送接口的统一,并且在开启一条线程的基础上,实现了不同类型的消息的推送,节省了资源的同时节省了通讯终端的耗电量。
附图说明
图1是本发明实施例一所提供的消息推送***的结构示意图;
图2是本发明实施例二所提供的消息推送***的结构示意图;
图3是本发明实施例三所提供的消息推送***的结构示意图;
图4a是本发明实施例四所提供的消息推送***的结构示意图;
图4b是本发明实施例四所提供的消息推送***中各模块的关系示意图;
图4c是本发明实施例四所提供的消息推送***中类与模块之间的关系示意图;
图5a是本发明实施例五所提供的消息推送方法的流程图;
图5b是本发明实施例五所提供的消息推送方法中客户端注册的流程示意图;
图5c是本发明实施例五所提供的消息推送方法中消息推送的时序图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
实施例一
图1是本发明实施例一所提供的消息推送***的结构示意图,本实施例所提供的消息推送***可用于在医院内各医护人员之间进行消息推送时的情形。如图1所示,该消息推送***包括:至少一个通讯终端110、消息服务器120及客户端确认模块130。
所述通讯终端110,用于向消息服务器120发起包含有待推送消息的消息推送请求;
所述消息服务器120,用于根据所述消息推送请求向所述客户端确认模块130发送待推送客户端获取请求;
所述客户端确认模块130,用于根据所述消息服务器120发送的待推送客户端获取请求确定所述待推送客户端获取请求所对应的至少一个待推送客户端标识,并将所述至少一个待推送客户端标识发送至所述消息服务器120;
所述消息服务器120,还用于接收所述待推送客户端标识,并向所述待推送客户端标识对应的待推送客户端推送所述待推送消息。
可选的,为了使医院的医护人员之间可以及时进行联系,各医护人员可随身佩戴一个移动终端,进行用户登录后,便可以随时与其他医护人员进行联系,实现各医护人员之间的消息的推送及消息的发布。
在本实施例中,当医护人员通过通讯终端110进行消息的推送时,可以在选中待推送目标后,在待推送目标所对应的信息输入区域内输入待推送消息,点击“发送”按钮,触发消息的推送操作。通讯终端110检测到医护人员触发的消息推送操作后,根据获取的待推送消息及相关信息形成消息推送请求,并将该消息推送请求发送至消息服务器120,消息服务器120根据接收到的消息推送请求生成待推送客户端获取请求,并将生成的待推送客户端获取请求发送至客户端确认模块130,客户端确认模块130根据接收到的待推送客户端获取请求确定与该待推送客户端获取请求所对应的待推送客户端标识,并将确定的待推送客户端标识反馈至消息服务器120,消息服务器120根据接收到的待推送客户端标识,向待推送客户端推送待推送消息,完成消息的推送。
可选的,本实施例所提供的消息推送***可以实现不同消息推送类型的待推送消息的推送。可选的,本实施例所提供的消息推送***不仅可以实现点对点消息的推送,还可以实现发布订阅式消息的推送。其中,点对点消息的推送是指将待推送消息由一个通讯终端推送至另一个通讯终端,发布订阅式消息的推送是指将待推送消息由一个通讯终端推送至与该待推送消息关联的多个通讯终端。
可选的,当医护人员需要通过通讯终端实现消息点对点的推送时,可以选中待推送用户,在待推送用户所对应的信息输入区域输入待推送消息,点击“发送”按钮,触发消息的点对点推送。当医护人员需要通过通讯终端实现消息的发布订阅式推送时,可以选中发布订阅主题,在发布订阅主题所对应的信息数去区域内输入待推送消息,点击“发送”按钮,触发消息的发布订阅式推送。
在本实施例中,不管消息推送类型为点对点消息的推送,还是发布订阅式消息的推送,均通过消息服务器向客户端确认模块获取待推送客户端标识,统一了不同消息推送类型的推送方式,仅需在通讯终端与消息服务器间建立一条线程即可实现,大大节省了资源的同时,也大大节省了通讯终端的耗电量;并且使得当用户要发送消息时,只需要指定消息的目的地即可,不用关心目的地到底是客户端还是发布订阅的主题,更无需针对这两种方式做一些特殊处理,简化了用户的操作,提高了用户体验。
可选的,本实施例中通过消息服务器调用客户端确认模块还实现了针对不同客户端***的消息推送接口的统一,对外提供了统一的消息推送相关的接口,屏蔽了不同客户端之间推送消息的差异,可以支持多种类型的客户端(如Android、IOS、PC、window phone等),并且能很方便的与第三方消息服务器(如activeMQ)整合,满足了消息推送的多样化需求,实现了高效率、跨平台、跨客户端(消息接收端)的消息推送。
本发明实施例所提供的消息推送***,包括:至少一个通讯终端、消息服务器及客户端确认模块;通讯终端,用于向消息服务器发起包含有待推送消息的消息推送请求;消息服务器,用于根据消息推送请求向客户端确认模块发送待推送客户端获取请求;客户端确认模块,用于根据消息服务器发送的待推送客户端获取请求确定待推送客户端获取请求所对应的至少一个待推送客户端标识,并将至少一个待推送客户端标识发送至消息服务器;消息服务器,还用于接收待推送客户端标识,并向待推送客户端标识对应的待推送客户端推送待推送消息,通过消息服务器向客户端确认模块获取待推送客户端标识,实现了客户端类型不同时消息推送接口的统一,并且在开启一条线程的基础上,实现了不同类型的消息的推送,节省了资源的同时节省了通讯终端的耗电量。
在上述方案的基础上,所述消息服务器用于:
判断所述消息推送请求的推送类型,并根据所述推送类型将所述待推送客户端获取请求发送至对应的客户端确定模块。
在本实施例中,针对不同的消息推送类型,均通过消息服务器生产待推送客户端获取请求,并通过待推送客户端获取请求向客户端确认模块获取待推送客户端标识。可选的,可以设置待推送消息类型与客户端确定模块的对应关系,当待推送消息类型不同时,将待推送客户端获取请求发送至与待推送消息类型对应的客户端确定模块。不同的待推送消息类型对应不同的客户端确定模块,使得消息推送***的调用逻辑更加清晰,更加方便管理。
实施例二
图2是本发明实施例二所提供的消息推送***的结构示意图,本实施例以上述实施例为基础,将消息服务器及客户端确定模块进行了具体化。如图2所示,所述客户端确认模块130包括客户端注册单元131,所述消息服务器120用于:
若所述推送类型为点对点推送,则根据所述消息推送请求生成待推送客户端获取请求,并将所述待推送客户端获取请求发送至所述客户端注册单元131。
在本实施例中,消息服务器120接收到通讯终端110发起的消息推送请求后,根据消息推送请求判断待推送消息的消息推送类型,若消息推送类型为点对点推送,则消息服务器120根据消息推送请求生成待推送客户端获取请求,将待推送客户端获取请求发送至客户端注册单元131,并接收客户端注册单元131反馈的待推送客户端标识,根据接收到的待推送客户端标识进行待推送消息的点对点推送。
可选的,通讯终端110发起的消息推送请求中包含有待推送消息及待推送目标标识(即待推送用户标识),消息服务器120可以根据待推送目标标识判断待推送消息的推送类型。可选的,可以将待推送目标标识的预设字段与预设标识进行匹配,将与待推送目标标识匹配的预设标识所对应的消息类型确定为待推送消息的消息类型。示例性的,可以将待推送目标标识的首位数字与预设标识进行匹配,根据匹配结果确定待推送消息的消息类型。
示例性的,若设置点对点消息推送的预设标识为1,则当待推送目标标识的首位数字为1时,确定待推送消息的消息类型为点对点消息推送,将根据消息推送请求生成的待推送客户端获取请求发送至客户端注册单元。
在上述方案的基础上,所述客户端注册单元131用于:
根据所述消息服务器120发送的待推送客户端获取请求,确定与所述待推送客户端获取请求中的待推送用户标识所对应的待推送客户端标识,并将所述待推送客户端标识发送至所述消息服务器120。
可选的,消息服务器120发送的待推送客户端获取请求中包含有待推送用户标识,客户端注册单元131根据待推送客户端获取请求中包含的待推送用户标识确定待推送客户端标识,并将确定的待推送客户端标识发送至消息服务器120.
示例性的,若消息服务器发送的待推送客户端获取请求中包含的待推送用户标识为“11”,则客户端注册单元根据存储的用户标识与客户端标识之间的关联关系,确定与用户标识“11”对应存储的客户端标识“31”,并将客户端标识“31”作为待推送客户端标识发送至消息服务器。
在上述方案的基础上,所述客户端注册单元131还用于:
接收待注册用户的注册请求,并获取所述注册请求中包含的用户标识及客户端标识,建立所述客户端标识与所述用户标识之间的关联关系。
在本实施例中,客户端注册单元还可以响应新用户的注册请求,并存储待注册用户的相关信息。可选的,当需要注册新用户时,可以在通讯终端的用户注册界面上输入用户基本信息,点击“注册”按钮触发新用户的注册操作,通讯终端检测到用户触发的注册操作时,根据用户输入的基本信息,结合自身的标识信息生成用户注册请求,并将生成的用户注册请求发送至消息服务器,消息服务器将该用户注册请求发送至客户端注册单元,客户端注册单元获取用户注册请求中的用户标识及客户端标识,将用户标识与客户端标识对应存储,建立用户标识与客户端标识之间的关联关系。
本发明实施例的技术方案,在上述实施例的基础上将消息服务器及客户端确定模块进行了具体化,通过消息服务器判断待推送消息的推送类型为点对点推送时,根据消息推送请求生成待推送客户端获取请求,并将待推送客户端获取请求发送至客户端注册单元,获取客户端注册单元反馈的待推送客户端标识,根据获取的待推送客户端标识完成待推送消息的点对点推送,实现了当待推送消息类型不同时,消息推送接口的统一,并且使得待推送客户端的确定更加准确。
实施例三
图3是本发明实施例三所提供的消息推送***的结构示意图,本实施例以上述实施例为基础,将消息服务器及客户端确定模块进行了具体化。如图3所示,所述客户端确认模块130包括消息订阅单元132,所述消息服务器120用于:
若所述推送类型为发布订阅,则根据所述消息推送请求生成待推送客户端获取请求,并将所述待推送客户端获取请求发送至所述消息订阅单元132。
在本实施例中,消息服务器120接收到通讯终端110发起的消息推送请求后,根据消息推送请求判断待推送消息的消息推送类型,若消息推送类型为发布订阅消息推送,则消息服务器120根据消息推送请求生成待推送客户端获取请求,将待推送客户端获取请求发送至消息订阅单元132,并接收消息订阅单元132反馈的至少一个待推送客户端标识,根据接收到的至少一个待推送客户端标识进行待推送消息的发布订阅推送。
可选的,通讯终端110发起的消息推送请求中包含有待推送消息及待推送目标标识(即待推送用户标识),消息服务器120可以根据待推送目标标识判断待推送消息的推送类型。可选的,可以将待推送目标标识的预设字段与预设标识进行匹配,将与待推送目标标识匹配的预设标识所对应的消息类型确定为待推送消息的消息类型。示例性的,可以将待推送目标标识的首位数字与预设标识进行匹配,根据匹配结果确定待推送消息的消息类型。
示例性的,若设置发布订阅消息推送的预设标识为2,则当待推送目标标识的首位数字为2时,确定待推送消息的消息类型为发布订阅消息推送,将根据消息推送请求生成的待推送客户端获取请求发送至消息订阅单元。
在上述方案的基础上,所述消息订阅单元132用于:
根据所述消息服务器120发送的待推送客户端获取请求,确定与所述待推送客户端获取请求对应的至少一个待推送客户端标识,并将所述至少一个待推送客户端标识发送至所述消息服务器120。
在本实施例中,消息服务器120发送的待推送客户端获取请求中包含有待推送目标标识,消息订阅单元132根据待推送目标标识确定待推送客户端获取请求所对应的至少一个待推送客户端标识,并将确定的待推送客户端标识发送至消息服务器120。
在上述方案的基础上,所述消息订阅单元132用于:
根据所述待推送客户端获取请求中包含的主题标识,确定与所述主题标识所对应的至少一个待推送客户端标识,并将所述至少一个待推送客户端标识发送至所述消息服务器120。
可选的,消息订阅单元132中存储有各主题的相关订阅信息,如订阅各主题的用户标识、客户端标识等。可选的,当待推送消息的推送类型为发布订阅消息推送时,待推送目标标识可以为发布订阅的主题标识。消息服务器120发送携带有主题标识的待推送客户端获取请求,消息订阅单元132根据待推送客户端获取请求中包含的主题标识确定与主题标识对应的至少一个待推送客户端标识,并将确定的待推送客户端标识发送至消息服务器120。
示例性的,若消息服务器发送的待推送客户端获取请求中包含的主题标识为“21”,则消息订阅单元根据存储的主题标识与客户端标识之间的关联关系,确定与主题标识“21”对应存储的客户端标识有“32”、“33”,并将客户端标识32”、“33”作为待推送客户端标识发送至消息服务器。
在上述方案的基础上,所述消息订阅单元132还用于:
接收待订阅用户的订阅请求,并获取所述订阅请求中包含的主题标识及客户端标识,建立所述主题标识与所述客户端标识之间的关联关系。
在本实施例中,消息订阅单元还可以响应用户的订阅请求,并存储各主题的订阅用户信息。可选的,当有用户需要订阅某一主题时,可以在通讯终端上该主题的订阅界面上点击“订阅”按钮触发订阅操作,通讯终端检测到用户触发的订阅操作时,根据用户所订阅的主题标识,结合自身的标识信息生成用户订阅请求,并将生成的用户订阅请求发送至消息服务器,消息服务器将该用户订阅请求发送至消息订阅单元,消息订阅单元获取用户订阅请求中的主题标识及客户端标识,将主题标识与客户端标识对应存储,建立主题标识与客户端标识之间的关联关系。
可选的,消息订阅请求中还可以包含订阅用户的用户标识,当消息订阅请求中包含用户标识时,消息订阅单元可以将用户标识、主题标识及客户端标识对应存储,建立用户标识、主题标识及客户端标识之间的关联关系。
本发明实施例的技术方案,在上述实施例的基础上将消息服务器及客户端确定模块进行了具体化,通过消息服务器判断待推送消息的推送类型为发布订阅消息推送时,根据消息推送请求生成待推送客户端获取请求,并将待推送客户端获取请求发送至消息订阅单元,获取消息订阅单元反馈的待推送客户端标识,根据获取的待推送客户端标识完成待推送消息的发布订阅推送,实现了当待推送消息类型不同时,消息推送接口的统一,并且使得待推送客户端的确定更加准确。
实施例四
图4a是本发明实施例四所提供的消息推送***的结构示意图。本实施例在上述实施例的基础上,提供了一种优选实施方式。
如图4a所示,该消息推送***可接入的客户端可以为Android、IOS、PC等客户端。该消息推送***包括:接口服务模块、客户端注册模块、消息订阅模块、消息接收发送模块、配置管理模块。图4b是本发明实施例四所提供的消息推送***中各模块的关系示意图。如图4b所示,接口服务模块对客户端注册模块、消息订阅模块、消息接收发送模块所提供的功能进行了封装,对外提供了统一的接口,以供调用。消息接收发送模块从客户端注册模块获取已注册的客户端,从消息订阅模块获取已订阅某主题的客户端列表,以便进行消息推送。消息接收发送模块在进行消息收发时会使用到配置管理模块中的部分配置数据。
图4c是本发明实施例四所提供的消息推送***中类与模块之间的关系示意图。如图4c所示,类与模块之间的关系如下:接口服务模块划分的类为:MessageService,MessageServiceImpl(MessageService的默认实现);客户端注册模块划分的类为:DestinationRegister;消息订阅模块划分的类为:Subscriber;消息接收发送模块划分的类为:MessageManager,MessagePusher,AndroidPusher,IOSPusher,PCPusher;配置管理模块划分的类为:Configuration;Server为服务器接口,MessageServer为消息服务器,可启动或关闭消息服务器。
由图4c中可以看出,MessageServer根据Configuration中的相关配置启动消息服务器;MessageService注入到MessageServer中,暴露给外部调用;MessageManager借助MessagePusher进行消息的推送;本发明实施例所提供的消息推送***通过提供MessagePusher的不同实现,可以很方便地支持新的客户端的接入;另外,只要为MessageManager提供不同的实现,就可以接入第三方消息服务器,例如提供一个ActiveMQ的实现类ActiveMQMessageManager即可方便地接入第三方消息服务器ActiveMQ。
实施例五
图5a是本发明实施例五所提供的消息推送方法的流程图,本实施例可适用于使用本发明上述实施例所提供的消息推送***进行消息推送时的情形。如图5a所示,该方法具体包括:
S510、通讯终端向消息服务器发起包含有待推送消息的消息推送请求。
S520、消息服务器根据消息推送请求向客户端确认模块发送待推送客户端获取请求。
S530、客户端确认模块根据消息服务器发送的待推送客户端获取请求确定待推送客户端获取请求所对应的至少一个待推送客户端标识,并将待推送客户端标识发送至消息服务器。
S540、消息服务器接收待推送客户端标识,并向待推送客户端标识对应的待推送客户端推送待推送消息。
在本实施例中,通过通讯终端向消息服务器发起包含有待推送消息的消息推送请求,消息服务器根据消息推送请求确认模块根据待推送客户端获取请求确定待推送客户端获取请求所对应的至少一个待推送客户端标识,并将待推送客户端标识发送至消息服务器,消息服务器接收待推送客户端标识,并向所述待推送客户端标识对应的待推送客户端推送待推送消息。
图5b是本发明实施例五所提供的消息推送方法中客户端注册的流程示意图。如图5b所示,消息服务器启动后,启动客户端(可以为Android、IOS、PC等类型的客户端),用户触发注册请求,客户端向消息服务器发起注册请求,消息服务器接收到客户端发起的注册请求后,建立起客户端与消息服务器之间的通信连接。可选的,可以通过调用MessageServer.start()启动消息服务器。
图5c是本发明实施例五所提供的消息推送方法中消息推送的时序图。如图5c所示,客户端调用接口服务的消息推送方法(MessageService.send()),将消息发送到指定的目的地。其中,指定目的地可以为另一客户端或某个主题。当指定目的地为另一客户端时,MessageService向客户端注册模块获取与指定目的地对应的注册客户端(DestinationRegister.get());如果存在已注册的客户端,则向该客户端发送消息(MessageManager.send()),MessageManager借助消息推送器(MessagePusher)向不同的客户端推送消息;当指定目的地为某个主题时,MessageService向消息订阅模块获取订阅了该主题(topic)的客户端,如果存在订阅客户端,则循环向各订阅客户端发送消息(MessageManager.send())。
可选的,使用消息推送***进行消息推送的更加详细的内容可参见上述实施例,在此不再赘述。
本发明实施例使用通讯服务器通过医院接口服务器在医院业务***内实现用户的验证及可关联用户的反馈,实现了在不需要各用户进行用户之间的关联的基础上,医院内医护人员之间的及时通讯,并且通过医院接口服务器调用医院业务***,实现了通讯服务器与医院现有的业务***的对接,使得在使用该***时无需另外维护用户数据,简化了用户的使用过程。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
Claims (7)
1.一种消息推送***,其特征在于,包括:至少一个通讯终端、消息服务器及客户端确认模块;
所述通讯终端,用于向消息服务器发起包含有待推送消息的消息推送请求;
所述消息服务器,用于根据所述消息推送请求向所述客户端确认模块发送待推送客户端获取请求,包括:
所述消息服务器,用于判断所述消息推送请求的推送类型,并根据所述推送类型将所述待推送客户端获取请求发送至对应的客户端确定模块;
其中,所述客户端确认模块包括客户端注册单元,所述消息服务器用于:
若所述推送类型为点对点推送,则根据所述消息推送请求生成待推送客户端获取请求,并将所述待推送客户端获取请求发送至所述客户端注册单元;
所述客户端确认模块包括消息订阅单元,所述消息服务器用于:
若所述推送类型为发布订阅,则根据所述消息推送请求生成待推送客户端获取请求,并将所述待推送客户端获取请求发送至所述消息订阅单元;
所述客户端确认模块,用于根据所述消息服务器发送的待推送客户端获取请求确定所述待推送客户端获取请求所对应的至少一个待推送客户端标识,并将所述至少一个待推送客户端标识发送至所述消息服务器;
所述消息服务器,还用于接收所述待推送客户端标识,并向所述待推送客户端标识对应的待推送客户端推送所述待推送消息。
2.根据权利要求1所述的***,其特征在于,所述客户端注册单元用于:
根据所述消息服务器发送的待推送客户端获取请求,确定与所述待推送客户端获取请求中的待推送用户标识所对应的待推送客户端标识,并将所述待推送客户端标识发送至所述消息服务器。
3.根据权利要求1所述的***,其特征在于,所述客户端注册单元还用于:
接收待注册用户的注册请求,并获取所述注册请求中包含的用户标识及客户端标识,建立所述客户端标识与所述用户标识之间的关联关系。
4.根据权利要求1所述的***,其特征在于,所述消息订阅单元用于:
根据所述消息服务器发送的待推送客户端获取请求,确定与所述待推送客户端获取请求对应的至少一个待推送客户端标识,并将所述至少一个待推送客户端标识发送至所述消息服务器。
5.根据权利要求4所述的***,其特征在于,所述消息订阅单元用于:
根据所述待推送客户端获取请求中包含的主题标识,确定与所述主题标识所对应的至少一个待推送客户端标识,并将所述至少一个待推送客户端标识发送至所述消息服务器。
6.根据权利要求1所述的***,其特征在于,所述消息订阅单元还用于:
接收待订阅用户的订阅请求,并获取所述订阅请求中包含的主题标识及客户端标识,建立所述主题标识与所述客户端标识之间的关联关系。
7.一种消息推送方法,应用于如权利要求1所述的消息推送***,其特征在于,包括:
通讯终端向消息服务器发起包含有待推送消息的消息推送请求;
所述消息服务器根据所述消息推送请求向所述客户端确认模块发送待推送客户端获取请求,包括:
所述消息服务器判断所述消息推送请求的推送类型,并根据所述推送类型并发送所述待推送客户端获取请求;其中,
若所述推送类型为点对点推送,则根据所述消息推送请求生成待推送客户端获取请求,并将 所述待推送客户端获取请求发送至 所述客户端注册单元;
若所述推送类型为发布订阅,则根据所述消息推送请求生成待推送客户端获取请求,并将所述待推送客户端获取请求发送至所述消息订阅单元;
其中,所述客户端确认模块包括所述客户端注册单元及所述消息订阅单元;
所述客户端确认模块根据所述消息服务器发送的待推送客户端获取请求确定所述待推送客户端获取请求所对应的至少一个待推送客户端标识,并将所述待推送客户端标识发送至所述消息服务器;
所述消息服务器接收所述待推送客户端标识,并向所述待推送客户端标识对应的待推送客户端推送所述待推送消息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811094844.1A CN109246220B (zh) | 2018-09-19 | 2018-09-19 | 一种消息推送***及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811094844.1A CN109246220B (zh) | 2018-09-19 | 2018-09-19 | 一种消息推送***及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109246220A CN109246220A (zh) | 2019-01-18 |
CN109246220B true CN109246220B (zh) | 2021-08-17 |
Family
ID=65059219
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811094844.1A Expired - Fee Related CN109246220B (zh) | 2018-09-19 | 2018-09-19 | 一种消息推送***及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109246220B (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109889613B (zh) * | 2019-04-24 | 2022-03-18 | 广州欢聊网络科技有限公司 | 一种消息推送方法、装置和移动终端 |
CN112087475B (zh) * | 2019-06-13 | 2023-01-24 | 北京东土科技股份有限公司 | 一种云平台组件应用的消息推送方法、装置及消息服务器 |
CN111225044B (zh) * | 2019-12-31 | 2022-09-23 | 北京奇才天下科技有限公司 | 一种客户端消息推送方法、装置和*** |
CN111464598A (zh) * | 2020-03-19 | 2020-07-28 | 中国人民财产保险股份有限公司 | 一种数据推送方法及装置 |
CN111555963B (zh) * | 2020-04-30 | 2022-08-16 | 北京思特奇信息技术股份有限公司 | 消息推送方法、装置、电子设备及存储介质 |
CN111917843A (zh) * | 2020-07-16 | 2020-11-10 | 远光软件股份有限公司 | 消息的推送方法、计算机设备及存储介质 |
CN112287216B (zh) * | 2020-10-23 | 2023-02-17 | 微医云(杭州)控股有限公司 | 一种信息推送方法、装置、服务器及存储介质 |
CN114531481A (zh) * | 2020-11-03 | 2022-05-24 | 湖南微步信息科技有限责任公司 | 消息推送方法和*** |
CN113067853A (zh) * | 2021-03-12 | 2021-07-02 | 北京金山云网络技术有限公司 | 一种数据推送方法、装置、电子设备及存储介质 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102624912A (zh) * | 2012-03-20 | 2012-08-01 | 无锡德思普科技有限公司 | 一种智能终端点对点信息推送的方法 |
CN103095732A (zh) * | 2013-03-01 | 2013-05-08 | 畅捷通信息技术股份有限公司 | 信息推送***和信息推送方法 |
CN103605791A (zh) * | 2013-12-04 | 2014-02-26 | 深圳中兴网信科技有限公司 | 信息推送***和信息推送方法 |
CN103840950A (zh) * | 2014-02-27 | 2014-06-04 | 广东亿迅科技有限公司 | 一种消息推送方法及*** |
CN103905471A (zh) * | 2012-12-25 | 2014-07-02 | 腾讯科技(深圳)有限公司 | 社交网络的信息推送方法、服务器及社交网络 |
CN105099882A (zh) * | 2015-07-09 | 2015-11-25 | 杭州电子科技大学 | 一种基于mqtt的云推送方法和*** |
CN106060762A (zh) * | 2016-05-24 | 2016-10-26 | 中国联合网络通信集团有限公司 | 一种信息推送方法、信息推送装置、信息推送*** |
CN106209940A (zh) * | 2015-05-05 | 2016-12-07 | 阿里巴巴集团控股有限公司 | 信息推送方法及信息推送装置 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20150099236A (ko) * | 2014-02-21 | 2015-08-31 | 삼성전자주식회사 | 위치 기반의 푸시 서비스를 제공하기 위한 장치 및 방법 |
US20160014057A1 (en) * | 2014-07-08 | 2016-01-14 | Samsung Electronics Co., Ltd. | Method and system for providing dynamically customized web push messages in a wireless network |
-
2018
- 2018-09-19 CN CN201811094844.1A patent/CN109246220B/zh not_active Expired - Fee Related
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102624912A (zh) * | 2012-03-20 | 2012-08-01 | 无锡德思普科技有限公司 | 一种智能终端点对点信息推送的方法 |
CN103905471A (zh) * | 2012-12-25 | 2014-07-02 | 腾讯科技(深圳)有限公司 | 社交网络的信息推送方法、服务器及社交网络 |
CN103095732A (zh) * | 2013-03-01 | 2013-05-08 | 畅捷通信息技术股份有限公司 | 信息推送***和信息推送方法 |
CN103605791A (zh) * | 2013-12-04 | 2014-02-26 | 深圳中兴网信科技有限公司 | 信息推送***和信息推送方法 |
CN103840950A (zh) * | 2014-02-27 | 2014-06-04 | 广东亿迅科技有限公司 | 一种消息推送方法及*** |
CN106209940A (zh) * | 2015-05-05 | 2016-12-07 | 阿里巴巴集团控股有限公司 | 信息推送方法及信息推送装置 |
CN105099882A (zh) * | 2015-07-09 | 2015-11-25 | 杭州电子科技大学 | 一种基于mqtt的云推送方法和*** |
CN106060762A (zh) * | 2016-05-24 | 2016-10-26 | 中国联合网络通信集团有限公司 | 一种信息推送方法、信息推送装置、信息推送*** |
Also Published As
Publication number | Publication date |
---|---|
CN109246220A (zh) | 2019-01-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109246220B (zh) | 一种消息推送***及方法 | |
US11711434B2 (en) | Information transmission method and device | |
CN103069755B (zh) | 使用多个客户端实例的即时消息传送的方法和*** | |
US9065788B2 (en) | Method, device and system for voice communication | |
KR102472916B1 (ko) | 대화형 콘텐츠 제공 시스템 및 방법 | |
US20170048590A1 (en) | Method, device, and system for switching at a mobile terminal of a smart television and acquiring information at a television terminal | |
US20160021035A1 (en) | Creating a user group | |
CN109391476B (zh) | 网络通话方法、装置及*** | |
CN109918268B (zh) | ***兼容方法、装置、设备和计算机可读存储介质 | |
CN113162848B (zh) | 一种区块链网关的实现方法、装置、网关和介质 | |
CN110753129A (zh) | 消息传输方法、***、装置、设备及计算机可读存储介质 | |
CN112689202B (zh) | 直播间消息处理方法、装置、服务器及存储介质 | |
WO2014086222A1 (zh) | 设置视频通话参数、和发送能力参数的方法及装置 | |
CN106550030B (zh) | 一种数据共享方法、装置及*** | |
EP2974159B1 (en) | Method, device and system for voice communication | |
CN109446204B (zh) | 一种即时通信的数据存储方法、装置、电子设备和介质 | |
CN112346751B (zh) | 应用程序的安装方法、装置、电子设备和存储介质 | |
CN109275042A (zh) | 一种弹幕消息的分发方法、装置、终端和存储介质 | |
WO2020118633A1 (zh) | 订阅消息的处理方法、装置、计算机设备和存储介质 | |
CN111541772A (zh) | 智能提醒方法和***以及云服务器 | |
CN113641320B (zh) | 一种Linux兼容Android的共享屏幕方法及装置 | |
CN111201804B (zh) | 启用数据连续***的方法、装置和计算机可读存储介质 | |
CN110619698B (zh) | 基于物联网操作***的信息提示方法及装置 | |
CN112733051A (zh) | 一种基于WebSocket的信息推送管理***及其方法 | |
CN105898596B (zh) | 直播间显示控制方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20210817 |