CN113923180A - 话题群消息推送方法、接收方法、装置、系统及存储介质 - Google Patents
话题群消息推送方法、接收方法、装置、系统及存储介质 Download PDFInfo
- Publication number
- CN113923180A CN113923180A CN202111165883.8A CN202111165883A CN113923180A CN 113923180 A CN113923180 A CN 113923180A CN 202111165883 A CN202111165883 A CN 202111165883A CN 113923180 A CN113923180 A CN 113923180A
- Authority
- CN
- China
- Prior art keywords
- topic
- message
- group
- event
- pushing
- 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
- 238000000034 method Methods 0.000 title claims abstract description 73
- 230000008859 change Effects 0.000 claims abstract description 83
- 230000004075 alteration Effects 0.000 claims description 22
- 230000004931 aggregating effect Effects 0.000 claims description 14
- 230000004044 response Effects 0.000 claims description 8
- 238000004590 computer program Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 230000003139 buffering effect Effects 0.000 description 3
- 230000002776 aggregation Effects 0.000 description 2
- 238000004220 aggregation Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/04—Real-time or near real-time messaging, e.g. instant messaging [IM]
- H04L51/043—Real-time or near real-time messaging, e.g. instant messaging [IM] using or handling presence information
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/01—Social networking
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- Marketing (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Economics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computing Systems (AREA)
- Primary Health Care (AREA)
- Strategic Management (AREA)
- Tourism & Hospitality (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本公开实施例涉及一种话题群消息推送方法、接收方法、装置、系统及存储介质。本公开的至少一个实施例中,服务端在获取话题群的任一话题的消息后,并非直接将该消息推送给话题群中的每个成员的客户端,而是将该消息即时推送到话题群中订阅该话题的各成员的客户端,并基于该消息生成该话题的话题变更事件,进而将话题变更事件推送到话题群中未订阅该话题的各成员的客户端,实现推送限流,降低服务端的资源消耗,提升系统的稳定性。
Description
技术领域
本公开实施例涉及即时通信技术领域,具体涉及一种话题群消息推送方法、接收方法、装置、系统及存储介质。
背景技术
话题群将“社区/论坛”的产品形态与即时通信(Instant Messaging,IM)系统进行了融合,是围绕各种“话题”展开交流的群组,消息以“话题”为单位聚合展示。
话题群利用IM系统的即时推送能力将用户关注的信息进行快速触达,例如,IM服务端推送消息时向话题群中每个成员的IM客户端推送该消息,因此,话题群中的用户也能及时看到未订阅话题的最新消息。
但在,在超大话题群场景下,也即群组中的成员数量超过预设值(如5000人、10000人等)的场景下,超大话题群的IM服务端如果每条话题消息都推送给群内每个成员的IM客户端,超大话题群的IM服务端的资源消耗将大幅提升,并且对IM系统(包括IM服务端和IM客户端)的稳定性和性能也会产生影响。
发明内容
为了解决现有技术存在的至少一个问题,本公开的至少一个实施例提供了一种话题群消息推送方法、接收方法、装置、系统及存储介质。
第一方面,本公开实施例提供一种话题群消息推送方法,该方法应用于服务端,该话题群消息推送方法包括:
获取向话题群的任一话题发送的消息;
将消息即时推送到话题群中订阅该话题的各成员的客户端;
基于向该话题发送的消息生成该话题的话题变更事件;
将话题变更事件推送到话题群中未订阅该话题的各成员的客户端。
在一些实施例中,将消息即时推送到话题群中订阅该话题的各成员的客户端之前,该话题群消息推送方法还包括:
检测话题群是否为成员数量超过预设值的群组;
当检测到话题群的成员数量超过预设值时,执行将消息即时推送到话题群中订阅该话题的各成员的客户端,以及基于向该话题发送的消息生成该话题的话题变更事件及其后续步骤。
在一些实施例中,将话题变更事件推送到话题群中未订阅该话题的各成员的客户端包括:
将话题变更事件保存到数据缓冲通道中;
满足预设推送条件时,从数据缓冲通道中获取该话题的至少一个话题变更事件;
将该话题的至少一个话题变更事件推送到话题群中未订阅该话题的各成员的客户端。
在一些实施例中,将该话题的至少一个话题变更事件推送到话题群中未订阅该话题的各成员的客户端包括:
聚合该话题的至少一个话题变更事件得到目标事件;
将目标事件推送到话题群中未订阅该话题的各成员的客户端。
在一些实施例中,话题变更事件包括:话题群的群标识、该话题的话题标识和向该话题发送的消息的消息标识。
在一些实施例中,聚合至少一个话题变更事件得到目标事件包括:
基于至少一个话题变更事件中的消息标识,确定该话题的最新状态,最新状态包括:该话题的最新消息的消息标识;
生成包括最新状态和该话题的话题标识的目标事件。
在一些实施例中,预设推送条件包括:当前时间与上一次推送的时间间隔大于或等于预设的时间间隔阈值。
第二方面,本公开实施例还提出一种话题群消息接收方法,该方法应用于客户端,该话题群消息接收方法包括:
接收客户端的用户在话题群中订阅的话题的消息;
接收用户在话题群中未订阅的话题的话题变更事件或目标事件;其中,话题变更事件为服务端基于向该话题发送的消息生成的事件;目标事件为服务端聚合该话题的至少一个话题变更事件得到的事件。
在一些实施例中,话题变更事件包括:话题群的群标识、该话题的话题标识和向该话题发送的消息的消息标识;
该话题群消息接收方法还包括:
响应于用户浏览未订阅的任一话题,基于该话题的话题变更事件中的消息标识,拉取该消息标识对应的消息内容。
在一些实施例中,目标事件包括该话题的最新状态和该话题的话题标识,最新状态包括:该话题的最新消息的消息标识;
该话题群消息接收方法还包括:
响应于用户浏览未订阅的任一话题,基于该话题的最新状态中的最新消息的消息标识,拉取该消息标识对应的消息内容。
第三方面,本公开实施例还提出一种话题群消息推送装置,该装置应用于服务端,该话题群消息推送装置包括:
获取单元,用于获取向话题群的任一话题发送的消息;
第一推送单元,用于将消息即时推送到话题群中订阅该话题的各成员的客户端;
生成单元,用于基于向该话题发送的消息生成该话题的话题变更事件;
第二推送单元,用于将话题变更事件推送到话题群中未订阅该话题的各成员的客户端。
第四方面,本公开实施例还提出一种话题群消息接收装置,该装置应用于客户端,装置包括:
第一接收单元,用于接收客户端的用户在话题群中订阅的任一话题的消息;
第二接收单元,用于接收用户在话题群中未订阅的任一话题的话题变更事件或目标事件;其中,话题变更事件为服务端基于向该话题发送的消息生成的事件;目标事件为服务端聚合该话题的至少一个话题变更事件得到的事件。
第五方面,本公开实施例还提出一种包括至少一个计算装置和至少一个存储指令的存储装置的系统,其中,所述指令在被所述至少一个计算装置运行时,促使所述至少一个计算装置执行如第一方面任一实施例所述话题群消息推送方法或第二方面任一实施例所述话题群消息接收方法的步骤。
第六方面,本公开实施例还提出一种计算机可读存储介质,所述计算机可读存储介质存储程序或指令,当所述程序或指令被至少一个计算装置运行时,使至少一个计算装置执行如第一方面任一实施例所述话题群消息推送方法或第二方面任一实施例所述话题群消息接收方法的步骤。
可见,本公开的至少一个实施例中,服务端在获取话题群的任一话题的消息后,并非直接将该消息推送给话题群中的每个成员的客户端,而是将该消息即时推送到话题群中订阅该话题的各成员的客户端,并基于该消息生成该话题的话题变更事件,进而将话题变更事件推送到话题群中未订阅该话题的各成员的客户端,实现推送限流,降低服务端的资源消耗,提升系统(包括服务端和客户端)的稳定性。
附图说明
为了更清楚地说明本公开实施例的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。
图1是一种IM服务端主动推送消息的场景示意图;
图2是本公开实施例提供的一种话题群消息推送方法的示例性流程图;
图3是本公开实施例提供的一种IM服务端主动推送消息的场景示意图;
图4是本公开实施例提供的一种话题群消息接收方法的示例性流程图;
图5是本公开实施例提供的一种话题群消息推送装置的示例性框图;
图6是本公开实施例提供的一种话题群消息接收装置的示例性框图;
图7是本公开实施例提供的一种包括至少一个计算装置和至少一个存储指令的存储装置的系统的示例性框图。
具体实施方式
为了能够更清楚地理解本公开的上述目的、特征和优点,下面结合附图和实施例对本公开作进一步的详细说明。可以理解的是,所描述的实施例是本公开的一部分实施例,而不是全部的实施例。此处所描述的具体实施例仅仅用于解释本公开,而非对本公开的限定。基于所描述的本公开的实施例,本领域普通技术人员所获得的所有其他实施例,都属于本公开保护的范围。
需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。
图1为IM服务端主动推送消息的场景示意图,在图1中,话题群中的用户1在该话题群中的任一话题发送一条消息时,IM服务端获取该话题群中的所有成员(成员数量为N),其中包括订阅该话题的成员(记为订阅用户2)以及未订阅该话题的成员(记为非订阅用户3)。IM服务端直接通过推送通道向该话题群中所有成员的IM客户端推送该消息,并且每当该话题群中有新消息时,都需要经过以上流程。可见,在超大话题群场景下,也即群组中的成员数量超过预设值(如5000人、10000人等)的场景下,超大话题群的IM服务端如果每条话题消息都推送给群内每个成员的IM客户端,超大话题群的IM服务端的资源消耗将大幅提升,并且对IM系统(包括IM服务端和IM客户端)的稳定性和性能也会产生影响。
为此,本公开实施例提供了一种话题群消息推送方法、接收方法、装置、系统及存储介质,IM服务端在获取话题群的任一话题的消息后,并非直接将该消息推送给话题群中的每个成员的IM客户端,而是将该消息即时推送到话题群中订阅该话题的各成员的IM客户端,并基于该消息生成该话题的话题变更事件,进而将话题变更事件推送到话题群中未订阅该话题的各成员的IM客户端,实现推送限流,降低IM服务端的资源消耗,提升IM系统(包括IM服务端和IM客户端)的稳定性。
图2为本公开实施例提供的一种话题群消息推送方法的示例性流程图。该话题群消息推送方法的执行主体为服务端,例如IM服务端。该话题群消息推送方法可以包括但不限于如下步骤201至204:
在步骤201中,获取向话题群的任一话题发送的消息。
话题群的任一成员可以向话题群的任一话题发送消息;其中,该话题可以是该成员订阅的话题,也可以是该成员未订阅的话题。
IM服务端在获取向话题群的任一话题发送的消息后,可以将该消息存储到数据库中,以确保相关消息不丢失。
IM服务端在获取向话题群的任一话题发送的消息后,可以获取该话题群的成员数量,进而可以判断该话题群是否为超大话题群,具体地,判断该话题群的成员数量是否超过预设值(如5000人、10000人等),若超过,则确定该话题群为超大话题群,否则确定该话题群为普通话题群。
IM服务端判断该话题群为普通话题群,则直接通过推送通道向该话题群中所有成员的IM客户端推送该消息。
IM服务端判断该话题群为超大话题群,则执行步骤202至204。
在步骤202中,将消息即时推送到话题群中订阅该话题的各成员的客户端。
考虑到话题群的任一话题的订阅用户数量相对可控,并且针对订阅用户需要进行弹窗提醒通知,而非订阅用户无需进行弹窗提醒通知,因此,当用户向话题群的任一话题发送的消息后,IM服务端优先对该话题的订阅用户即时推送该消息。
例如,IM服务端在获取向话题群的任一话题发送的消息后,可以确定该话题群中订阅该话题的各成员和未订阅该话题的各成员,进而,IM服务端可以通过推送通道将该消息即时推送到该话题群中订阅该话题的各成员的IM客户端。
在步骤203中,基于向该话题发送的消息生成该话题的话题变更事件。
其中,话题变更事件包括多个字段信息,多个字段信息例如包括但不限于:话题群的群标识(群ID)、该话题的话题标识(话题ID)和向该话题发送的消息的消息标识(消息ID)等。
在步骤204中,将话题变更事件推送到话题群中未订阅该话题的各成员的客户端。其中,客户端例如为IM客户端。
IM服务端在获取向话题群的任一话题发送的消息后,针对话题群中未订阅该话题的各成员,并非直接推送该消息,而是推送该话题的话题变更事件,实现推送限流,降低IM服务端的资源消耗,提升IM系统(包括IM服务端和IM客户端)的稳定性。
在一些实施例中,步骤204中“将话题变更事件推送到话题群中未订阅该话题的各成员的客户端”,可以包括但不限于以下步骤2041至步骤2043:
在步骤2041中,将话题变更事件保存到数据缓冲通道中。
IM服务端生成话题变更事件后,将话题变更事件保存到数据缓冲通道中,以保证事件不丢失。
在步骤2042中,满足预设推送条件时,从数据缓冲通道中获取该话题的至少一个话题变更事件。
其中,预设推送条件包括但不限于:当前时间与上一次推送的时间间隔大于或等于预设的时间间隔阈值。该预设推送条件的设置用以实现推送限流,降低了推送通道的数据压力。
IM服务端可以记录当前时间与上一次推送的时间间隔,当时间间隔小于预设的时间间隔阈值,确定不满足预设推送条件。IM服务端确定满足预设推送条件时,可以从数据缓冲通道中获取该话题的至少一个话题变更事件。
在步骤2043中,将该话题的至少一个话题变更事件推送到话题群中未订阅该话题的各成员的IM客户端。
可见,IM服务端在生成话题变更事件后,将话题变更事件保存到数据缓冲通道中,保证事件不丢失,并在满足推送条件时,才从数据缓冲通道中获取该话题的至少一个话题变更事件,将至少一个话题变更事件推送到话题群中未订阅该话题的各成员的IM客户端,实现推送限流,降低IM服务端的资源消耗,提升IM系统(包括IM服务端和IM客户端)的稳定性。
在一些实施例中,步骤2043中“将该话题的至少一个话题变更事件推送到话题群中未订阅该话题的各成员的IM客户端”,具体为:聚合该话题的至少一个话题变更事件得到目标事件;进而,将目标事件推送到话题群中未订阅该话题的各成员的IM客户端。
可见,IM服务端在获取向话题群的任一话题发送的消息后,针对话题群中未订阅该话题的各成员,并非直接推送该消息,而是聚合该话题的至少一个话题变更事件,通过聚合可以快速消费数据缓冲通道中的事件,仅推送聚合得到的目标事件,可以降低IM服务端的资源消耗,提升IM系统(包括IM服务端和IM客户端)的稳定性。
在一些实施例中,IM服务端聚合至少一个话题变更事件得到目标事件具体为:基于至少一个话题变更事件中的消息标识(消息ID),确定该话题的最新状态,最新状态包括但不限于该话题的最新消息的消息标识(消息ID)、该话题的最大回复数量等;进而,生成包括最新状态和该话题的话题标识(话题ID)的目标事件。
可见,IM服务端在获取向话题群的任一话题发送的消息后,针对话题群中未订阅该话题的各成员,并非直接推送该消息,而是推送该话题的最新状态,实现同步话题状态的功能。
图3是本公开实施例提供的一种IM服务端主动推送消息的场景示意图。在图3中,IM服务端包括:数据缓冲通道、限流器和数据聚合器,其中,数据缓冲通道用于缓冲话题变更事件,以保证事件不丢失。限流器用于检测是否满足预设推送条件,以实现推送限流,降低推送通道的数据压力。数据聚合器至少用于在限流器检测满足预设推送条件后,从数据缓冲通道中获取至少一个话题变更事件,并聚合至少一个话题变更事件得到目标事件。需要说明的是,限流器和数据聚合器为IM服务端的两个功能模块,可采用软件、硬件或者软硬件相结合的方式实现。
结合图3所示的场景,对IM服务端主动推送消息的流程进行如下描述:
话题群的成员1向话题群的任一话题发送消息。IM服务端可以获取该消息,并将该消息存储到数据库中,以确保该消息不丢失。IM服务端可以获取该话题群的成员数量,进而判断该话题群的成员数量是否超过预设值(如5000人、10000人等),若超过,则确定该话题群为超大话题群。IM服务端确定该话题群为超大话题群后,将该消息通过推送通道即时推送到话题群中订阅该话题的各成员的IM客户端,例如,推送给订阅用户1,……,订阅用户N的IM客户端,其中,N为订阅该话题的成员数量。
在图3中,IM服务端确定该话题群为超大话题群后,基于向该话题发送的消息生成该话题的话题变更事件,并将话题变更事件保存到数据缓冲通道中,以保证事件不丢失。
限流器检测是否满足预设推送条件,预设推送条件包括但不限于:当前时间与上一次推送的时间间隔大于或等于预设的时间间隔阈值。
数据聚合器在限流器检测满足预设推送条件后,从数据缓冲通道中获取该话题的至少一个话题变更事件,并聚合该话题的至少一个话题变更事件得到目标事件,目标事件包括该话题的最新状态和该话题的话题标识(话题ID),其中,最新状态包括但不限于该话题的最新消息的消息标识(消息ID)、该话题的最大回复数量等。
数据聚合器在聚合得到目标事件后,将目标事件通过推送通道推送给话题群中未订阅该话题的各成员的IM客户端,例如,推送给非订阅用户1,……,非订阅用户M的IM客户端,其中,M为未订阅该话题的成员数量。
非订阅用户1,……,非订阅用户M的IM客户端获取目标事件后,可以基于目标事件中的最新状态拉取对应的消息内容,实现非订阅用户的话题回复变更的功能。
图4为本公开实施例提供的一种话题群消息接收方法的示例性流程图。该话题群消息接收方法的执行主体为客户端,例如IM客户端。该话题群消息接收方法可以包括但不限于如下步骤401和402:
在步骤401中,接收客户端的用户在话题群中订阅的话题的消息。
针对话题群为超大话题群的场景,考虑到话题群的任一话题的订阅用户数量相对可控,并且针对订阅用户需要进行弹窗提醒通知,IM客户端可以即时接收IM客户端的用户在该话题群中订阅的任一话题的消息。
在步骤402中,接收用户在话题群中未订阅的话题的话题变更事件或目标事件;其中,话题变更事件为服务端基于向该话题发送的消息生成的事件;目标事件为服务端聚合该话题的至少一个话题变更事件得到的事件。
针对话题群为超大话题群的场景,考虑到话题群的任一话题的非订阅用户无需进行弹窗提醒通知,在一些实施例中,IM客户端可以接收IM客户端的用户在该话题群中未订阅的任一话题的话题变更事件,其中,话题变更事件包括:话题群的群标识、该话题的话题标识和向该话题发送的消息的消息标识。进而,IM客户端获取话题变更事件后,可以基于话题变更事件中的消息标识拉取对应的消息内容,实现IM客户端的用户的话题回复变更功能。在一些实施例中,IM客户端响应于用户浏览未订阅的任一话题,基于该话题的话题变更事件中的消息标识,拉取该消息标识对应的消息内容。
针对话题群为超大话题群的场景,考虑到话题群的任一话题的非订阅用户无需进行弹窗提醒通知,在一些实施例中,IM客户端可以接收IM客户端的用户在该话题群中未订阅的任一话题的目标事件,其中,目标事件为IM服务端聚合该话题的至少一个话题变更事件得到的事件。目标事件包括但不限于该话题的最新状态和该话题的话题标识(话题ID),其中,最新状态包括但不限于该话题的最新消息的消息标识(消息ID)、该话题的最大回复数量等。进而,IM客户端获取目标事件后,可以基于目标事件中的最新状态拉取对应的消息内容,实现IM客户端的用户的话题回复变更功能。在一些实施例中,IM客户端响应于IM客户端的用户浏览未订阅的任一话题,基于该话题的最新状态中的最新消息的消息标识,拉取该消息标识对应的消息内容。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员能够理解,本公开实施例并不受所描述的动作顺序的限制,因为依据本公开实施例,某些步骤可以采用其他顺序或者同时进行。另外,本领域技术人员能够理解,说明书中所描述的实施例均属于可选实施例。
图5为本公开实施例提供的一种话题群消息推送装置,该话题群消息推送装置可以实现为服务端或服务端的一部分,其中,服务端例如为IM服务端。该话题群消息推送装置包括但不限于:获取单元51、第一推送单元52、生成单元53和第二推送单元54。
获取单元51,用于获取向话题群的任一话题发送的消息;
第一推送单元52,用于将消息即时推送到话题群中订阅该话题的各成员的客户端;
生成单元53,用于基于向该话题发送的消息生成该话题的话题变更事件;
第二推送单元54,用于将话题变更事件推送到话题群中未订阅该话题的各成员的客户端。
在一些实施例中,该话题群消息推送装置还包括图5中未示出的检测单元,用于检测话题群是否为成员数量超过预设值的群组;第一推送单元52在检测单元检测到话题群的成员数量超过预设值时,将消息即时推送到话题群中订阅该话题的各成员的IM客户端。生成单元53在检测单元检测到话题群的成员数量超过预设值时,基于向该话题发送的消息生成该话题的话题变更事件。第二推送单元54在检测单元检测到话题群的成员数量超过预设值时,将话题变更事件推送到话题群中未订阅该话题的各成员的IM客户端。另外,第一推送单元52在检测单元检测到话题群的成员数量未超过预设值时,直接通过推送通道向该话题群中所有成员的IM客户端推送该消息。
在一些实施例中,第二推送单元54用于:将话题变更事件保存到数据缓冲通道中;满足预设推送条件时,从数据缓冲通道中获取该话题的至少一个话题变更事件;将该话题的至少一个话题变更事件推送到话题群中未订阅该话题的各成员的IM客户端。
在一些实施例中,第二推送单元54可以聚合该话题的至少一个话题变更事件得到目标事件;进而将目标事件推送到话题群中未订阅该话题的各成员的IM客户端。
在一些实施例中,话题变更事件包括:话题群的群标识、该话题的话题标识和向该话题发送的消息的消息标识。
在一些实施例中,第二推送单元54可以基于至少一个话题变更事件中的消息标识,确定该话题的最新状态,最新状态包括:该话题的最新消息的消息标识;进而,生成包括该话题的最新状态和该话题的话题标识的目标事件。
在一些实施例中,预设推送条件包括:当前时间与上一次推送的时间间隔大于或等于预设的时间间隔阈值。
以上各实施例公开的话题群消息推送装置的技术细节可以参考话题群消息推送方法各实施例的描述,为避免重复,不再赘述。
图6为本公开实施例提供的一种话题群消息接收装置,该话题群消息接收装置可以实现为客户端或客户端的一部分,其中,客户端例如为IM客户端。该话题群消息接收装置包括但不限于:第一接收单元61和第二接收单元62。
第一接收单元61,用于接收IM客户端的用户在话题群中订阅的任一话题的消息;
第二接收单元62,用于接收IM客户端的用户在话题群中未订阅的任一话题的话题变更事件或目标事件;其中,话题变更事件为IM服务端基于向该话题发送的消息生成的事件;目标事件为IM服务端聚合该话题的至少一个话题变更事件得到的事件。
在一些实施例中,话题变更事件包括:话题群的群标识、该话题的话题标识和向该话题发送的消息的消息标识;话题群消息接收装置还包括图6中未示出的第一拉取单元,用于响应于IM客户端的用户浏览未订阅的任一话题,基于该话题的话题变更事件中的消息标识,拉取该消息标识对应的消息内容。
在一些实施例中,目标事件包括该话题的最新状态和该话题的话题标识,最新状态包括:该话题的最新消息的消息标识。话题群消息接收装置还包括图6中未示出的第二拉取单元,用于响应于IM客户端的用户浏览未订阅的任一话题,基于该话题的最新状态中的最新消息的消息标识,拉取该消息标识对应的消息内容。
以上各实施例公开的话题群消息接收装置的技术细节可以参考话题群消息接收方法各实施例的描述,为避免重复,不再赘述。
以上各实施例公开的装置中各单元的划分仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如装置中的至少两个单元可以实现为一个单元;装置中的各单元也可以划分为多个子单元。可以理解的是,各个单元或子单元能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。本领域技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能。
图7是本公开实施例提供的一种包括至少一个计算装置和至少一个存储指令的存储装置的系统的示例性框图。在一些实施例中,该系统可用于大数据处理,至少一个计算装置和至少一个存储装置可以为分布式部署,使该系统为分布式数据处理集群。
如图7所示,系统包括:至少一个计算装置71、至少一个存储指令的存储装置72。可以理解,本实施例中的存储装置72可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。
在一些实施方式中,存储装置72存储了如下的元素,可执行单元或者数据结构,或者他们的子集,或者他们的扩展集:操作系统和应用程序。
其中,操作系统,包含各种系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础任务以及处理基于硬件的任务。应用程序,包含各种应用程序,例如媒体播放器(Media Player)、浏览器(Browser)等,用于实现各种应用任务。实现本公开实施例提供的话题群消息推送方法或话题群消息接收方法的程序可以包含在应用程序中。
在本公开实施例中,至少一个计算装置71通过调用至少一个存储装置72存储的程序或指令,具体的,可以是应用程序中存储的程序或指令,至少一个计算装置71用于执行本公开实施例提供的话题群消息推送方法或话题群消息接收方法各实施例的步骤。
本公开实施例提供的话题群消息推送方法或话题群消息接收方法可以应用于计算装置71中,或者由计算装置71实现。计算装置71可以是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过计算装置71中的硬件的集成逻辑电路或者软件形式的指令完成。上述的计算装置71可以是通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific IntegratedCircuit,ASIC)、现成可编程门阵列(Field Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
本公开实施例提供的话题群消息推送方法或话题群消息接收方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件单元组合执行完成。软件单元可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储装置72,计算装置71读取存储装置72中的信息,结合其硬件完成方法的步骤。
本公开实施例还提出一种计算机可读存储介质,所述计算机可读存储介质存储程序或指令,当所述程序或指令被至少一个计算装置运行时,使至少一个计算装置执行如话题群消息推送方法或话题群消息接收方法各实施例的步骤,为避免重复描述,在此不再赘述。其中,计算装置可以为图7所示的计算装置71。在一些实施例中,计算机可读存储介质为非暂态计算机可读存储介质。
本公开实施例还提出一种计算机程序产品,其中,该计算机程序产品包括计算机程序,该计算机程序存储在非暂态计算机可读存储介质中,计算机的至少一个处理器从存储介质读取并执行该计算机程序,使得计算机执行如话题群消息推送方法或话题群消息接收方法各实施例的步骤,为避免重复描述,在此不再赘述。
其中,计算机程序产品可以以一种或多种程序设计语言的任意组合来编写用于执行本公开实施例操作的程序代码,程序设计语言包括面向对象的程序设计语言,诸如Java、C++等,还包括常规的过程式程序设计语言,诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本公开的范围之内并且形成不同的实施例。
本领域的技术人员能够理解,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
虽然结合附图描述了本公开的实施方式,但是本领域技术人员可以在不脱离本公开的精神和范围的情况下做出各种修改和变型,这样的修改和变型均落入由所附权利要求所限定的范围之内。
Claims (14)
1.一种话题群消息推送方法,所述方法应用于服务端,所述方法包括:
获取向话题群的任一话题发送的消息;
将所述消息即时推送到所述话题群中订阅该话题的各成员的客户端;
基于向该话题发送的消息生成该话题的话题变更事件;
将所述话题变更事件推送到所述话题群中未订阅该话题的各成员的客户端。
2.根据权利要求1所述的方法,其中,所述将所述消息即时推送到所述话题群中订阅该话题的各成员的客户端之前,所述方法还包括:
检测所述话题群是否为成员数量超过预设值的群组;
当检测到所述话题群的成员数量超过预设值时,执行所述将所述消息即时推送到所述话题群中订阅该话题的各成员的客户端,以及所述基于向该话题发送的消息生成该话题的话题变更事件及其后续步骤。
3.根据权利要求1所述的方法,其中,所述将所述话题变更事件推送到所述话题群中未订阅该话题的各成员的客户端包括:
将所述话题变更事件保存到数据缓冲通道中;
满足预设推送条件时,从所述数据缓冲通道中获取该话题的至少一个话题变更事件;
将该话题的至少一个话题变更事件推送到所述话题群中未订阅该话题的各成员的客户端。
4.根据权利要求3所述的方法,其中,所述将该话题的至少一个话题变更事件推送到所述话题群中未订阅该话题的各成员的客户端包括:
聚合该话题的至少一个话题变更事件得到目标事件;
将所述目标事件推送到所述话题群中未订阅该话题的各成员的客户端。
5.根据权利要求4所述的方法,其中,所述话题变更事件包括:所述话题群的群标识、该话题的话题标识和向该话题发送的消息的消息标识。
6.根据权利要求5所述的方法,其中,所述聚合所述至少一个话题变更事件得到目标事件包括:
基于所述至少一个话题变更事件中的消息标识,确定该话题的最新状态,所述最新状态包括:该话题的最新消息的消息标识;
生成包括所述最新状态和该话题的话题标识的目标事件。
7.根据权利要求3所述的方法,其中,所述预设推送条件包括:当前时间与上一次推送的时间间隔大于或等于预设的时间间隔阈值。
8.一种话题群消息接收方法,所述方法应用于客户端,所述方法包括:
接收所述客户端的用户在话题群中订阅的话题的消息;
接收所述用户在所述话题群中未订阅的话题的话题变更事件或目标事件;其中,所述话题变更事件为服务端基于向该话题发送的消息生成的事件;所述目标事件为所述服务端聚合该话题的至少一个话题变更事件得到的事件。
9.根据权利要求8所述的方法,其中,所述话题变更事件包括:所述话题群的群标识、该话题的话题标识和向该话题发送的消息的消息标识;
所述方法还包括:
响应于所述用户浏览未订阅的任一话题,基于该话题的话题变更事件中的消息标识,拉取该消息标识对应的消息内容。
10.根据权利要求9所述的方法,其中,所述目标事件包括该话题的最新状态和该话题的话题标识,所述最新状态包括:该话题的最新消息的消息标识;
所述方法还包括:
响应于所述用户浏览未订阅的任一话题,基于该话题的最新状态中的最新消息的消息标识,拉取该消息标识对应的消息内容。
11.一种话题群消息推送装置,所述装置应用于服务端,所述装置包括:
获取单元,用于获取向话题群的任一话题发送的消息;
第一推送单元,用于将所述消息即时推送到所述话题群中订阅该话题的各成员的客户端;
生成单元,用于基于向该话题发送的消息生成该话题的话题变更事件;
第二推送单元,用于将所述话题变更事件推送到所述话题群中未订阅该话题的各成员的客户端。
12.一种话题群消息接收装置,所述装置应用于客户端,所述装置包括:
第一接收单元,用于接收所述客户端的用户在话题群中订阅的任一话题的消息;
第二接收单元,用于接收所述用户在所述话题群中未订阅的任一话题的话题变更事件或目标事件;其中,所述话题变更事件为服务端基于向该话题发送的消息生成的事件;所述目标事件为所述服务端聚合该话题的至少一个话题变更事件得到的事件。
13.一种包括至少一个计算装置和至少一个存储指令的存储装置的系统,其中,所述指令在被所述至少一个计算装置运行时,促使所述至少一个计算装置执行如权利要求1至7任一项所述话题群消息推送方法或如权利要求8至10所述话题群消息接收方法的步骤。
14.一种计算机可读存储介质,其中,所述计算机可读存储介质存储程序或指令,当所述程序或指令被至少一个计算装置运行时,使至少一个计算装置执行如权利要求1至7任一项所述话题群消息推送方法或如权利要求8至10所述话题群消息接收方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111165883.8A CN113923180B (zh) | 2021-09-30 | 2021-09-30 | 话题群消息推送方法、接收方法、装置、系统及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111165883.8A CN113923180B (zh) | 2021-09-30 | 2021-09-30 | 话题群消息推送方法、接收方法、装置、系统及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113923180A true CN113923180A (zh) | 2022-01-11 |
CN113923180B CN113923180B (zh) | 2023-02-03 |
Family
ID=79237930
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111165883.8A Active CN113923180B (zh) | 2021-09-30 | 2021-09-30 | 话题群消息推送方法、接收方法、装置、系统及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113923180B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115037709A (zh) * | 2022-04-02 | 2022-09-09 | 北京字跳网络技术有限公司 | 信息处理方法、装置、电子设备和存储介质 |
Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014117554A1 (en) * | 2013-01-30 | 2014-08-07 | Tencent Technology (Shenzhen) Company Limited | Method, server and browser for pushing message actively |
CN104144110A (zh) * | 2014-01-24 | 2014-11-12 | 腾讯科技(深圳)有限公司 | 推送消息的方法和系统 |
CN105677774A (zh) * | 2015-12-30 | 2016-06-15 | 百度在线网络技术(北京)有限公司 | 一种数据事件推送方法和装置 |
US9706055B1 (en) * | 2013-10-07 | 2017-07-11 | Bleepmic LLC | Audio-based multimedia messaging platform |
CN107360008A (zh) * | 2017-06-29 | 2017-11-17 | 维沃移动通信有限公司 | 一种群组消息的推送方法及移动终端 |
CN107528766A (zh) * | 2016-07-14 | 2017-12-29 | 腾讯科技(深圳)有限公司 | 信息推送方法、装置及系统 |
CN109286648A (zh) * | 2017-07-21 | 2019-01-29 | 比亚迪股份有限公司 | 数据推送方法、装置、系统和终端设备 |
CN109800375A (zh) * | 2018-12-15 | 2019-05-24 | 深圳壹账通智能科技有限公司 | 信息整合发布方法、装置、计算机设备及存储介质 |
CN110149265A (zh) * | 2018-03-14 | 2019-08-20 | 腾讯科技(深圳)有限公司 | 消息展现方法、装置和计算机设备 |
CN110166348A (zh) * | 2019-05-09 | 2019-08-23 | 苏宁易购集团股份有限公司 | 一种服务号信息推送方法及系统 |
CN111585868A (zh) * | 2020-04-27 | 2020-08-25 | 腾讯科技(深圳)有限公司 | 一种信息处理方法、装置、计算机设备以及可读存储介质 |
CN111756840A (zh) * | 2020-06-23 | 2020-10-09 | 湖南快乐阳光互动娱乐传媒有限公司 | 消息推送方法及装置 |
CN112260937A (zh) * | 2020-10-23 | 2021-01-22 | 维沃移动通信有限公司 | 消息处理方法、装置、电子设备及存储介质 |
-
2021
- 2021-09-30 CN CN202111165883.8A patent/CN113923180B/zh active Active
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2014117554A1 (en) * | 2013-01-30 | 2014-08-07 | Tencent Technology (Shenzhen) Company Limited | Method, server and browser for pushing message actively |
US9706055B1 (en) * | 2013-10-07 | 2017-07-11 | Bleepmic LLC | Audio-based multimedia messaging platform |
CN104144110A (zh) * | 2014-01-24 | 2014-11-12 | 腾讯科技(深圳)有限公司 | 推送消息的方法和系统 |
CN105677774A (zh) * | 2015-12-30 | 2016-06-15 | 百度在线网络技术(北京)有限公司 | 一种数据事件推送方法和装置 |
CN107528766A (zh) * | 2016-07-14 | 2017-12-29 | 腾讯科技(深圳)有限公司 | 信息推送方法、装置及系统 |
CN107360008A (zh) * | 2017-06-29 | 2017-11-17 | 维沃移动通信有限公司 | 一种群组消息的推送方法及移动终端 |
CN109286648A (zh) * | 2017-07-21 | 2019-01-29 | 比亚迪股份有限公司 | 数据推送方法、装置、系统和终端设备 |
CN110149265A (zh) * | 2018-03-14 | 2019-08-20 | 腾讯科技(深圳)有限公司 | 消息展现方法、装置和计算机设备 |
CN109800375A (zh) * | 2018-12-15 | 2019-05-24 | 深圳壹账通智能科技有限公司 | 信息整合发布方法、装置、计算机设备及存储介质 |
CN110166348A (zh) * | 2019-05-09 | 2019-08-23 | 苏宁易购集团股份有限公司 | 一种服务号信息推送方法及系统 |
CN111585868A (zh) * | 2020-04-27 | 2020-08-25 | 腾讯科技(深圳)有限公司 | 一种信息处理方法、装置、计算机设备以及可读存储介质 |
CN111756840A (zh) * | 2020-06-23 | 2020-10-09 | 湖南快乐阳光互动娱乐传媒有限公司 | 消息推送方法及装置 |
CN112260937A (zh) * | 2020-10-23 | 2021-01-22 | 维沃移动通信有限公司 | 消息处理方法、装置、电子设备及存储介质 |
Non-Patent Citations (2)
Title |
---|
DIRK THATMANN, SEBASTIAN ZICKAU, ALEXANDER FORSTER, AND AXEL K: "Applying Attribute-Based Encryption on Publish Subscribe Messaging Patterns for the Internet of Things", 《2015 IEEE INTERNATIONAL CONFERENCE ON DATA SCIENCE AND DATA INTENSIVE SYSTEMS》 * |
孙海滨等: "基于MQTT协议的跨平台工业级物联网消息传输系统实现与设计", 《软件》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115037709A (zh) * | 2022-04-02 | 2022-09-09 | 北京字跳网络技术有限公司 | 信息处理方法、装置、电子设备和存储介质 |
CN115037709B (zh) * | 2022-04-02 | 2023-11-03 | 北京字跳网络技术有限公司 | 信息处理方法、装置、电子设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113923180B (zh) | 2023-02-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107733968B (zh) | 应用信息推送方法、装置、计算机设备和存储介质 | |
CN109547511B (zh) | 一种web消息实时推送方法、服务器、客户端及系统 | |
US7606808B2 (en) | Maintaining and establishing subscriptions with load-balanced servers | |
CN110300067B (zh) | 队列调整方法、装置、设备及计算机可读存储介质 | |
WO2023051572A1 (zh) | 一种群消息处理方法、装置、系统及存储介质 | |
CN107623731B (zh) | 一种任务调度方法、客户端、服务集群及系统 | |
CN111163159A (zh) | 消息订阅方法、装置、服务器及计算机可读存储介质 | |
CN112925661A (zh) | 消息处理方法、装置、计算机设备及存储介质 | |
CN109257370B (zh) | 验证请求的处理系统 | |
CN113923180B (zh) | 话题群消息推送方法、接收方法、装置、系统及存储介质 | |
WO2017152765A1 (zh) | 一种自动熔断的消息发送方法、装置及系统 | |
CN112600902A (zh) | 一种通知消息的推送方法和装置 | |
CN110727507B (zh) | 一种消息的处理方法、装置、计算机设备和存储介质 | |
CN111741110A (zh) | 一种消息推送系统及方法 | |
JP6351827B2 (ja) | ウイルススキャン方法及びウイルススキャン装置 | |
CN111510446B (zh) | 一种攻击检测方法、装置及电子设备和存储介质 | |
WO2016037489A1 (zh) | Rcs垃圾消息的监控方法、装置及系统 | |
CN108390770B (zh) | 一种信息生成方法、装置及服务器 | |
CN111475315A (zh) | 服务器及订阅通知推送控制、执行方法 | |
US9647969B2 (en) | Email as a transport mechanism for activity stream posting | |
CN113595884B (zh) | 一种消息提醒方法及应用端 | |
CN112702227B (zh) | 心跳事件检测方法、装置、设备及计算机可读存储介质 | |
CN114553944A (zh) | 预警消息推送方法和系统 | |
CN108966160B (zh) | 一种短信处理方法、装置及计算机可读存储介质 | |
CN111049723B (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 |