一种即时通讯消息实现方法及装置制造方法及图纸

技术编号:18053892 阅读:26 留言:0更新日期:2018-05-26 10:39
本发明专利技术公开了一种即时通讯消息实现方法及装置,所述方法包括以下步骤:S1:通讯客户端A将即时消息发送给通讯客户端B;S2:判断所述通讯客户端B是否闪断掉线,若未闪断掉线,则使所述通讯客户端B接收所述通讯客户端A发出的即时消息,并使所述通讯客户端B更新本地时间戳;否则,执行步骤S3;S3:所述通信客户端B闪断掉线后重新登录,所述通信客户端B利用本地时间戳拉取离线消息,以接收所述通讯客户端A发出的即时消息。本发明专利技术的有益效果:该方法及装置可以做到既节省流量,又可解决在移动端频繁掉线的情况下,实现消息必达的目的。

【技术实现步骤摘要】
一种即时通讯消息实现方法及装置
本专利技术涉及一种即时通讯领域,尤其涉及一种即时通讯消息实现方法及装置。
技术介绍
在即时通讯中,特别是企业级的即时通讯中,即时消息已不再是简单的闲聊,消息不容丢失。例如,上级对下级的消息可能意味着一项任务的安排,消息接收方要做到必达甚至有反馈。目前已经有一些解决此类问题的方案,但是随着移动APP的增多,面临移动端频繁掉线的缺陷,要做到消息必达,就成为即时通讯类后台服务开发人员必须要解决的课题。目前,处理即时消息必达的方法都是,保存一个消息的状态(已读或未读),在线时及时收到将消息置为已读,用户登录时拉取未读的消息,保证用户收到未读消息。关于这个实现也有两种方案:方案A:服务转发在线消息后,即更新该条消息的状态为已读。方案B:服务转发在线消息,客户端收到后给个响应,服务收到响应后才更新该条消息的状态为已读。现有的两种方案虽然都不同程度的解决了消息必达问题,但是在实际应用中就会发现都还有些无法解决的问题:方案A,会存在丢消息的情况,比如服务器转发成功了,由于网络原因客户端并未收到该条消息,而这条消息已改为已读,那么不论下次登录还是怎样都收不到该条消息,所以会造成用户消息丢失。方案B,根据客户端的响应包来更新消息已读标志,基本可以避免丢消息,但是会大大增加服务器流量,比如一对一的消息,多了一个响应包,群组消息则是多了N个群成员的响应包。
技术实现思路
本专利技术要解决的技术问题在于,针对现有技术中的上述缺陷,提供一种即时通讯消息实现方法及装置。本专利技术解决其技术问题所采用的技术方案是:提供一种即时通讯消息实现方法,包括以下步骤:S1:通讯客户端A将即时消息发送给通讯客户端B;S2:判断所述通讯客户端B是否闪断掉线,若未闪断掉线,则使所述通讯客户端B接收所述通讯客户端A发出的即时消息,并使所述通讯客户端B更新本地时间戳;否则,执行步骤S3;S3:所述通信客户端B闪断掉线后重新登录,所述通信客户端B利用本地时间戳拉取离线消息,以接收所述通讯客户端A发出的即时消息。在本专利技术所述的即时通讯消息实现方法中,所述本地时间戳为通讯客户端B已接收到的最新消息的接收时间。在本专利技术所述的即时通讯消息实现方法中,所述步骤S3还包括,在所述通讯客户端B接收到所述通讯客户端A发出的即时消息后,所述通讯客户端B更新本地时间戳。在本专利技术所述的即时通讯消息实现方法中,所述步骤S1具体包括以下步骤:S11:所述通讯客户端A将即时消息发送给后台服务器;S12:判断所述通讯客户端B是否在线,若不在线,则将所述即时消息存储至数据库中;否则,执行步骤S13;S13:将所述即时消息转发至所述通讯客户端B。在本专利技术所述的即时通讯消息实现方法中,所述步骤S13还包括,将已转发至所述通讯客户端B的即时消息存储到数据库中。本专利技术还提供一种即时通讯消息实现装置,包括即时消息发送模块与即时消息接收模块,所述即使消息接收模块包括闪断掉线判断模块及离线消息拉取模块,其中,所述即时消息发送模块,用于将通讯客户端A发出的即时消息发送至通讯客户端B;所述闪断掉线判断模块,用于判断所述通讯客户端B是否闪断掉线,若未闪断掉线,则使所述通讯客户端B接收所述通讯客户端A发出的即时消息,并使所述通讯客户端B更新本地时间戳;所述离线消息拉取模块,用于在所述通讯客户端B闪断掉线重新登录后,使所述通信客户端B利用本地时间戳拉取离线消息,以接收所述通讯客户端A发出的即时消息。在本专利技术所述的即时通讯消息实现装置中,所述即时消息接收模块还包括本地时间戳更新模块,用于将所述通讯客户端B已接收到的最新消息的接收时间作为本地时间戳。在本专利技术所述的即时通讯消息实现装置中,所述离线消息拉取模块还用于在所述通讯客户端B接收到所述通讯客户端A发出的即时消息后,使所述通讯客户端B更新本地时间戳。在本专利技术所述的即时通讯消息实现装置中,所述即时消息发送模块包括在线判断模块、消息存储模块及消息转发模块,其中,所述消息接收模块,用于接收所述通讯客户端A发送给所述通讯客户端B的即时消息;所述在线判断模块,用于判断所述通讯客户端B是否在线,若不在线,则将所述即时消息存储至数据库中;所述消息存储模块,用于使所述即使消息存储至数据库中;所述消息转发模块,用于在所述通讯客户端B在线时,将所述即时消息转发至所述通讯客户端B。在本专利技术所述的即时通讯消息实现装置中,所述消息转发模块还用于将已转发至所述通讯客户端B的即时消息存储到数据库中。综上所述,实施本专利技术的一种即时通讯消息实现方法及装置,具有以下有益效果:本申请的方法及装置使用本地时间戳的概念来保证用户的消息必达,将每一个用户的已接受到的最新消息的接收时间作为本地时间戳,每次登陆时以当前的本地时间戳为基础拉取剩余消息,从而可以拉取到所有未接收到的离线消息。该方法可以做到既节省流量,又可解决在移动端频繁掉线的情况下,实现消息必达的目的。附图说明下面将结合附图及实施例对本专利技术作进一步说明,附图中:图1是本专利技术实施例提供的一种即时通讯消息实现方法的流程图;图2是图1所示一种即时通讯消息实现方法的步骤S1的流程图。具体实施方式为了使本专利技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本专利技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本专利技术,并不用于限定本专利技术。本专利技术较佳实施例提供了一种即时通讯消息实现方法,适用于各种即时通讯场景,以确保各类设备(尤其是移动设备)都能正确无误的实现消息必达。该方法以每一个用户已接收到的最新消息的接收时间作为本地时间戳,每次登陆时以当前的本地时间戳为基础拉取未接收到的消息,从而可以拉取到所有未接收到的离线消息。该方法可以做到既节省流量,又可解决在移动端频繁掉线的情况下,实现消息必达的目的。如图1所示,该方法具体包括以下步骤:S1:通讯客户端A将即时消息发送给通讯客户端B。具体的,后台服务器接收通讯客户端A发出的即时消息,并判断通讯客户端B是否在线,若通讯客户端B在线,后台服务器则将通讯客户端A发出的即时消息转发给通讯客户端B,否则将通讯客户端A发出的即时消息存储至数据库中。如图2所示,步骤S1具体包括以下步骤:S11:通讯客户端A将即时消息发送给后台服务器。S12:后台服务器在接收到通讯客户端A发出的即时消息后,判断通讯客户端B是否在线,若通讯客户端B不在线,则将即时消息存储至数据库中;否则,执行步骤S13。通过将通讯客户端A发出的即时消息存储至数据库中,可以避免消息缺失,并且确保通讯客户端B重新在线时,后台服务器可以将存储的离线消息发送给通讯客户端B,以实现消息必达的目的。S13:后台服务器将即时消息转发至通讯客户端B,并将已转发至所述通讯客户端B的即时消息存储到数据库中。S2:判断通讯客户端B是否闪断掉线,若通讯客户端B未闪断掉线,则使通讯客户端B接收通讯客户端A发出的即时消息,并使通讯客户端B更新本地时间戳;否则,执行步骤S3。其中,通讯客户端B更新本地时间戳,即为通讯客户端B将此次接收到的即时消息的接收时间作为最新的本地时间戳。S3:通信客户端B闪断掉线后重新登录,通信客户端B利用本地时间戳拉取离线消息,以接收通讯客户端A发出的即时消息。通信客户端B利用本地时间戳拉取离线消息,以获取本文档来自技高网...
一种即时通讯消息实现方法及装置

