CN107528766B - 信息推送方法、装置及系统 - Google Patents
信息推送方法、装置及系统 Download PDFInfo
- Publication number
- CN107528766B CN107528766B CN201610554613.9A CN201610554613A CN107528766B CN 107528766 B CN107528766 B CN 107528766B CN 201610554613 A CN201610554613 A CN 201610554613A CN 107528766 B CN107528766 B CN 107528766B
- Authority
- CN
- China
- Prior art keywords
- target account
- message
- time
- push
- 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.)
- Active
Links
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]
-
- 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/21—Monitoring or handling of messages
- H04L51/214—Monitoring or handling of messages using selective forwarding
-
- 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/21—Monitoring or handling of messages
- H04L51/224—Monitoring or handling of messages providing notification on incoming messages, e.g. pushed notifications of received messages
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明公开了一种信息推送方法、装置及系统。其中,该方法包括:检测系统时刻是否到达目标账户的推送时刻;在检测出系统时刻到达目标账户的推送时刻的情况下,获取当前推送周期内向目标账户发布的一个或多个通讯消息;基于一个或多个通讯消息生成聚合消息,其中,聚合消息用于通知向目标账户发布了一个或多个通讯消息;将聚合消息发送至目标账户。本发明解决了消息推送方式不合理的技术问题。
Description
技术领域
本发明涉及信息处理领域,具体而言,涉及一种信息推送方法和装置、及系统。
背景技术
推送是移动设备接收消息通知的主要手段,能够让用户快速及时获取信息。目前在国内广泛使用即时通讯软件(如,米聊、钉钉等),这些即时通讯软件都具备消息推送能力,这些即时通讯软件在进行消息推送时,均采用逐条实时的方式进行推送,即当有一条与某用户相关的消息到达服务端时,服务端会立刻推送到APNS,并通过APNS将该消息送达到用户设备上。
虽然现有技术中的即时通讯软件采用上述的推送方式能保证推送消息的实时可达性,然而,有些用户在某些情况下对消息逐条实时可达会比较排斥,比如正在休假或者正在开会或者正在长时间专注做某件事情等等,在逐条实时推送条件下,用户会被持续不断收到的推送消息而打断。在这种请情况下,若用户希望减少推送导致的打扰或打断,只能选择关闭推送功能。关闭推送功能又会导致信息无法触达。因此,采用上述的推送方式,会给用户带来许多被动骚扰,降低了用户的积极性,增加了沟通成本,同时造成设备的电量消耗增加。
针对现有技术中消息推送方式不合理,资源消耗大的问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种信息推送方法、装置及系统,以至少解决消 息推送方式不合理,资源消耗大的技术问题。
根据本发明实施例的一个方面,提供了一种信息推送方法,包括:检测系统时刻是否到达目标账户的推送时刻;在检测出系统时刻到达目标账户的推送时刻的情况下,获取当前推送周期内向目标账户发布的一个或多个通讯消息;基于一个或多个通讯消息生成聚合消息,其中,聚合消息用于通知向目标账户发布了一个或多个通讯消息;将聚合消息发送至目标账户。
根据本发明实施例的一个方面,提供了一种信息推送装置,包括:检测单元,用于检测系统时刻是否到达目标账户的推送时刻;获取单元,用于在检测出系统时刻到达目标账户的推送时刻的情况下,获取当前推送周期内向目标账户发布的一个或多个通讯消息;生成单元,用于基于一个或多个通讯消息生成聚合消息,其中,聚合消息用于通知向目标账户发布了一个或多个通讯消息;发送单元,用于将聚合消息发送至目标账户。
在本发明实施例中,还提供了一种信息推送系统,包括:第一终端,向目标账户发布通讯消息;服务器,接收到第一终端向目标账户发布的通讯消息之后,检测系统时刻是否到达目标账户的推送时刻;获取单元,用于在检测出系统时刻到达目标账户的推送时刻的情况下,获取当前推送周期内向目标账户发布的一个或多个通讯消息;生成单元,用于基于一个或多个通讯消息生成聚合消息,其中,聚合消息用于通知向目标账户发布了一个或多个通讯消息;发送单元,用于将聚合消息发送至目标账户;第二终端,用于显示聚合消息,其中,目标账户登录在第一终端的即时通讯应用客户端上。
通过上述实施例,可以将在第一终端向目标账户发布了通讯消息的情况下,服务器不直接将通讯消息发送至目标账户,而是先记录通讯消息,在系统时刻达到目标账户的推送时刻的情况下,基于保存的一个或多个通讯消息生成聚合消息,将聚合消息推送至目标账户。采用这样的推送方式,可以按照账户设置的推送方式推送消息,并且聚合推送方式是将多条消息 一并通知账户,这样的推送方式,一方面可以不用逐条推送消息,在减小了对用户打扰的同时,减少了数据流量,节约目标账户所在终端的流量资源和电量资源,另一方面,可以将向目标账户的发布的通讯消息都可以通知到目标账户,解决了现有技术中推送方式不合理的技术问题。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的一种硬件环境的示意图;
图2是根据本发明实施例的一种可选的信息推送方法的界面设置图;
图3是根据本发明实施例的另一种可选的信息推送方法的界面设置图;
图4是根据本发明实施例的一种可选的推送触发参数的设置时序图;
图5是根据本发明实施例的一种可选的信息推送方法的流程图;
图6是根据本发明实施例的一种可选的信息推送方法的另一流程图;
图7是根据本发明实施例的一种可选的信息推送方法的推送结果界面图;
图8是根据本发明实施例的一种可选的信息推送装置的装置图;以及
图9是根据本发明实施例的一种可选的终端的内部结构框图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动 前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
首先,对本申请涉及的术语,解释如下:
iOS:一种智能手机的操作系统。
RTX,即real time expert的缩写,一种企业级即时通讯平台,通过该即时通讯平台可以进行文本会话、语音/视频交流、手机短信、文件和参数、IP电话、网络会议、应用程序共享和电子白板等操作。
企业IM:企业即时通信软件,是指企业内部能够即时发送和接收互联网消息等业务的软件,如RTX应用。
消息聚合推送:将多条互联网消息合并到一起,并以通知方式送达目标移动设备的一种方式。
APNS是Apple Push Notification service的简称,是指一种消息推送平台。该服务的传输和路由的通知从一个给定的供应商到给定的设备。通知是由两个主要部分组成的数据:设备令牌和有效载荷的短消息。设备令牌是类似于一个电话号码的信息,设备令牌包含的信息,使得APN定位设备上安装的客户端应用程序。APN还用它来验证通知的路由。有效载荷是一个JSON(轻量级的数据交换格式)定义的属性列表中指定的设备上的应用程序的用户将被提醒。例如,该服务会对用户进行物理连接认证和设备令牌认证,在物理连接认证和设备令牌认证通过之后,将服务器的信息 接收并且保存在APNs中,APNs从其中注册的列表中查找对应的设备,并将信息发送至对应的设备,设备接收到数据信息给相应的APP,并按照设定弹出push信息(即推送信息)。
根据本发明实施例,提供了一种信息推送系统。可选地,在本实施例中,上述信息推送方法可以应用于如图1所示的硬件环境中,其中,硬件环境包括网络环境。如图1所示,该硬件环境可以包括第一终端101、第二终端102和服务器103。
如图1所示,第一终端和第二终端分别通过网络与服务器进行连接。上述网络包括但不限于:广域网、城域网或局域网。
其中,图1中的第一终端和第二终端可以为个人计算机和智能终端,如智能手机、平板电脑等,该第一终端和第二终端上可以安装即时通讯应用,服务器为与该即时通讯应用对应的服务器。例如,第一终端和第二终端上安装钉钉应用,服务器为钉钉应用服务器。可选地,第一终端和第二终端可以通过服务器进行即时通讯,第二终端上可以安装有第二客户端,第二客户端上登录有目标账户,第一终端上可以安装第一客户端,第一客户端上登录有其他账户,目标账户和其他账户可以通过服务器进行通讯,例如,其他账户向目标账户发布了通讯消息,服务器接收到该消息之后,可以按照目标账户设置的信息推送方式,将通讯消息推送至目标账户,以实现两个账户之间的通讯。
本申请实施例中的客户端可以为即时通讯客户端。图1中示出的第一终端和第二终端优选为移动终端。
本申请提供了一种信息推送系统的实施例,该系统实施例可以包括:如图1所示的第一终端、第二终端和服务器,其中,
第一终端,向目标账户发布通讯消息;
服务器,接收到第一终端向目标账户发布的通讯消息之后,检测系统时刻是否到达目标账户的推送时刻;获取单元,用于在检测出系统时刻到 达目标账户的推送时刻的情况下,获取当前推送周期内向目标账户发布的一个或多个通讯消息;生成单元,用于基于一个或多个通讯消息生成聚合消息,其中,聚合消息用于通知向目标账户发布了一个或多个通讯消息;发送单元,用于将聚合消息发送至目标账户;
第二终端,用于显示聚合消息,其中,目标账户登录在第一终端的即时通讯应用客户端上。
通过上述实施例,可以将在第一终端向目标账户发布了通讯消息的情况下,服务器不直接将通讯消息发送至目标账户,而是先记录通讯消息,在系统时刻达到目标账户的推送时刻的情况下,基于保存的一个或多个通讯消息生成聚合消息,将聚合消息推送至目标账户。采用这样的推送方式,可以按照账户设置的推送方式推送消息,并且聚合推送方式是将多条消息一并通知账户,这样的推送方式,一方面可以不用逐条推送消息,在减小了对用户打扰的同时,减少了数据流量,节约目标账户所在终端的流量资源和电量资源,另一方面,可以将向目标账户的发布的通讯消息都可以通知到目标账户,解决了现有技术中推送方式不合理的技术问题。
上述实施例中的第一终端和第二终端可以为个人计算机,还可以为智能移动终端,如,智能手机、平板电脑以及虚拟现实设备等,本申请对第一终端和第二终端的形式不做限定,只要是可以发布和接收通讯消息的设备均在本申请的保护范围之内。
上述的通讯消息可以为文字消息、语音消息、图片消息、公告消息以及文件消息等,这些消息均可以通过网络进行传输,本申请对通讯消息的具体形式不做限定。
第一终端在生成通讯消息之后,点击发送按键,即可将该通讯消息发送至服务器,服务器接收到该通讯消息之后,从数据库中查找记录的目标账户的消息推送方式,该消息推送方式可以包括普通推送方式和聚合推送方式两种,不同的推送方式可以使用不同的标记标出,如普通推送方式的标记为1,聚合推送方式的标记为0。
上述实施例中的普通推送方式为该即时通讯应用的默认推送方式,聚合推送方式为非默认推送方式,或者称之为定制推送模式,该定制推送模式可以按照目标账户的设置来确定,如,按照不同的推送频率推送的方式。
服务器查找到记录的目标账户的消息推送方式之后,若该消息推送方式为普通推送方式,则直接向目标账户发送通知消息,以通知第一终端上的账户向目标账户发布了通讯消息。
服务器查找到记录的目标账户的消息推送方式之后,若该消息推送方式为聚合推送方式,则记录通讯消息,这里的通讯消息是泛指,所有不同于该目标账户的其他账户向目标账户发布的消息均可以称之为通讯消息(如发布至公共平台上的消息,只要目标账户具有查看权限,均可以认为是向目标账户发布的通讯消息)。该通讯消息可以为一个或多个。在系统时刻达到目标账户的推送时刻的情况下,基于该一个或多个通讯消息生成聚合消息,该聚合消息通知目标账户,其他账户向目标账户发布了一个或多个通讯消息。
第一终端在接收到聚合消息之后,显示该聚合消息,并可以将目标账户基于该聚合消息生成的操作指令发送至服务器,该操作指令可以为查看指令,服务器接收到查看指令之后,可以将对应的通讯消息发送给目标账户。
下面以钉钉应用为例,详述上述实施例,在该实施例中,第一终端和第二终端上的钉钉应用均已启动,目标账户登录在第二终端的钉钉应用的客户端,第二终端的钉钉应用的客户端上登录有其他账户。
第二终端与第一终端上的目标账户通过钉钉应用启动了会话1和会话2,其中,会话1是其他账户(如,第二账户)与目标账户之间一对一的会话,会话2是目标账户与多个第二账户进行的多对多的会话。目标账户的消息推送方式为聚合推送方式,第二账户在会话1中发布了通讯消息1,服务器接收到第二账户向目标账户发布的通讯消息1时,记录该通讯消息1;第二账户在会话2中发布了通讯消息2,服务器接收到该通讯消息2 时,记录该通讯消息2。
在系统时刻达到推送时刻时,服务器基于通讯消息1和第二消息2生成聚合消息,将聚合消息发送至目标账户。
需要说明的是,检测系统时刻是否到达目标账户的推送时刻包括:获取预先设置的目标账户的推送触发参数;基于推送触发参数,检测系统时刻是否到达目标账户的推送时刻。
上述的推送触发参数可以包括预设推送间隔时长和/或预设推送数量,在推送触发参数包括预设推送间隔时长的情况下,基于推送频率进行检测;在推送触发参数包括预设推送数量的情况下,基于发布的消息数量进行检测。
在一个可选的实施例中,基于推送触发参数,检测系统时刻是否到达目标账户的推送时刻包括:检测上次向目标账户发送聚合消息的第一时刻与当前时刻之间的时长是否达到预设推送间隔时长,其中,推送触发参数包括预设推送间隔时长;若第一时刻与当前时刻之间的时长达到预设推送间隔时长,则检测出系统时刻到达目标账户的推送时刻。
在该实施例中,通过上次推送聚合消息的时刻T1和获取到推送指令的时刻T2确定当前推送周期,将当前推送周期内的通讯消息生成聚合消息,并推送该聚合消息,可以减少数据冗余。
可选地,当前推送周期t是以上次推送聚合消息的时刻T1为开始时刻,经过预设推送间隔时长的时刻为达到推送时刻的系统时刻。
在一个可选的实施例中,所述目标账户可以通过设置界面生成设置指令,以设置目标账户的消息推送方式,目标账户可以向所述服务器发送设置指令;所述服务器接收到设置指令之后,响应所述设置指令,设置所述目标账户的消息推送方式。
下面以按照设置频率推送为例,结合图2详述本发明上述实施例:
目标账户(如用户)可以在移动终端设备上设定消息的推送频率(如通过预设推送间隔时长来设置推送频率),如图2所示,可以在设置界面上设置逐条方式和每5分钟、每10分钟、每30分钟、每60分钟频率的推送方式,其中,若用户选中了逐条方式,则选中的为普通推送方式,若用户选中的是5分钟、10分钟、30分钟以及60分钟,则选中的为聚合推送方式。逐条方式代表单条消息实时推送,即服务端将与用户相关的每条消息都会实时推送给用户;而如果用户设置了每5分钟的消息提醒频率,则服务端会以每5分钟为频率,自动将过去5分钟内发生过的、且与用户相关的消息聚合后推送给用户;如果用户设置了每10分钟的消息提醒频率,则服务端会以每10分钟为频率,自动将过去10分钟内发生过的、且与用户相关的消息聚合后推送给用户。
在图2示出的实施例中,用户选中的消息提醒频率是每5分钟提醒一次。
上述的“过去的5分钟”为自上次向用户推送消息开始计时的5分钟,“过去的10分钟”为自上次向用户推送消息开始计时的10分钟。其他频率与上述的频率确定方式一致,再次不再赘述。上述的5分钟和10分钟为上述实施例中的预设推送间隔时长。
在另一个可选的实施例中,基于推送触发参数,检测系统时刻是否到达目标账户的推送时刻包括:检测自上次向目标账户发送聚合消息的第一时刻起、至当前时刻止的时间段内,向目标账户发布的通讯消息的数量是否达到预设推送数量,其中,推送触发参数包括预设推送数量;若时间段内向目标账户发布的通讯消息的数量达到预设推送数量,则检测出系统时刻到达目标账户的推送时刻。
下面以按照设置频率推送为例,结合图3详述本发明上述实施例:
目标账户(如用户)可以在移动终端设备上设定消息的推送频率(如通过预设推送间隔时长来设置推送频率),如图3所示,可以在设置界面上设置逐条方式和每5条、每10条、每30条、每60条的推送方式,其 中,若用户选中了逐条方式,则选中的为普通推送方式,若用户选中的是5条、10条、30条以及60条,则选中的为聚合推送方式。逐条方式代表单条消息实时推送,即服务端将与用户相关的每条消息都会实时推送给用户;而如果用户设置了每5条的消息提醒频率,则服务端会以每5条为频率,一旦接收到5条通讯消息,将这5条通讯消息推送给用户。
在图3示出的实施例中,用户选中的消息提醒频率是每5条提醒一次。
可选地,目标账户可以在第一终端的应用客户端上打开设置页面,在设置页面中可以选中普通推送方式或聚合推送方式,其中,普通推送方式为逐条推送方式,在将消息推送方式设置为普通推送方式的情况下,服务器接收到向目标账户发布的通讯消息时,直接见该通讯消息发送至目标账户。
根据上述实施例,服务器接收到目标账户发送的设置指令之后,响应该设置指令,设置所述目标账户的消息推送方式可以包括:在所述设置指令指示将所述目标账户的消息推送方式设置为所述聚合推送方式的情况下,记录所述设置指令中携带的推送触发参数。
具体地,服务器接收到设置指令之后,解析设置指令,确定设置指令请求设置的消息推送方式,在设置指令请求设置的消息推送方式为聚合推送方式的情况下,确定的聚合推送方式的推送触发参数,记录该推送触发参数。
如图4所示,用户完成消息提醒频率的设置后,设置的推送触发参数frequency会实时上传到服务器,服务器将推送触发参数记录在数据库中,若用户修改了账户的推送触发参数,则上一次设置的推送触发参数会被覆盖。
通过上述实施例,服务器在向目标账户推送聚合消息时,记录推送时刻T1,在接收到向目标账户发布的新的消息时,记录该新的消息,实时计算当前时刻T当前与T1之间的时长△T,若△T达到预设推送间隔时长, 则将时长△T内记录的所有通讯消息生成一条聚合消息,将该聚合消息发送至用户。
通过上述实施例中,按时间频率或发布的消息数量进行推送的消息聚合推送方法,可以在实现推送消息可达的同时,也满足部分用户对非逐条消息推送的诉求,减少了因逐条消息推送而导致的用户持续被打断等场景,让用户更专注于工作、生活的同时,又能满足移动沟通的需要。
本发明还提供了一种信息推送方法的实施例,该实施例应用于服务器上,本实施例中的系统参数均为服务器的系统参数,该方法实施例可以包括如图5所示的如下步骤:
步骤S501:检测系统时刻是否到达目标账户的推送时刻;
步骤S503:在检测出系统时刻到达目标账户的推送时刻的情况下,获取当前推送周期内向目标账户发布的一个或多个通讯消息;
步骤S505:基于一个或多个通讯消息生成聚合消息,其中,聚合消息用于通知向目标账户发布了一个或多个通讯消息;
步骤S507:将聚合消息发送至目标账户。
通过上述实施例,可以将在第一终端向目标账户发布了通讯消息的情况下,服务器不直接将通讯消息发送至目标账户,而是先记录通讯消息,在系统时刻达到目标账户的推送时刻的情况下,基于保存的一个或多个通讯消息生成聚合消息,将聚合消息推送至目标账户。采用这样的推送方式,可以按照账户设置的推送方式推送消息,并且聚合推送方式是将多条消息一并通知账户,这样的推送方式,一方面可以不用逐条推送消息,在减小了对用户打扰的同时,减少了数据流量,节约目标账户所在终端的流量资源和电量资源,另一方面,可以将向目标账户的发布的通讯消息都可以通知到目标账户,解决了现有技术中推送方式不合理的技术问题。
根据本发明的上述实施例,检测系统时刻是否到达目标账户的推送时刻可以包括:获取预先设置的目标账户的推送触发参数;基于推送触发参 数,检测系统时刻是否到达目标账户的推送时刻。
上述的推送触发参数可以包括预设推送间隔时长和/或预设推送数量,在推送触发参数包括预设推送间隔时长的情况下,基于推送频率进行检测;在推送触发参数包括预设推送数量的情况下,基于发布的消息数量进行检测。
通过上述实施例,将当前推送周期内的通讯消息生成聚合消息,并推送该聚合消息,可以通过一条通讯消息通知多个通讯消息,以减少数据冗余。
在一个可选的实施例中,基于推送触发参数,检测系统时刻是否到达目标账户的推送时刻包括:检测上次向目标账户发送聚合消息的第一时刻与当前时刻之间的时长是否达到预设推送间隔时长,其中,推送触发参数包括预设推送间隔时长;若第一时刻与当前时刻之间的时长达到预设推送间隔时长,则检测出系统时刻到达目标账户的推送时刻。
在另一个可选的实施例中,基于推送触发参数,检测系统时刻是否到达目标账户的推送时刻包括:检测自上次向目标账户发送聚合消息的第一时刻起、至当前时刻止的时间段内,向目标账户发布的通讯消息的数量是否达到预设推送数量,其中,推送触发参数包括预设推送数量;若时间段内向目标账户发布的通讯消息的数量达到预设推送数量,则检测出系统时刻到达目标账户的推送时刻。
上述实施例中的系统时刻可以为服务器的系统时刻。
根据本发明的上述实施例,在检测系统时刻是否到达目标账户的推送时刻之前,方法还可以包括:接收目标账户发送的设置指令,其中,设置指令用于设置目标账户的推送触发参数;响应设置指令,设置目标账户的推送触发参数。
该实施例的实现方式与上述图2和图3所示的实施例的实现方式一致,在此不再赘述。
根据本发明的上述实施例,基于一个或多个通讯消息生成聚合消息包括:统计一个或多个通讯消息的消息总量,并汇总一个或多个通讯消息所属的会话的会话数量;生成聚合消息,其中,聚合消息携带有消息总量和会话数量。
在该实施例中,可以统计向目标账户发布的通讯消息的总数,并汇总都是哪些会话发布了消息,将这些消息携带在聚合消息中,通知目标账户,如,该聚合消息可以为“有两个会话发布了4条消息”。
具体地,汇总一个或多个通讯消息所属的会话的会话数量包括:获取各个通讯消息所属的会话的会话标识;将具有同样会话标识的通讯消息保存入一个会话记录中;统计会话记录的数量,得到会话数量。
在该实施例中,以会话记录为单位记录通讯消息,即将相同会话的通讯消息记录在同一个会话记录中,这样在统计会话数量时,统计会话记录的数量即可,减少了处理时间,提高了处理速度。
在另一个可选的实施例中,基于一个或多个通讯消息生成聚合消息包括:可以直接统计记录的一个或多个通讯消息的消息总量,将消息总量作为聚合消息,通知给目标账户。在该实施例中进一步缩短了处理时间,如,该聚合消息可以为“共有12条消息”。
在又一个可选的实施例中,基于一个或多个通讯消息生成聚合消息包括:可以直接汇总会话数量,将会话数量作为聚合消息,通知给目标账户。在该实施例中进一步缩短了处理时间,如,该聚合消息可以为“共有2个会话有新消息”。
本申请并不限定聚合消息中包含的消息内容。
根据本发明的上述实施例,在获取当前推送周期内向目标账户发布的一个或多个通讯消息之前,方法还包括:在接收到通讯消息之后,获取目标账户的消息表;利用消息表记录接收到的通讯消息。
获取消息表包括:检测数据库中是否存在已创建的目标账户的消息 表;若检测出数据库中存在已创建的目标账户的消息表,则调用消息表;若检测出数据库中不存在已创建的目标账户的消息表,则创建消息表。
在获取到目标账户的消息表之后,利用消息表记录接收到的通讯消息包括:获取通讯消息的会话标识;查找消息表中与会话标识对应的会话记录,其中,会话记录用于记录会话标识与会话消息数的对应关系;更新查找到的会话记录中的会话消息数。
通过上述实施例,利用会话记录统计会话数量和消息总量,计算量小。
进一步地,在将聚合消息发送至目标账户之后,方法还包括:清空消息表。通过该实施例,消息表中记录的均为未通知的通讯消息,在检测到系统时刻达到推送时刻时,直接基于消息表中记录的信息生成聚合信息,而无需从大量的通讯信息中确定当前推送周期内的通讯消息,缩短了处理时间。
上述实施例中,服务器接收到通讯消息之后,可以将通讯消息本身或相关信息记录在消息表中,可选地,也可以将通讯消息本申请保存入数据库中,本申请对通讯消息的具体存储位置不做限定。
其中,消息表可以为内存链表,该表是一个Key-Value的字典表结构,其中Key记录的是session_id(即会话标识,会话ID),代表该消息对应的会话id,Value表示该会话内共有多少条与用户相关的消息(即上述的会话消息数),每个用户对应一个内存链表,内存链表结构如表1所示:
表1
Key | Value |
session_id_1 | value1 |
session_id_2 | value2 |
… | … |
如表1所示,session_id_1的会话消息数是1,session_id_2的会话消 息数是2。若目标账户具有这两个会话,则得到的会话数量是2,消息总数为3。
在该实施例中,每个键值对为一个会话记录。
进一步地,利用通讯消息更新消息表中对应的会话记录包括:获取通讯消息的会话标识;查找消息表中与会话标识对应的会话记录,其中,会话记录中记录有会话标识与会话消息数的对应关系;更新查找到的会话记录中的会话消息数。如表1所示的实施例,若通讯消息的会话标识是1,则session_id_1对应的会话记录的会话消息数由1变为2,从而得到的会话数量还是2,消息总量变成5。
下面结合图6详述本发明的上述实施例,如图6所示,该实施例应用于服务器侧,具体地,该实施例的实现方法可以包括:
步骤S601:接收用户消息。
该实施例中的用户为目标账户,即为接收到目标账户的消息。
步骤S602:判断推送模式。
当服务端接收到与某用户相关的通讯消息时,进入消息推送流程:首先检查用户设置的推送方式,如果用户设置的是逐条推送模式,则直接将消息实时推送给APNS并送达用户设备;如果用户设置的是聚合推送模式,则按聚合推送模式推送,本实施例以频率推送模式为例进行详细说明。
若推送模式为逐条发送的模式,则执行步骤S603;若推送模式为按照频率推送的模式,则执行步骤S604。
步骤S603:直接将消息发送至APNS。
步骤S604:判断是否已建立内存链表。
在数据库中检测是否已经建立了一个与此用户相关的内存链表(即上述实施例中的目标账户的数据表),用来保存与该用户相关的会话。
其中,若是则执行步骤S605;若否,则执行步骤S606。
步骤S605:使用接收的到的消息更新内存链表。
如果建立有与该用户对应的内存链表,查找链表Key列是否已经包含该消息的session_id,如果没有,则插入一条新的记录,并标记Value值为1,表示该会话有1条新的消息,否则将原Value值加1,表示该会话的新消息数量增加了1条。
步骤S606:创建内存链表,并记录接收到的消息。
如果没有与该用户对应的内存链表,则新建内存链表,并插入一条新的记录,且Value值为1。
步骤S607:生成聚合消息。
每个内存链表会设定一个过期时间(,该过期时间对应于上述实施例中的到期后内存链表会自动销毁),该过期时间等于用户设置的推送频率。当到达过期时间时会触发回调方法,则将内存链表里的会话聚合成一条消息并推送给APNS。
步骤S608:将消息发送至用户。
通过图6所示的推送流程图可以知道,当用户设置了消息的推送频率后,与用户相关的推送消息会以该频率送达用户移动终端设备,而在此期间的消息并不会逐条推送给用户移动终端,达到了预期效果如图7所示,在终端的锁屏界面上显示聚合消息“最近五分钟内,有2个会话总共32条消息”(假设设定的推送频率是每5分钟),可选地,该锁屏界面上还可以显示日期5月19日,时间:13:50。并且,在该实施例中,在实现上服务端采用了内存链表的方式统计频率期间发生的会话消息数,并通过内存过期时间触发回调的方式实现了消息聚合推送。
本发明提出的消息聚合推送方式,用户可以在移动设备上设置自己可以接受的消息推送频率,服务端则按用户设定的频率,将频率期间内的所 有消息按规则聚合成一条推送消息,并在频率触发点将消息推送出去,因此,在此频率期间内,用户最多只会收到一条推送消息,这样做一方面能保证推送消息的可达性,不会造成消息丢失,另一方面,通过设置推送时间频率,聚合消息会以一定的频率推送到用户的移动设备上,减少了对用户的打断与干扰,满足了用户对非逐条推送场景下的诉求,提升了员工的沟通意愿。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
根据本发明实施例,还提供了一种用于实施上述信息推送方法的信息推送装置,该信息推送装置可以设置在上述的服务器上,如图8所示,该装置可以包括:
检测单元81,用于检测系统时刻是否到达目标账户的推送时刻;获取单元83,用于在检测出系统时刻到达目标账户的推送时刻的情况下,获取当前推送周期内向目标账户发布的一个或多个通讯消息;生成单元85,用于基于一个或多个通讯消息生成聚合消息,其中,聚合消息用于通知向目 标账户发布了一个或多个通讯消息;发送单元87,用于将聚合消息发送至目标账户。
通过上述实施例,可以将在第一终端向目标账户发布了通讯消息的情况下,服务器不直接将通讯消息发送至目标账户,而是先记录通讯消息,在系统时刻达到目标账户的推送时刻的情况下,基于保存的一个或多个通讯消息生成聚合消息,将聚合消息推送至目标账户。采用这样的推送方式,可以按照账户设置的推送方式推送消息,并且聚合推送方式是将多条消息一并通知账户,这样的推送方式,一方面可以不用逐条推送消息,在减小了对用户打扰的同时,减少了数据流量,节约目标账户所在终端的流量资源和电量资源,另一方面,可以将向目标账户的发布的通讯消息都可以通知到目标账户,解决了现有技术中推送方式不合理的技术问题。
根据本发明的上述实施例,检测单元包括:获取模块,用于获取预先设置的目标账户的推送触发参数;检测模块,用于基于推送触发参数,检测系统时刻是否到达目标账户的推送时刻。
一个可选的实施例中,检测模块包括:第一检测子模块,用于检测上次向目标账户发送聚合消息的第一时刻与当前时刻之间的时长是否达到预设推送间隔时长,其中,推送触发参数包括预设推送间隔时长;第二检测子模块,用于若第一时刻与当前时刻之间的时长达到预设推送间隔时长,则检测出系统时刻到达目标账户的推送时刻。
在另一个可选的实施例中,检测模块包括:第三检测子模块,用于检测自上次向目标账户发送聚合消息的第一时刻起、至当前时刻止的时间段内,向目标账户发布的通讯消息的数量是否达到预设推送数量,其中,推送触发参数包括预设推送数量;第四检测子模块,用于若时间段内向目标账户发布的通讯消息的数量达到预设推送数量,则检测出系统时刻到达目标账户的推送时刻。
通过上述实施例,将当前推送周期内的通讯消息生成聚合消息,并推送该聚合消息,可以通过一条通讯消息通知多个通讯消息,以减少数据冗 余。
根据本发明的上述实施例,接收单元还用于在检测系统时刻是否到达目标账户的推送时刻之前,接收目标账户发送的设置指令,其中,设置指令用于设置目标账户的推送触发参数;装置还包括:设置单元,用于响应设置指令,设置目标账户的推送触发参数。
进一步地,生成单元可以包括:处理模块,用于统计一个或多个通讯消息的消息总量,并汇总一个或多个通讯消息所属的会话的会话数量;生成模块,用于生成聚合消息,其中,聚合消息携带有消息总量和会话数量。
进一步地,处理模块可以包括:获取子模块,用于获取各个通讯消息所属的会话的会话标识;保存子模块,用于将具有同样会话标识的通讯消息保存入一个会话记录中;统计子模块,用于统计会话记录的数量,得到会话数量。
进一步地,装置还可以包括:获取单元,用于在获取当前推送周期内向目标账户发布的一个或多个通讯消息之前,在接收到通讯消息之后,获取目标账户的消息表;记录单元,用于利用消息表记录接收到的通讯消息。
进一步地,记录单元可以包括:获取模块还用于获取通讯消息的会话标识;查找模块,用于查找消息表中与会话标识对应的会话记录,其中,会话记录用于记录会话标识与会话消息数的对应关系;更新模块,用于更新查找到的会话记录中的会话消息数。
在该实施例中,以会话记录为单位记录通讯消息,即将相同会话的通讯消息记录在同一个会话记录中,这样在统计会话数量时,统计会话记录的数量即可,减少了处理时间,提高了处理速度。
进一步地,装置还可以包括:清空单元,用于在将聚合消息发送至目标账户之后,清空消息表。
通过该实施例,消息表中记录的均为未通知的通讯消息,在检测到系统时刻达到推送时刻时,直接基于消息表中记录的信息生成聚合信息,而 无需从大量的通讯信息中确定当前推送周期内的通讯消息,缩短了处理时间。
本实施例中所提供的各个模块与方法实施例对应步骤所提供的使用方法相同、应用场景也可以相同。当然,需要注意的是,上述模块涉及的方案可以不限于上述实施例中的内容和场景,且上述模块可以运行在计算机终端或移动终端,可以通过软件或硬件实现。
根据本发明实施例,还提供了一种用于实施上述信息推送方法的服务器,如图9所示,该终端包括:
如图9所示,该终端包括:一个或多个(图中仅示出一个)处理器901、存储器903、以及传输装置,还可以包括如图9所示的输入输出装置。
其中,存储器903可用于存储软件程序以及模块,如本发明实施例中的信息推送方法和装置对应的程序指令/模块,处理器901通过运行存储在存储器903内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的信息推送方法。存储器903可包括高速随机存储器,还可以包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器903可进一步包括相对于处理器901远程设置的存储器,这些远程存储器可以通过网络连接至终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
上述的传输装置用于经由一个网络接收或者发送数据,还可以用于处理器与存储器之间的数据传输。上述的网络具体实例可包括有线网络及无线网络。在一个实例中,传输装置包括一个网络适配器(Network Interface Controller,NIC),其可通过网线与其他网络设备与路由器相连从而可与互联网或局域网进行通讯。在一个实例中,传输装置为射频(Radio Frequency,RF)模块,其用于通过无线方式与互联网进行通讯。
其中,具体地,存储器903用于存储应用程序。
处理器可以通过传输装置调用存储器存储的应用程序,以执行下述步骤:检测系统时刻是否到达目标账户的推送时刻;在检测出系统时刻到达目标账户的推送时刻的情况下,获取当前推送周期内向目标账户发布的一个或多个通讯消息;基于一个或多个通讯消息生成聚合消息,其中,聚合消息用于通知向目标账户发布了一个或多个通讯消息;将聚合消息发送至目标账户。
处理器可以通过传输装置调用存储器存储的应用程序,以执行下述步骤:获取预先设置的目标账户的推送触发参数;基于推送触发参数,检测系统时刻是否到达目标账户的推送时刻。
处理器可以通过传输装置调用存储器存储的应用程序,以执行下述步骤:检测上次向目标账户发送聚合消息的第一时刻与当前时刻之间的时长是否达到预设推送间隔时长,其中,推送触发参数包括预设推送间隔时长;若第一时刻与当前时刻之间的时长达到预设推送间隔时长,则检测出系统时刻到达目标账户的推送时刻。
处理器可以通过传输装置调用存储器存储的应用程序,以执行下述步骤:检测自上次向目标账户发送聚合消息的第一时刻起、至当前时刻止的时间段内,向目标账户发布的通讯消息的数量是否达到预设推送数量,其中,推送触发参数包括预设推送数量;若时间段内向目标账户发布的通讯消息的数量达到预设推送数量,则检测出系统时刻到达目标账户的推送时刻。
处理器可以通过传输装置调用存储器存储的应用程序,以执行下述步骤:在检测系统时刻是否到达目标账户的推送时刻之前,接收目标账户发送的设置指令,其中,设置指令用于设置目标账户的推送触发参数;响应设置指令,设置目标账户的推送触发参数。
处理器可以通过传输装置调用存储器存储的应用程序,以执行下述步骤:统计一个或多个通讯消息的消息总量,并汇总一个或多个通讯消息所属的会话的会话数量;生成聚合消息,其中,聚合消息携带有消息总量和 会话数量。
处理器可以通过传输装置调用存储器存储的应用程序,以执行下述步骤:获取各个通讯消息所属的会话的会话标识;将具有同样会话标识的通讯消息保存入一个会话记录中;统计会话记录的数量,得到会话数量。
处理器可以通过传输装置调用存储器存储的应用程序,以执行下述步骤:在获取当前推送周期内向目标账户发布的一个或多个通讯消息之前,在接收到通讯消息之后,获取目标账户的消息表;利用消息表记录接收到的通讯消息。
处理器可以通过传输装置调用存储器存储的应用程序,以执行下述步骤:获取通讯消息的会话标识;查找消息表中与会话标识对应的会话记录,其中,会话记录用于记录会话标识与会话消息数的对应关系;更新查找到的会话记录中的会话消息数。
处理器可以通过传输装置调用存储器存储的应用程序,以执行下述步骤:在将聚合消息发送至目标账户之后,清空消息表。
需要进一步说明的是,寄存区域为系统的内存和系统处理器中的寄存器。
本领域普通技术人员可以理解,图9所示的结构仅为示意,终端可以是智能手机(如Android手机、iOS手机等)、平板电脑、掌上电脑以及移动互联网设备(Mobile InternetDevices,MID)、PAD等终端设备。图9其并不对上述电子装置的结构造成限定。例如,终端还可包括比图9中所示更多或者更少的组件(如网络接口、显示装置等),或者具有与图9所示不同的配置。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令终端设备相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(Read-Only Memory,ROM)、随机存取器(RandomAccess Memory, RAM)、磁盘或光盘等。
本发明的实施例还提供了一种存储介质。可选地,在本实施例中,上述存储介质可以用于执行上述信息推送方法的程序代码。
可选地,在本实施例中,上述存储介质可以位于上述实施例所示的网络中的多个网络设备中的至少一个网络设备上。
可选地,在本实施例中,处理器根据存储介质中已存储的程序代码执行下述步骤:检测系统时刻是否到达目标账户的推送时刻;在检测出系统时刻到达目标账户的推送时刻的情况下,获取当前推送周期内向目标账户发布的一个或多个通讯消息;基于一个或多个通讯消息生成聚合消息,其中,聚合消息用于通知向目标账户发布了一个或多个通讯消息;将聚合消息发送至目标账户。
可选地,在本实施例中,处理器根据存储介质中已存储的程序代码执行下述步骤:获取预先设置的目标账户的推送触发参数;基于推送触发参数,检测系统时刻是否到达目标账户的推送时刻。
可选地,在本实施例中,处理器根据存储介质中已存储的程序代码执行下述步骤:检测上次向目标账户发送聚合消息的第一时刻与当前时刻之间的时长是否达到预设推送间隔时长,其中,推送触发参数包括预设推送间隔时长;若第一时刻与当前时刻之间的时长达到预设推送间隔时长,则检测出系统时刻到达目标账户的推送时刻。
可选地,在本实施例中,处理器根据存储介质中已存储的程序代码执行下述步骤:检测自上次向目标账户发送聚合消息的第一时刻起、至当前时刻止的时间段内,向目标账户发布的通讯消息的数量是否达到预设推送数量,其中,推送触发参数包括预设推送数量;若时间段内向目标账户发布的通讯消息的数量达到预设推送数量,则检测出系统时刻到达目标账户的推送时刻。
可选地,在本实施例中,处理器根据存储介质中已存储的程序代码执 行下述步骤:在检测系统时刻是否到达目标账户的推送时刻之前,接收目标账户发送的设置指令,其中,设置指令用于设置目标账户的推送触发参数;响应设置指令,设置目标账户的推送触发参数。
可选地,在本实施例中,处理器根据存储介质中已存储的程序代码执行下述步骤:统计一个或多个通讯消息的消息总量,并汇总一个或多个通讯消息所属的会话的会话数量;生成聚合消息,其中,聚合消息携带有消息总量和会话数量。
可选地,在本实施例中,处理器根据存储介质中已存储的程序代码执行下述步骤:获取各个通讯消息所属的会话的会话标识;将具有同样会话标识的通讯消息保存入一个会话记录中;统计会话记录的数量,得到会话数量。
可选地,在本实施例中,处理器根据存储介质中已存储的程序代码执行下述步骤:在获取当前推送周期内向目标账户发布的一个或多个通讯消息之前,在接收到通讯消息之后,获取目标账户的消息表;利用消息表记录接收到的通讯消息。
可选地,在本实施例中,处理器根据存储介质中已存储的程序代码执行下述步骤:获取通讯消息的会话标识;查找消息表中与会话标识对应的会话记录,其中,会话记录用于记录会话标识与会话消息数的对应关系;更新查找到的会话记录中的会话消息数。
可选地,在本实施例中,处理器根据存储介质中已存储的程序代码执行下述步骤:在将聚合消息发送至目标账户之后,清空消息表。
可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
可选地,本实施例中的具体示例可以参考上述实施例中所描述的示 例,本实施例在此不再赘述。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
上述实施例中的集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在上述计算机可读取的存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在存储介质中,包括若干指令用以使得一台或多台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的客户端,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (17)
1.一种信息推送方法,其特征在于,包括:
检测系统时刻是否到达目标账户的推送时刻;
在检测出所述系统时刻到达所述目标账户的推送时刻的情况下,获取当前推送周期内向所述目标账户发布的一个或多个通讯消息;
基于所述一个或多个通讯消息生成聚合消息,其中,所述聚合消息用于通知向所述目标账户发布了所述一个或多个通讯消息,所述基于所述一个或多个通讯消息生成聚合消息包括:统计所述一个或多个通讯消息的消息总量,并汇总所述一个或多个通讯消息所属的会话的会话数量;生成所述聚合消息,其中,所述聚合消息携带有所述消息总量和所述会话数量;
将所述聚合消息发送至所述目标账户以在第二终端的界面上显示所述消息总量和所述会话数量,其中,所述目标账户登录在所述第二终端的即时通讯应用客户端上;
接收所述目标账户基于所述聚合消息生成的操作指令,响应于所述操作指令将与所述操作指令对应的通讯消息发送给所述目标账户。
2.根据权利要求1所述的方法,其特征在于,检测系统时刻是否到达目标账户的推送时刻包括:
获取预先设置的所述目标账户的推送触发参数;
基于所述推送触发参数,检测所述系统时刻是否到达目标账户的推送时刻。
3.根据权利要求2所述的方法,其特征在于,基于所述推送触发参数,检测所述系统时刻是否到达目标账户的推送时刻包括:
检测上次向所述目标账户发送聚合消息的第一时刻与当前时刻之间的时长是否达到预设推送间隔时长,其中,所述推送触发参数包括所述预设推送间隔时长;
若所述第一时刻与所述当前时刻之间的时长达到所述预设推送间隔时长,则检测出所述系统时刻到达目标账户的推送时刻。
4.根据权利要求2所述的方法,其特征在于,基于所述推送触发参数,检测所述系统时刻是否到达目标账户的推送时刻包括:
检测自上次向所述目标账户发送聚合消息的第一时刻起、至当前时刻止的时间段内,向所述目标账户发布的通讯消息的数量是否达到预设推送数量,其中,所述推送触发参数包括所述预设推送数量;
若所述时间段内向所述目标账户发布的通讯消息的数量达到所述预设推送数量,则检测出所述系统时刻到达目标账户的推送时刻。
5.根据权利要求2至4中任意一项所述的方法,其特征在于,在检测系统时刻是否到达目标账户的推送时刻之前,所述方法还包括:
接收所述目标账户发送的设置指令,其中,所述设置指令用于设置所述目标账户的推送触发参数;
响应所述设置指令,设置所述目标账户的推送触发参数。
6.根据权利要求1所述的方法,其特征在于,汇总所述一个或多个通讯消息所属的会话的会话数量包括:
获取各个所述通讯消息所属的会话的会话标识;
将具有同样会话标识的通讯消息保存入一个会话记录中;
统计所述会话记录的数量,得到所述会话数量。
7.根据权利要求1所述的方法,其特征在于,在获取当前推送周期内向所述目标账户发布的一个或多个通讯消息之前,所述方法还包括:
在接收到通讯消息之后,获取所述目标账户的消息表;
利用所述消息表记录接收到的通讯消息。
8.根据权利要求7所述的方法,其特征在于,利用所述消息表记录接收到的通讯消息包括:
获取所述通讯消息的会话标识;
查找所述消息表中与所述会话标识对应的会话记录,其中,会话记录用于记录会话标识与会话消息数的对应关系;
更新查找到的会话记录中的会话消息数。
9.根据权利要求7中所述的方法,其特征在于,在将所述聚合消息发送至所述目标账户之后,所述方法还包括:
清空所述消息表。
10.一种信息推送装置,其特征在于,包括:
检测单元,用于检测系统时刻是否到达目标账户的推送时刻;
获取单元,用于在检测出所述系统时刻到达所述目标账户的推送时刻的情况下,获取当前推送周期内向所述目标账户发布的一个或多个通讯消息;
生成单元,用于基于所述一个或多个通讯消息生成聚合消息,其中,所述聚合消息用于通知向所述目标账户发布了所述一个或多个通讯消息;
发送单元,用于将所述聚合消息发送至所述目标账户以在第二终端的界面上显示所述消息总量和会话数量,其中,所述目标账户登录在所述第二终端的即时通讯应用客户端上;
其中,所述生成单元包括:处理模块,用于统计所述一个或多个通讯消息的消息总量,并汇总所述一个或多个通讯消息所属的会话的所述会话数量;生成模块,用于生成所述聚合消息,其中,所述聚合消息携带有所述消息总量和所述会话数量;
其中,所述装置还用于:接收所述目标账户基于所述聚合消息生成的操作指令,响应于所述操作指令将与所述操作指令对应的通讯消息发送给所述目标账户。
11.根据权利要求10所述的装置,其特征在于,所述检测单元包括:
获取模块,用于获取预先设置的所述目标账户的推送触发参数;
检测模块,用于基于所述推送触发参数,检测所述系统时刻是否到达目标账户的推送时刻。
12.根据权利要求11所述的装置,其特征在于,所述检测模块包括:
第一检测子模块,用于检测上次向所述目标账户发送聚合消息的第一时刻与当前时刻之间的时长是否达到预设推送间隔时长,其中,所述推送触发参数包括所述预设推送间隔时长;
第二检测子模块,用于若所述第一时刻与所述当前时刻之间的时长达到所述预设推送间隔时长,则检测出所述系统时刻到达目标账户的推送时刻。
13.根据权利要求11所述的装置,其特征在于,所述检测模块包括:
第三检测子模块,用于检测自上次向所述目标账户发送聚合消息的第一时刻起、至当前时刻止的时间段内,向所述目标账户发布的通讯消息的数量是否达到预设推送数量,其中,所述推送触发参数包括所述预设推送数量;
第四检测子模块,用于若所述时间段内向所述目标账户发布的通讯消息的数量达到所述预设推送数量,则检测出所述系统时刻到达目标账户的推送时刻。
14.根据权利要求10所述的装置,其特征在于,所述装置还包括:
获取单元,用于在获取当前推送周期内向所述目标账户发布的一个或多个通讯消息之前,在接收到通讯消息之后,获取所述目标账户的消息表;
记录单元,用于利用所述消息表记录接收到的通讯消息。
15.一种信息推送系统,其特征在于,包括:
第一终端,向目标账户发布通讯消息;
服务器,接收到所述第一终端向所述目标账户发布的通讯消息之后,检测系统时刻是否到达目标账户的推送时刻;获取单元,用于在检测出所述系统时刻到达所述目标账户的推送时刻的情况下,获取当前推送周期内向所述目标账户发布的一个或多个通讯消息;生成单元,用于基于所述一个或多个通讯消息生成聚合消息,其中,所述聚合消息用于通知向所述目标账户发布了所述一个或多个通讯消息;发送单元,用于将所述聚合消息发送至所述目标账户以在第二终端的界面上显示所述消息总量和会话数量;所述生成单元包括:处理模块,用于统计所述一个或多个通讯消息的消息总量,并汇总所述一个或多个通讯消息所属的会话的所述会话数量;生成模块,用于生成所述聚合消息,其中,所述聚合消息携带有所述消息总量和所述会话数量;
所述服务器还用于:接收所述目标账户基于所述聚合消息生成的操作指令,响应于所述操作指令将与所述操作指令对应的通讯消息发送给所述目标账户;
所述第二终端,用于显示所述聚合消息,其中,所述目标账户登录在所述第二终端的即时通讯应用客户端上。
16.一种计算机可读的存储介质,所述计算机可读的存储介质包括存储的程序,其中,所述程序运行时执行上述权利要求1至9任一项中所述的方法。
17.一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为通过所述计算机程序执行所述权利要求1至9任一项中所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610554613.9A CN107528766B (zh) | 2016-07-14 | 2016-07-14 | 信息推送方法、装置及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610554613.9A CN107528766B (zh) | 2016-07-14 | 2016-07-14 | 信息推送方法、装置及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107528766A CN107528766A (zh) | 2017-12-29 |
CN107528766B true CN107528766B (zh) | 2020-09-01 |
Family
ID=60748478
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610554613.9A Active CN107528766B (zh) | 2016-07-14 | 2016-07-14 | 信息推送方法、装置及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107528766B (zh) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109783720A (zh) * | 2018-11-30 | 2019-05-21 | 平安科技(深圳)有限公司 | 消息推送方法、装置、计算机装置及存储介质 |
CN109640000B (zh) * | 2018-11-30 | 2021-08-10 | 维沃移动通信有限公司 | 一种富媒体通信方法、终端设备及计算机可读存储介质 |
CN109743376B (zh) * | 2018-12-27 | 2021-09-28 | 山东信通电子股份有限公司 | 一种基于单台服务器的消息推送方法及其装置 |
CN109859011A (zh) * | 2019-01-31 | 2019-06-07 | 傲宝珠宝文化发展(深圳)有限公司 | 基于珠宝线上商城的消息推送方法、系统及其存储介质 |
CN110324233B (zh) * | 2019-05-23 | 2022-11-29 | 平安科技(深圳)有限公司 | 未读消息角标提示方法、装置、设备及存储介质 |
CN111371672B (zh) * | 2020-02-14 | 2022-04-08 | 贝壳技术有限公司 | 消息推送方法及装置 |
CN112565056B (zh) * | 2020-11-11 | 2022-09-09 | 中国软件与技术服务股份有限公司 | 一种即时通讯处理群发上线、下线消息的方法和装置 |
CN112733010A (zh) * | 2020-12-16 | 2021-04-30 | 深圳市欢太科技有限公司 | 消息推送方法及装置、电子设备、计算机可读存储介质 |
CN112749880A (zh) * | 2020-12-25 | 2021-05-04 | 上海瑞家信息技术有限公司 | 信息处理方法、信息处理装置及电子设备 |
CN113836424A (zh) * | 2021-09-29 | 2021-12-24 | 深圳追一科技有限公司 | 数据获取方法、装置、电子设备及存储介质 |
CN113923180B (zh) * | 2021-09-30 | 2023-02-03 | 北京字跳网络技术有限公司 | 话题群消息推送方法、接收方法、装置、系统及存储介质 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101193081A (zh) * | 2007-12-21 | 2008-06-04 | 腾讯科技(深圳)有限公司 | 信息提示方法和终端 |
CN104468667B (zh) * | 2013-09-22 | 2018-06-22 | 腾讯科技(深圳)有限公司 | 消息推送方法、装置和服务器 |
CN105099870B (zh) * | 2015-05-28 | 2019-02-15 | 努比亚技术有限公司 | 一种消息推送方法及装置 |
CN105610918A (zh) * | 2015-12-21 | 2016-05-25 | 广州华多网络科技有限公司 | 一种信息处理方法及装置 |
-
2016
- 2016-07-14 CN CN201610554613.9A patent/CN107528766B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN107528766A (zh) | 2017-12-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107528766B (zh) | 信息推送方法、装置及系统 | |
CN104253741B (zh) | 一种信息发送方法、相关装置及系统 | |
CN105847020B (zh) | 消息推送方法和装置 | |
CN107979525A (zh) | 一种红包发放方法、设备以及介质 | |
EP2849468A1 (en) | Server and method for remotely controlling working of communication terminal, and communication terminal | |
WO2014169688A1 (en) | Method and system for identifying prank call, client, server, and storage medium | |
US10743249B2 (en) | Methods and apparatus for generating recommended changes to communication behaviors | |
CN109246078B (zh) | 一种数据交互方法及服务器 | |
CN107528767B (zh) | 会话的处理方法和装置 | |
TW201814609A (zh) | 一種資訊推送的方法和系統及用戶端和伺服器 | |
WO2017016084A1 (zh) | 告警信息通知方法、装置及告警信息过滤设备 | |
CN111130986B (zh) | 消息发送方法、装置、设备及存储介质 | |
US20200004785A1 (en) | Automatic grouping based on user behavior | |
US11641317B2 (en) | Activity stream based collaboration | |
CN108306776B (zh) | 信息提示方法、装置、系统及计算机可读存储介质 | |
CN110300089B (zh) | 目标帐号的处理方法、装置、存储介质及电子装置 | |
CN109213955B (zh) | 数据处理方法及相关设备 | |
CN113794939B (zh) | 数据处理方法、装置、电子设备及计算机可读存储介质 | |
WO2016037489A1 (zh) | Rcs垃圾消息的监控方法、装置及系统 | |
US20180139160A1 (en) | Method, system and server for removing alerts | |
CN106658446B (zh) | 短消息的统计分析方法 | |
CN103067260B (zh) | 实现即时通信的方法及装置 | |
CN107222392B (zh) | 通信方法、装置、系统以及计算机存储介质 | |
CN106912032B (zh) | 一种信息处理方法、系统、客户端和服务器 | |
US20140038649A1 (en) | Connection System and Method to Dynamically Create and Collect a Group of Contextual Contacts |
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 |