消息推送方法和装置的制造方法
【技术领域】
[0001]本发明涉及即时通讯技术领域,特别是涉及到一种消息推送方法和装置。
【背景技术】
[0002]即时通讯(IM, Instant Messenger),是一种基于互联网的即时交流消息的业务。即时通讯允许两人或多人使用网络即时的传递文字讯息、档案、语音和视频。
[0003]即时通讯作为一种终端服务,与终端技术的发展息息相关。过去,即时通讯主要应用在计算机终端,例如台式电脑、笔记本电脑等。
[0004]在传统技术中,用户可以通过计算机终端上的即时通讯客户端接收到其他用户发送的消息,而当用户离开计算机终端时,可能会错过某些消息。特别是对于一些重要消息,由于用户不能第一时间查看到这些消息,从而导致消息提醒不够及时。
【发明内容】
[0005]基于此,有必要提供一种消息推送方法和装置,能够降低用户错过即时通讯消息的几率。
[0006]一种消息推送方法,包括:
[0007]接收即时通讯消息,所述即时通讯消息指定了接收所述即时通讯消息的用户标识;
[0008]获取所述用户标识对应的计算机终端上报的状态;
[0009]若所述状态为非活跃状态,则将所述即时通讯消息推送给所述用户标识对应的移动终端。
[0010]一种消息推送装置,包括:
[0011]消息接收模块,用于接收即时通讯消息,所述即时通讯消息指定了接收所述即时通讯消息的用户标识;
[0012]状态获取模块,用于获取所述用户标识对应的计算机终端上报的状态;
[0013]移动终端发送模块,用于在所述状态为非活跃状态时,将所述即时通讯消息推送给所述用户标识对应的移动终端。
[0014]上述消息推送方法和装置,接收到即时通讯消息后,根据即时通讯消息中指定的接收方的用户标识,并获取用户标识对应的计算机终端的状态,若状态为非活跃状态时,表征计算机终端当前未被其用户有效地操作,则将即时通讯消息推送到用户标识对应的移动终端,则用户就可以通过移动终端及时获取到即时通讯消息,有效地降低了用户错过即时通讯消息的几率,提高了消息提醒的及时性。
【附图说明】
[0015]图1为一个实施例中的消息推送方法的流程示意图;
[0016]图2为一个实施例中的消息推送方法的应用场景示意图;
[0017]图3A为一个实施例中的消息推送方法的时序图;
[0018]图3B为一个实施例中的消息推送方法的时序图;
[0019]图3C为一个实施例中的消息推送方法的时序图;
[0020]图4为一个实施例中的消息推送装置的结构示意图;
[0021]图5为一个实施例中消息推送模块的结构示意图。
【具体实施方式】
[0022]为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
[0023]参见图1,在一个实施例中,提供了一种消息推送方法。该消息推送方法可以应用于即时通讯网络中的服务器。该方法包括:
[0024]步骤102,接收即时通讯消息。
[0025]具体的,该即时通讯消息指定了接收该即时通讯消息的用户标识。即时通讯消息可以是来自该用户的好友所在终端所发送的即时通讯消息,或者是该用户所在工作群或讨论组中的成员所在终端发出的即时通讯消息。该即时通讯消息的形式可以是文字消息、图片消息、语音消息或视频消息等,由即时通讯中的即时通讯服务器进行接收。
[0026]步骤104,获取用户标识对应的计算机终端上报的状态。
[0027]具体的,计算机终端上报的状态包括活跃状态和非活跃状态,其中,计算机的非活跃状态是指在预设时间段内,计算机终端上的即时通讯客户端未接收该终端用户通过输入装置输入数据,或者计算机终端上所有程序未接收到用户输入数据。反之在预设时间段内,计算机终端上的即时通讯客户端接收到用户通过输入装置输入的数据,或者计算机终端有接收到通过其它应用程序输入的数据,则该计算机终端的状态为活跃状态。计算机终端的状态可以间接表征用户对计算机终端的操作情况,例如非活跃状态可以表征用户当前未有效操作计算机终端,而活跃状态表明用户当前正在使用计算机终端。
[0028]在本实施例中,用户标识对应的计算机终端客户端(运行在计算机终端上的即时通讯客户端的简称)处于在线状态,即时通讯服务器在接收到即时通讯消息后,向目标用户(即指定接收即时通讯消息的用户)的用户标识对应的计算机终端客户端下达获取计算机终端状态的指令,由接收该指令的计算机终端检测自身状态后进行上报。
[0029]在其中一个实施例中,计算机终端检测其状态,当检测到计算机终端处于下列情形之一,即将计算机终端的状态标记为非活跃状态,并向即时通讯服务器上报非活跃状态:
(I)在预置时间段内如五分钟内,没有接收到用户通过输入装置如鼠标、键盘等进行输入的数据;(2)计算机终端进入了锁屏状态;(3)计算机终端客户端已经处于锁定状态。
[0030]相应的,当计算机终端接收到目标用户通过输入装置输入的数据,或者解锁指令,或者解除计算机终端客户端的锁定状态的指令时,计算机终端就会将计算机终端的状态更新为活跃状态,并进行上报。
[0031]步骤106,若状态为非活跃状态,则将即时通讯消息推送给用户标识对应的移动终端。
[0032]具体的,即时通讯服务器收到用户标识对应的计算机终端上报的非活跃状态时,表征目标用户当前未对计算机终端进行有效操作,例如用户可能离开了计算机终端一段时间,即时通讯服务器将即时通讯消息推送给用户标识对应的移动终端,避免用户错过该即时通讯消息,提高了消息提醒的及时性。
[0033]在一个实施例中,该消息推送方法还包括:当计算机终端的状态为非活跃状态时,不将即时通讯消息推送给用户标识对应的计算机终端。即时通讯服务器获取的计算机终端状态为非活跃时,在预设时间段内,计算机终端客户端或其它程序未接收到用户输入的数据,表征用户当前未有效操作计算机终端,例如用户可能已经离开了计算机终端一段时间,即时通讯服务器可以不向用户标识对应的计算机终端推送即时通讯消息,以节约带宽和减轻即时通讯服务器的处理量。
[0034]在另一个实施例中,该消息推送方法还包括:当计算机终端上报的状态为活跃状态,即时通讯服务器不将即时通讯消息推送给用户标识对应的移动终端,而将即时通讯消息推送给用户标识对应的计算机终端。计算机终端的状态为活跃状态,在预设时间段内,计算机终端客户端或计算机终端上的其它程序接收到了用户输入的数据,表征用户当前正在有效地操作计算机终端,即时通讯服务器将即时通讯消息推送到计算机终端上的客户端,而不向移动终端进行推送。这样,可以避免即时通讯消息既发送到计算机终端又推送到移动终端,造成对目标用户的过多干扰,同时也可以节约带宽和减轻即时通讯服务器的处理量。
[0035]在一个实施例中,即时通讯服务器向移动终端推送即时通讯消息的过程为:即时通讯服务器判断移动终端客户端(用户标识对应的运行在移动终端上的即时通讯客户端的简称)处于在线状态还是离线状态。其中,移动终端客户端的在线状态或离线状态预先由即时通讯服务器进行记录,例如用户通过登录移动终端上的即时通讯客户端,移动终端客户端会与即时通讯服务器建立一次连接,由即时通讯服务器将移动终端客户端记录为在线状态,并记录移动终端的其它信息,如操作系统类型、移动终端标识等,当移动终端用户通过操作,如关闭移动