【技术保护点】
一种即时通讯消息实现方法,其特征在于,包括以下步骤:S1:通讯客户端A将即时消息发送给通讯客户端B;S2:判断所述通讯客户端B是否闪断掉线,若未闪断掉线,则使所述通讯客户端B接收所述通讯客户端A发出的即时消息,并使所述通讯客户端B更新本地时间戳;否则,执行步骤S3;S3:所述通信客户端B闪断掉线后重新登录,所述通信客户端B利用本地时间戳拉取离线消息,以接收所述通讯客户端A发出的即时消息。

【技术特征摘要】
1.一种即时通讯消息实现方法,其特征在于,包括以下步骤:S1:通讯客户端A将即时消息发送给通讯客户端B;S2:判断所述通讯客户端B是否闪断掉线,若未闪断掉线,则使所述通讯客户端B接收所述通讯客户端A发出的即时消息,并使所述通讯客户端B更新本地时间戳;否则,执行步骤S3;S3:所述通信客户端B闪断掉线后重新登录,所述通信客户端B利用本地时间戳拉取离线消息,以接收所述通讯客户端A发出的即时消息。2.根据权利要求1所述的即时通讯消息实现方法,其特征在于,所述本地时间戳为通讯客户端B已接收到的最新消息的接收时间。3.根据权利要求1所述的即时通讯消息实现方法,其特征在于,所述步骤S3还包括,在所述通讯客户端B接收到所述通讯客户端A发出的即时消息后,所述通讯客户端B更新本地时间戳。4.根据权利要求1所述的即时通讯消息实现方法,其特征在于,所述步骤S1具体包括以下步骤:S11:所述通讯客户端A将即时消息发送给后台服务器;S12:判断所述通讯客户端B是否在线,若不在线,则将所述即时消息存储至数据库中;否则,执行步骤S13;S13:将所述即时消息转发至所述通讯客户端B。5.根据权利要求4所述的即时通讯消息实现方法,其特征在于,所述步骤S13还包括,将已转发至所述通讯客户端B的即时消息存储到数据库中。6.一种即时通讯消息实现装置,其特征在于,包括即时消息发送模块与即时消息接收模块,所述即时消息接收模块包括闪断掉线判断模块及离线消息拉取模块...

【专利技术属性】
技术研发人员:赵志强程丹
申请(专利权)人:深圳联友科技有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1