CN112637314A - 消息同步方法、系统、第一终端设备、服务端和介质 - Google Patents
消息同步方法、系统、第一终端设备、服务端和介质 Download PDFInfo
- Publication number
- CN112637314A CN112637314A CN202011496647.XA CN202011496647A CN112637314A CN 112637314 A CN112637314 A CN 112637314A CN 202011496647 A CN202011496647 A CN 202011496647A CN 112637314 A CN112637314 A CN 112637314A
- Authority
- CN
- China
- Prior art keywords
- message
- terminal device
- account
- server
- target
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 51
- 238000004590 computer program Methods 0.000 claims description 14
- 238000012795 verification Methods 0.000 claims description 8
- 230000005540 biological transmission Effects 0.000 description 7
- 238000010586 diagram Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 230000001360 synchronised effect Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 2
- 230000002452 interceptive effect Effects 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction 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/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
-
- 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/14—Session management
- H04L67/141—Setup of application sessions
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer And Data Communications (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种消息同步方法、系统、第一终端设备、服务端和存储介质,用于解决传统方案中容易会导致终端设备处理卡顿的技术问题。方法部分包括:服务端与第一终端设备建立短连接,其中,短连接为用户的目标账户在第一终端设备登录时,第一终端设备主动建立的;服务端接收第一终端设备通过短连接发送的消息同步请求,其中,消息同步请求包含有目标账号的账号标识;服务端通过账号标识从消息数据库中,获取账号标识对应的目标离线会话消息,其中,目标离线会话消息为用户通过第二终端设备登录目标账号时,目标账号所产生的历史会话消息;服务端将目标离线会话消息反馈给第一终端设备。
Description
技术领域
本发明涉及数据传输技术领域,尤其涉及一种消息同步方法、系统、第一终端设备、服务端和存储介质。
背景技术
同个用户,通常具有多个终端设备,而多个不同的终端设备之间常常具有同步消息的需求。发明人发现,对于终端的实时消息同步需求,业内普遍的解决方案,通常是基于终端设备建立到后台的长连接,当终端设备收到消息时,由后台主动触发将消息推送到其他终端设备,但是当在消息量很大时,消息量大的多条消息直接上抛到终端设备,容易会导致终端设备处理卡顿。
发明内容
本发明实施例提供一种消息同步方法、系统、第一终端设备、服务端和存储介质,用于解决传统方案中容易会导致终端设备处理卡顿的技术问题。
一种消息同步方法,包括:
服务端与第一终端设备建立短连接,其中,所述短连接为用户的目标账户在所述第一终端设备登录时,所述第一终端设备主动建立的;
所述服务端接收所述第一终端设备通过所述短连接发送的消息同步请求,其中,所述消息同步请求包含有所述目标账号的账号标识;
所述服务端通过所述账号标识从消息数据库中,获取所述账号标识对应的目标离线会话消息,其中,所述目标离线会话消息为所述用户通过第二终端设备登录所述目标账号时,所述目标账号所产生的历史会话消息;
所述服务端将所述目标离线会话消息反馈给所述第一终端设备。
进一步地,当用户的目标账户在所述第一终端设备登录后,所述方法还包括:
所述服务端建立与所述第一终端设备的长连接;
所述服务端通过所述长连接,监听并获取所述目标账户的在所述第一终端设备产生的第一在线会话消息;
所述服务端根据所述目标账户的账户标识,判断当前登录有所述目标账户的其他关联设备;
所述服务端分别将所述第一在线会话消息对应同步给所述其他关联设备。
进一步地,所述服务端通过所述账号标识从消息数据库中,获取所述账号标识对应的目标离线会话消息之前,所述方法还包括:
所述服务端接收所述第二终端设备反馈的第二在线会话消息,其中,所述第二在线会话消息为所述用户通过第二终端设备登录所述目标账号时,所述目标账号所产生的在线会话消息;
所述服务端对所述第二在线会话消息进行消息格式及合法性校验;
当校验通过后,所述服务端将所述第二在线会话消息作为离线会话消息,并将所述离线会话消息和所述账号标识关联存储到所述消息数据库中,其中,所述消息数据库中每个消息类型对应一张消息历史表。
一种消息同步方法,包括:
当用户的目标账户在第一终端设备登录时,所述第一终端设备与服务端建立短连接;
所述第一终端设备通过所述短连接向所述服务端发送消息同步请求,其中,所述消息同步请求包含有所述目标账号的账号标识;
所述第一终端设备通过所述短连接,接收所述服务端根据所述账号标识所反馈的目标离线会话消息,其中,所述目标离线会话消息为所述用户通过第二终端设备登录所述目标账号时,所述目标账号所产生的历史会话消息;
所述第一终端设备释放所述短连接。
一种服务端,包括:
建立模块,用于与第一终端设备建立短连接,其中,所述短连接为用户的目标账户在所述第一终端设备登录时,所述第一终端设备主动建立的;
接收模块,用于接收所述第一终端设备通过所述短连接发送的消息同步请求,其中,所述消息同步请求包含有所述目标账号的账号标识;
获取模块,用于通过所述账号标识从消息数据库中,获取所述账号标识对应的目标离线会话消息,其中,所述目标离线会话消息为所述用户通过第二终端设备登录所述目标账号时,所述目标账号所产生的历史会话消息;
发送模块,用于将所述目标离线会话消息反馈给所述第一终端。
进一步地,所述服务端还包括判断模块;
所述建立模块,用于建立与所述第一终端设备的长连接;
所述获取模块,还用于通过所述长连接,监听并获取所述目标账户的在所述第一终端设备产生的第一在线会话消息;
判断模块,用于根据所述目标账户的账户标识,判断当前登录有所述目标账户的其他关联设备;
所述发送模块,还用于分别将所述第一在线会话消息对应同步给所述其他关联设备。
进一步地,所述服务端还包括检验模块和存储模块;
所述接收模块,还英语接收所述第二终端设备反馈的第二在线会话消息,其中,所述第二在线会话消息为所述用户通过第二终端设备登录所述目标账号时,所述目标账号所产生的在线会话消息;
检验模块,用于对所述第二在线会话消息进行消息格式及合法性校验;
所述存储模块,用于当校验通过后,所述服务端将所述第二在线会话消息作为离线会话消息,并将所述离线会话消息和所述账号标识关联存储到所述消息数据库中,其中,所述消息数据库中每个消息类型对应一张消息历史表。
一种第一终端设备,其特征在于,包括:
建立模块,用于与服务端建立短连接;
发送模块,用于通过所述短连接向所述服务端发送消息同步请求,其中,所述消息同步请求包含有所述目标账号的账号标识;
接收模块,用于通过所述短连接,接收所述服务端根据所述账号标识所反馈的目标离线会话消息,其中,所述目标离线会话消息为所述用户通过第二终端设备登录所述目标账号时,所述目标账号所产生的历史会话消息;
释放模块,用于释放所述短连接。
一种消息同步系统,其特征在于,所述系统包括前述第一终端设备和服务端。
上述消息同步方法和系统中,服务端与第一终端设备建立短连接,其中,所述短连接为用户的目标账户在所述第一终端设备登录时,所述第一终端设备主动建立的;所述服务端接收所述第一终端设备通过所述短连接发送的消息同步请求,其中,所述消息同步请求包含有所述目标账号的账号标识;所述服务端通过所述账号标识从消息数据库中,获取所述账号标识对应的目标离线会话消息,其中,所述目标离线会话消息为所述用户通过第二终端设备登录所述目标账号时,所述目标账号所产生的历史会话消息;所述服务端将所述目标离线会话消息反馈给所述第一终端,可见,本发明中以短连接为基础由终端设备主动拉取用户离线消息,可以有效地减少离线会话消息过多时,由服务端长连接主动推送带来的终端设备处理压力。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一实施例中消息同步系统的一应用环境示意图;
图2是本发明一实施例中消息同步方法的一流程示意图;
图3是本发明一实施例中消息同步方法的另一流程示意图;
图4是本发明一实施例中消息同步方法的另一流程示意图;
图5是本发明一实施例中消息同步方法的另一流程示意图;
图6是本发明一实施例中服务端的一结构示意图;
图7是本发明一实施例中第一终端设备的一结构示意图;
图8是本发明一实施例中计算机设备的一结构示意图;
图9是本发明一实施例中计算机设备的另一结果示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供的消息同步方法,可应用在如图1的应用环境中,其中,第一终端设备可以通过网络与服务端进行通信。服务端与第一终端设备建立短连接,其中,所述短连接为用户的目标账户在所述第一终端设备登录时,所述第一终端设备主动建立的;所述服务端接收所述第一终端设备通过所述短连接发送的消息同步请求,其中,所述消息同步请求包含有所述目标账号的账号标识;所述服务端通过所述账号标识从消息数据库中,获取所述账号标识对应的目标离线会话消息,其中,所述目标离线会话消息为所述用户通过第二终端设备登录所述目标账号时,所述目标账号所产生的历史会话消息;所述服务端将所述目标离线会话消息反馈给所述第一终端。以短连接为基础由终端设备主动拉取用户离线消息,可以有效地减少离线会话消息过多时,由服务端长连接主动推送带来的终端设备处理压力。
其中,第一终端设备可以但不限于各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备。服务端可以用独立的服务器或者是多个服务器组成的服务器集群来实现。下面结合具体地实施例,对本发明实施例进行详细的描述。
在一实施例中,如图2所示,提供一种消息同步方法,以该方法应用在图1中的服务端为例进行说明,包括如下步骤:
S10:服务端与第一终端设备建立短连接,其中,所述短连接为用户的目标账户在所述第一终端设备登录时,所述第一终端设备主动建立的。
第一终端设备指的是手机、平板电脑、PC电脑等设备,该第一终端设备上可以安装有应用程序(APP),用户具有该应用程序相应的目标账户,示例性的,该应用程序可以是指即时通信应用程序,用户通过该第一终端设备,登录应用程序之后,可以与另一方产生会话消息。如利用即时通信应用程序时,用户A通过第一终端设备的通信应用程序,可以向第二终端设备(用户B所持有的终端设备)相应的即时通信应用程序发送实时的会话消息。本发明实施例中,当用户A的目标账户在第一终端设备上的应用程序登录时,第一终端设备会主动与服务端建立短连接。
其中,短连接(short connnection)是相对于长连接而言的概念,指的是在数据传送过程中,只在需要在传输所需的某种数据时,才去建立的连接,所需的某种数据传输完成后,则断开此连接,即每次连接只完成一项业务数据的发送。在本发明实施例中,第一终端设备主动建立的短连接,目的在于获取用户在其他终端设备(第二终端设备)登录相同应用程序时所产生的历史会话消息。
会话消息,可以指的是用户之间发送的交互消息。
S20:所述服务端接收所述第一终端设备通过所述短连接发送的消息同步请求,其中,所述消息同步请求包含有所述目标账号的账号标识。
当第一终端设备主动与服务端建立短连接之后,第一终端设备向服务端发送消息同步请求,该消息同步请求包含有所述目标账号的账号标识。其中,该账号标识为唯一标识用户的目标账号的标识,对于服务端而言,服务端可以接收到所述第一终端设备通过所述短连接发送的消息同步请求。
S30:所述服务端通过所述账号标识从消息数据库中,获取所述账号标识对应的目标离线会话消息,其中,所述目标离线会话消息为所述用户通过第二终端设备登录所述目标账号时,所述目标账号所产生的历史会话消息。
如前述,第二终端设备是独立于第二终端设备的另一个终端设备,例如第一终端设备是手机A,第二终端设备是手机B;或者第一终端设备是手机,而第二终端设备是平板电脑。在实现上述步骤S10之前,用户可以在第二终端设备上,通过目标账户登录应用程序,并且会产生会话消息。该消息数据库中,用于存储用户在其他终端设备登录该目标账号时产生的会话消息,并且所存储的会话消息通过目标账号关联存储,假设此时用户并未登录第一终端设备之前,在消息数据库中存储第二终端设备产生的会话消息,对于第一终端设备而言,便是离线会话消息。本发明实施例中,服务端在接收到所述第一终端设备通过所述短连接发送的消息同步请求之后,便可,通过所述账号标识从消息数据库中,获取所述账号标识对应的目标离线会话消息。
S40:所述服务端将所述目标离线会话消息反馈给所述第一终端设备。
服务端在接收到目标离线会话消息之后,便可将所述目标离线会话消息反馈给所述第一终端设备。也就是说,在用户在第一终端设备上登录目标账号之后,便可使得第一终端设备同步到,用户在第二终端设备上登录目标账号时所产生的历史离线会话消息。
作为一个示例,所述服务端将所述目标离线会话消息反馈给所述第一终端设备之前,还会对目标离线会话消息进行消息去重和聚合处理,以减少消息重合情况,随后才将经过去重和聚合的目标离线会话消息反馈给所述第一终端设备。
可见,本发明提供了一种消息同步方法,当用户登录第一终端设备时,第一终端设备会主动与服务端建立短连接,随后发送消息同步请求,所述服务端接收所述第一终端设备通过所述短连接发送的消息同步请求,其中,所述消息同步请求包含有所述目标账号的账号标识;所述服务端通过所述账号标识从消息数据库中,获取所述账号标识对应的目标离线会话消息,其中,所述目标离线会话消息为所述用户通过第二终端设备登录所述目标账号时,所述目标账号所产生的历史会话消息;所述服务端将所述目标离线会话消息反馈给所述第一终端,可见,本发明中以短连接为基础由终端设备主动拉取用户离线消息,可以有效地减少离线会话消息过多时,由服务端长连接主动推送带来的终端设备处理压力。
如图3所示,当用户的目标账户在所述第一终端设备登录后,所述方法还包括如下步骤:
S50:所述服务端建立与所述第一终端设备的长连接;
S60:所述服务端通过所述长连接,监听并获取所述目标账户的在所述第一终端设备产生的第一在线会话消息;
S70:所述服务端根据所述目标账户的账户标识,判断当前登录有所述目标账户的其他关联设备;
S80:所述服务端分别将所述第一在线会话消息对应同步给所述其他关联设备。
对于步骤S50-S60,可以理解的是,当用户在第一终端设备登录目标账户之后,便可在第一终端设备与另一端终端设备之间产生第一在线会话消息,其中,这里的第一在线会话消息指的是用户在第一终端设备登录目标账户之后,所产生的在线会话消息。例如,用户A在第一终端设备的应用程序上登录目标站账号,便可向另一端终端设备的用户B来往收发会话消息,此时用户A与用户B之间产生会话消息便是在线会话消息,为了区别后续的描述,这里将用户登录第一终端设备之后所产生的会话消息称为第一在线会话消息。
对于服务端而言,在当用户在第一终端设备登录目标账户之后,服务端可以主动建立与该第一终端设备的长连接,以通过所述长连接,不断监听并获取第一终端设备所产生的第一在线会话消息。
对于步骤S70-S80,服务端在通过所述长连接,监听并获取所述目标账户的在所述第一终端设备产生的第一在线会话消息之后,便可继续依据所述目标账户的账户标识,判断当前登录有所述目标账户的其他关联设备。例如用户A可能在第一终端设备(如手机1)上登录了目标账户,同时,也在其他终端设备(如手机2、电脑)上登录了目标账户,说明第一终端设备和其他终端设备的目标账户都是处于在线状态,本发明实施例中,将除了第一终端设备外,其他登录有目标账户的终端设备称为其他关联设备。为了保证实时性和同步性,服务端在通过所述长连接,监听并获取到第一终端设备上的第一在线会话消息后,会将第一在线会话消息同步至手机2和电脑,同时,在多终端消息同步场景下,可以通过账户标识来实现会话消息之间的漫游,而在用户在线场景下,通过长连接监消息,实现用户在线期间消息的实时同步,提高了用户的使用体验。
如图4所示,所述服务端通过所述账号标识从消息数据库中,获取所述账号标识对应的目标离线会话消息之前,所述方法还包括如下步骤:
S01:所述服务端接收所述第二终端设备反馈的第二在线会话消息,其中,所述第二在线会话消息为所述用户通过第二终端设备登录所述目标账号时,所述目标账号所产生的在线会话消息。
如前述,第二终端设备是独立于第二终端设备的另一个终端设备,例如第一终端设备是手机A,第二终端设备是手机B;或者第一终端设备是手机,而第二终端设备是平板电脑。在实现上述步骤S10之前,用户可以在第二终端设备上,通过目标账户登录应用程序,并且会产生会话消息。该消息数据库中,用于存储用户在其他终端设备登录该目标账号时产生的会话消息,并且所存储的会话消息通过目标账号关联存储,假设此时用户并未登录第一终端设备之前,在消息数据库中存储第二终端设备产生的会话消息,对于第一终端设备而言,便是离线会话消息。因此,所述服务端通过所述账号标识从消息数据库中,获取所述账号标识对应的目标离线会话消息之前,还需所述服务端接收所述第二终端设备反馈的第二在线会话消息。其中,该第二在线会话消息,指的是用户未在第一终端设备上登录目标账户,而是在第二终端设备上登录目标账户,并且在第二终端设备上的目标账户所产生的在线会话消息,不过,此时由于用户未在第一终端设备上登录,因此对于第一终端设备而言,上述第二在线会话消息为离线会话消息。
S02:所述服务端对所述第二在线会话消息进行消息格式及合法性校验;
服务端在接收到所述第二在线会话消息之后,需对第二在线会话消息进行消息格式以及合法性校验,消息格式校验便于后续对消息进行存储归类,而合法性检验,指的是检验该第二在线会话消息是否是目标账户所产生的在线会话消息。
S03:当校验通过后,所述服务端将所述第二在线会话消息作为离线会话消息,并将所述离线会话消息和所述账号标识关联存储到所述消息数据库中,其中,所述消息数据库中每个消息类型对应一张消息历史表。
当校验通过后,所述服务端将所述第二在线会话消息作为离线会话消息,并将所述离线会话消息和所述账号标识关联存储到所述消息数据库中,其中,所述消息数据库中每个消息类型对应一张消息历史表。这样,当用户在第一终端设备登录目标账户时,所述服务端便可通过所述账号标识从消息数据库中,获取所述账号标识对应的目标离线会话消息,并同步给第一终端设备,从而使得之前在第二终端设备上所产生的历史会话消息,同步到第一终端设备上,用户在第一终端设备上也能看到之前的会话记录。
在一实施例中,如图5所示,提供一种消息同步方法,以该方法应用在图1中的第一终端设备为例进行说明,包括如下步骤:
S101:当用户的目标账户在第一终端设备登录时,所述第一终端设备与服务端建立短连接;
第一终端设备指的是手机、平板电脑、PC电脑等设备,该第一终端设备上可以安装有应用程序(APP),用户具有该应用程序相应的目标账户,示例性的,该应用程序可以是指即时通信应用程序,用户通过该第一终端设备,登录应用程序之后,可以与另一方产生会话消息。如利用即时通信应用程序时,用户A通过第一终端设备的通信应用程序,可以向第二终端设备(用户B所持有的终端设备)相应的即时通信应用程序发送实时的会话消息。本发明实施例中,当用户A的目标账户在第一终端设备上的应用程序登录时,第一终端设备会主动与服务端建立短连接。
其中,短连接(short connnection)是相对于长连接而言的概念,指的是在数据传送过程中,只在需要在传输所需的某种数据时,才去建立的连接,所需的某种数据传输完成后,则断开此连接,即每次连接只完成一项业务数据的发送。在本发明实施例中,第一终端设备主动建立的短连接,目的在于获取用户在其他终端设备(第二终端设备)登录相同应用程序时所产生的历史会话消息。
会话消息,可以指的是用户之间发送的交互消息。
S102:所述第一终端设备通过所述短连接向所述服务端发送消息同步请求,其中,所述消息同步请求包含有所述目标账号的账号标识;
当第一终端设备主动与服务端建立短连接之后,第一终端设备向服务端发送消息同步请求,该消息同步请求包含有所述目标账号的账号标识。其中,该账号标识为唯一标识用户的目标账号的标识,对于服务端而言,服务端可以接收到所述第一终端设备通过所述短连接发送的消息同步请求。
S103:所述第一终端设备通过所述短连接,接收所述服务端根据所述账号标识所反馈的目标离线会话消息,其中,所述目标离线会话消息为所述用户通过第二终端设备登录所述目标账号时,所述目标账号所产生的历史会话消息;
如前述,第二终端设备是独立于第二终端设备的另一个终端设备,例如第一终端设备是手机A,第二终端设备是手机B;或者第一终端设备是手机,而第二终端设备是平板电脑。在实现上述步骤S10之前,用户可以在第二终端设备上,通过目标账户登录应用程序,并且会产生会话消息。该消息数据库中,用于存储用户在其他终端设备登录该目标账号时产生的会话消息,并且所存储的会话消息通过目标账号关联存储,假设此时用户并未登录第一终端设备之前,在消息数据库中存储第二终端设备产生的会话消息,对于第一终端设备而言,便是离线会话消息。本发明实施例中,服务端在接收到所述第一终端设备通过所述短连接发送的消息同步请求之后,便可,通过所述账号标识从消息数据库中,获取所述账号标识对应的目标离线会话消息。
对于第一终端设备而言,所述第一终端设备通过所述短连接,接收所述服务端根据所述账号标识所反馈的目标离线会话消息,也就是说,在用户在第一终端设备上登录目标账号之后,便可使得第一终端设备同步到,用户在第二终端设备上登录目标账号时所产生的历史离线会话消息,实现将之前在第二终端设备上的会话消息同步过来。
S104:所述第一终端设备释放所述短连接。
在同步之后,所述第一终端设备释放所述短连接,可见,本发明提供了一种消息同步方法,当用户登录第一终端设备时,第一终端设备会主动与服务端建立短连接,随后发送消息同步请求,所述服务端接收所述第一终端设备通过所述短连接发送的消息同步请求,其中,所述消息同步请求包含有所述目标账号的账号标识;所述服务端通过所述账号标识从消息数据库中,获取所述账号标识对应的目标离线会话消息,其中,所述目标离线会话消息为所述用户通过第二终端设备登录所述目标账号时,所述目标账号所产生的历史会话消息;所述服务端将所述目标离线会话消息反馈给所述第一终端,可见,本发明中以短连接为基础由终端设备主动拉取用户离线消息,可以有效地减少离线会话消息过多时,由服务端长连接主动推送带来的终端设备处理压力。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
在一实施例中,提供一种服务端,该服务端与上述实施例中消息同步方法中的服务端一一对应。如图6所示,该服务端包括建立模块101、接收模块102、获取模块103和发送模块104。各功能模块详细说明如下:
建立模块,用于与第一终端设备建立短连接,其中,所述短连接为用户的目标账户在所述第一终端设备登录时,所述第一终端设备主动建立的;
接收模块,用于接收所述第一终端设备通过所述短连接发送的消息同步请求,其中,所述消息同步请求包含有所述目标账号的账号标识;
获取模块,用于通过所述账号标识从消息数据库中,获取所述账号标识对应的目标离线会话消息,其中,所述目标离线会话消息为所述用户通过第二终端设备登录所述目标账号时,所述目标账号所产生的历史会话消息;
发送模块,用于将所述目标离线会话消息反馈给所述第一终端。
在一实施例中,所述服务端还包括判断模块;
所述建立模块,用于建立与所述第一终端设备的长连接;
所述获取模块,还用于通过所述长连接,监听并获取所述目标账户的在所述第一终端设备产生的第一在线会话消息;
判断模块,用于根据所述目标账户的账户标识,判断当前登录有所述目标账户的其他关联设备;
所述发送模块,还用于分别将所述第一在线会话消息对应同步给所述其他关联设备。
在一实施例中,所述服务端还包括检验模块和存储模块;
所述接收模块,还英语接收所述第二终端设备反馈的第二在线会话消息,其中,所述第二在线会话消息为所述用户通过第二终端设备登录所述目标账号时,所述目标账号所产生的在线会话消息;
检验模块,用于对所述第二在线会话消息进行消息格式及合法性校验;
所述存储模块,用于当校验通过后,所述服务端将所述第二在线会话消息作为离线会话消息,并将所述离线会话消息和所述账号标识关联存储到所述消息数据库中,其中,所述消息数据库中每个消息类型对应一张消息历史表。
在一实施例中,提供一种第一终端设备,该第一终端设备与上述实施例中消息同步方法中的第一终端设备一一对应。如图7所示,该第一终端设备包括建立模块201、发送模块202、接收模块203和释放模块204。各功能模块详细说明如下:
建立模块,用于与服务端建立短连接;
发送模块,用于通过所述短连接向所述服务端发送消息同步请求,其中,所述消息同步请求包含有所述目标账号的账号标识;
接收模块,用于通过所述短连接,接收所述服务端根据所述账号标识所反馈的目标离线会话消息,其中,所述目标离线会话消息为所述用户通过第二终端设备登录所述目标账号时,所述目标账号所产生的历史会话消息;
释放模块,用于释放所述短连接。
关于服务端的具体限定可以参见上文中对于消息同步方法中服务端的限定,在此不再赘述。同理,关于第一终端设备的具体限定可以参见上文中对于消息同步方法中第一终端设备的限定,在此不再赘述。
上述服务端或第一终端设备中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务端,其内部结构图可以如图8所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储会话消息。该计算机设备的网络接口用于与外部的第一终端设备或其他关联终端设备通过网络连接通信。该计算机程序被处理器执行时以实现一种消息同步方法中服务端侧的功能或步骤。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是第一终端设备,其内部结构图可以如图9所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部服务端通过网络连接通信。该计算机程序被处理器执行时以实现一种消息同步方法中第一终端设备侧的功能或步骤。
在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:
与第一终端设备建立短连接,其中,所述短连接为用户的目标账户在所述第一终端设备登录时,所述第一终端设备主动建立的;
接收所述第一终端设备通过所述短连接发送的消息同步请求,其中,所述消息同步请求包含有所述目标账号的账号标识;
通过所述账号标识从消息数据库中,获取所述账号标识对应的目标离线会话消息,其中,所述目标离线会话消息为所述用户通过第二终端设备登录所述目标账号时,所述目标账号所产生的历史会话消息;
将所述目标离线会话消息反馈给所述第一终端设备。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
与第一终端设备建立短连接,其中,所述短连接为用户的目标账户在所述第一终端设备登录时,所述第一终端设备主动建立的;
接收所述第一终端设备通过所述短连接发送的消息同步请求,其中,所述消息同步请求包含有所述目标账号的账号标识;
通过所述账号标识从消息数据库中,获取所述账号标识对应的目标离线会话消息,其中,所述目标离线会话消息为所述用户通过第二终端设备登录所述目标账号时,所述目标账号所产生的历史会话消息;
将所述目标离线会话消息反馈给所述第一终端设备。
在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:
当用户的目标账户在第一终端设备登录时,与服务端建立短连接;
通过所述短连接向所述服务端发送消息同步请求,其中,所述消息同步请求包含有所述目标账号的账号标识;
通过所述短连接,接收所述服务端根据所述账号标识所反馈的目标离线会话消息,其中,所述目标离线会话消息为所述用户通过第二终端设备登录所述目标账号时,所述目标账号所产生的历史会话消息;
释放所述短连接。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
当用户的目标账户在第一终端设备登录时,与服务端建立短连接;
通过所述短连接向所述服务端发送消息同步请求,其中,所述消息同步请求包含有所述目标账号的账号标识;
通过所述短连接,接收所述服务端根据所述账号标识所反馈的目标离线会话消息,其中,所述目标离线会话消息为所述用户通过第二终端设备登录所述目标账号时,所述目标账号所产生的历史会话消息;
释放所述短连接。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。
以上所述实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。
Claims (10)
1.一种消息同步方法,其特征在于,包括:
服务端与第一终端设备建立短连接,其中,所述短连接为用户的目标账户在所述第一终端设备登录时,所述第一终端设备主动建立的;
所述服务端接收所述第一终端设备通过所述短连接发送的消息同步请求,其中,所述消息同步请求包含有所述目标账号的账号标识;
所述服务端通过所述账号标识从消息数据库中,获取所述账号标识对应的目标离线会话消息,其中,所述目标离线会话消息为所述用户通过第二终端设备登录所述目标账号时,所述目标账号所产生的历史会话消息;
所述服务端将所述目标离线会话消息反馈给所述第一终端设备。
2.如权利要求1所述的消息同步方法,其特征在于,当用户的目标账户在所述第一终端设备登录后,所述方法还包括:
所述服务端建立与所述第一终端设备的长连接;
所述服务端通过所述长连接,监听并获取所述目标账户的在所述第一终端设备产生的第一在线会话消息;
所述服务端根据所述目标账户的账户标识,判断当前登录有所述目标账户的其他关联设备;
所述服务端分别将所述第一在线会话消息对应同步给所述其他关联设备。
3.如权利要求1所述的消息同步方法,其特征在于,所述服务端通过所述账号标识从消息数据库中,获取所述账号标识对应的目标离线会话消息之前,所述方法还包括:
所述服务端接收所述第二终端设备反馈的第二在线会话消息,其中,所述第二在线会话消息为所述用户通过第二终端设备登录所述目标账号时,所述目标账号所产生的在线会话消息;
所述服务端对所述第二在线会话消息进行消息格式及合法性校验;
当校验通过后,所述服务端将所述第二在线会话消息作为离线会话消息,并将所述离线会话消息和所述账号标识关联存储到所述消息数据库中,其中,所述消息数据库中每个消息类型对应一张消息历史表。
4.一种消息同步方法,其特征在于,包括:
当用户的目标账户在第一终端设备登录时,所述第一终端设备与服务端建立短连接;
所述第一终端设备通过所述短连接向所述服务端发送消息同步请求,其中,所述消息同步请求包含有所述目标账号的账号标识;
所述第一终端设备通过所述短连接,接收所述服务端根据所述账号标识所反馈的目标离线会话消息,其中,所述目标离线会话消息为所述用户通过第二终端设备登录所述目标账号时,所述目标账号所产生的历史会话消息;
所述第一终端设备释放所述短连接。
5.一种服务端,其特征在于,包括:
建立模块,用于与第一终端设备建立短连接,其中,所述短连接为用户的目标账户在所述第一终端设备登录时,所述第一终端设备主动建立的;
接收模块,用于接收所述第一终端设备通过所述短连接发送的消息同步请求,其中,所述消息同步请求包含有所述目标账号的账号标识;
获取模块,用于通过所述账号标识从消息数据库中,获取所述账号标识对应的目标离线会话消息,其中,所述目标离线会话消息为所述用户通过第二终端设备登录所述目标账号时,所述目标账号所产生的历史会话消息;
发送模块,用于将所述目标离线会话消息反馈给所述第一终端。
6.如权利要求5所述的服务端,其特征在于,所述服务端还包括判断模块;
所述建立模块,用于当用户的目标账户在第一终端设备登录时建立与所述第一终端设备的长连接;
所述获取模块,还用于通过所述长连接,监听并获取所述目标账户的在所述第一终端设备产生的第一在线会话消息;
判断模块,用于根据所述目标账户的账户标识,判断当前登录有所述目标账户的其他关联设备;
所述发送模块,还用于分别将所述第一在线会话消息对应同步给所述其他关联设备。
7.如权利要求5所述的服务端,其特征在于,所述服务端还包括检验模块和存储模块;
所述接收模块,还英语接收所述第二终端设备反馈的第二在线会话消息,其中,所述第二在线会话消息为所述用户通过第二终端设备登录所述目标账号时,所述目标账号所产生的在线会话消息;
检验模块,用于对所述第二在线会话消息进行消息格式及合法性校验;
所述存储模块,用于当校验通过后,所述服务端将所述第二在线会话消息作为离线会话消息,并将所述离线会话消息和所述账号标识关联存储到所述消息数据库中,其中,所述消息数据库中每个消息类型对应一张消息历史表。
8.一种第一终端设备,其特征在于,包括:
建立模块,用于当用户的目标账户在第一终端设备登录时,与服务端建立短连接;
发送模块,用于通过所述短连接向所述服务端发送消息同步请求,其中,所述消息同步请求包含有所述目标账号的账号标识;
接收模块,用于通过所述短连接,接收所述服务端根据所述账号标识所反馈的目标离线会话消息,其中,所述目标离线会话消息为所述用户通过第二终端设备登录所述目标账号时,所述目标账号所产生的历史会话消息;
释放模块,用于释放所述短连接。
9.一种消息同步系统,其特征在于,所述系统包括如权利要求8所述的第一终端设备和如权利要求5-7任一项所述的服务端。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至3任一项或4所述消息同步方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011496647.XA CN112637314A (zh) | 2020-12-17 | 2020-12-17 | 消息同步方法、系统、第一终端设备、服务端和介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011496647.XA CN112637314A (zh) | 2020-12-17 | 2020-12-17 | 消息同步方法、系统、第一终端设备、服务端和介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112637314A true CN112637314A (zh) | 2021-04-09 |
Family
ID=75316649
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011496647.XA Pending CN112637314A (zh) | 2020-12-17 | 2020-12-17 | 消息同步方法、系统、第一终端设备、服务端和介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112637314A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115002137A (zh) * | 2022-08-03 | 2022-09-02 | 广州此声网络科技有限公司 | 离线消息处理方法、装置、计算机设备和存储介质 |
CN115102918A (zh) * | 2022-06-14 | 2022-09-23 | Oppo广东移动通信有限公司 | 消息同步方法、装置及系统、相关设备及存储介质 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130198296A1 (en) * | 2012-01-31 | 2013-08-01 | Global Relay Communications Inc. | System and Method for Processing Messages in a Messaging Service |
CN103312593A (zh) * | 2013-06-06 | 2013-09-18 | 青岛海信传媒网络技术有限公司 | 一种消息分发系统及方法 |
CN104883292A (zh) * | 2015-04-16 | 2015-09-02 | 江苏中威科技软件系统有限公司 | 实现消息在不同终端漫游的方法及系统 |
CN107257313A (zh) * | 2017-05-16 | 2017-10-17 | 深圳市金立通信设备有限公司 | 一种消息同步方法及终端 |
CN107547484A (zh) * | 2016-06-29 | 2018-01-05 | 上海连尚网络科技有限公司 | 消息获取、推送的方法、设备及系统 |
CN108667899A (zh) * | 2018-03-29 | 2018-10-16 | 挂号网(杭州)科技有限公司 | 多终端消息同步和隔离即时通讯方法及系统 |
CN109451073A (zh) * | 2018-12-29 | 2019-03-08 | 出门问问信息科技有限公司 | 一种多端信息同步提醒方法、系统、设备及存储介质 |
CN110391974A (zh) * | 2019-08-01 | 2019-10-29 | 北京云中融信网络科技有限公司 | 一种消息同步方法、服务端、终端及系统 |
CN110493122A (zh) * | 2019-08-29 | 2019-11-22 | 北京拉勾网络技术有限公司 | 一种会话信息的同步方法、装置、计算设备及存储介质 |
CN110912805A (zh) * | 2019-11-20 | 2020-03-24 | 中移(杭州)信息技术有限公司 | 消息读取状态的同步方法、终端、服务端及系统 |
CN111191178A (zh) * | 2019-12-30 | 2020-05-22 | 广州市百果园网络科技有限公司 | 一种信息推送方法、装置、服务器和存储介质 |
-
2020
- 2020-12-17 CN CN202011496647.XA patent/CN112637314A/zh active Pending
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130198296A1 (en) * | 2012-01-31 | 2013-08-01 | Global Relay Communications Inc. | System and Method for Processing Messages in a Messaging Service |
CN103312593A (zh) * | 2013-06-06 | 2013-09-18 | 青岛海信传媒网络技术有限公司 | 一种消息分发系统及方法 |
CN104883292A (zh) * | 2015-04-16 | 2015-09-02 | 江苏中威科技软件系统有限公司 | 实现消息在不同终端漫游的方法及系统 |
CN107547484A (zh) * | 2016-06-29 | 2018-01-05 | 上海连尚网络科技有限公司 | 消息获取、推送的方法、设备及系统 |
CN107257313A (zh) * | 2017-05-16 | 2017-10-17 | 深圳市金立通信设备有限公司 | 一种消息同步方法及终端 |
CN108667899A (zh) * | 2018-03-29 | 2018-10-16 | 挂号网(杭州)科技有限公司 | 多终端消息同步和隔离即时通讯方法及系统 |
CN109451073A (zh) * | 2018-12-29 | 2019-03-08 | 出门问问信息科技有限公司 | 一种多端信息同步提醒方法、系统、设备及存储介质 |
CN110391974A (zh) * | 2019-08-01 | 2019-10-29 | 北京云中融信网络科技有限公司 | 一种消息同步方法、服务端、终端及系统 |
CN110493122A (zh) * | 2019-08-29 | 2019-11-22 | 北京拉勾网络技术有限公司 | 一种会话信息的同步方法、装置、计算设备及存储介质 |
CN110912805A (zh) * | 2019-11-20 | 2020-03-24 | 中移(杭州)信息技术有限公司 | 消息读取状态的同步方法、终端、服务端及系统 |
CN111191178A (zh) * | 2019-12-30 | 2020-05-22 | 广州市百果园网络科技有限公司 | 一种信息推送方法、装置、服务器和存储介质 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115102918A (zh) * | 2022-06-14 | 2022-09-23 | Oppo广东移动通信有限公司 | 消息同步方法、装置及系统、相关设备及存储介质 |
CN115002137A (zh) * | 2022-08-03 | 2022-09-02 | 广州此声网络科技有限公司 | 离线消息处理方法、装置、计算机设备和存储介质 |
CN115002137B (zh) * | 2022-08-03 | 2022-10-21 | 广州此声网络科技有限公司 | 离线消息处理方法、装置、计算机设备和存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110719318B (zh) | 消息处理方法和系统 | |
CN113568884B (zh) | 一种文件管理方法、装置、电子设备及存储介质 | |
EP3258653A1 (en) | Message pushing method and device | |
CN108052474B (zh) | 数据格式转换方法、装置、设备及计算机可读存储介质 | |
CN112637314A (zh) | 消息同步方法、系统、第一终端设备、服务端和介质 | |
US10750570B2 (en) | Call termination method, application processor, and modem | |
CN111343236A (zh) | 服务端与客户端进行通讯的方法、装置、通讯系统 | |
CN112333263A (zh) | 基于超文本传输协议的截屏处理方法、装置及存储介质 | |
CN110581976B (zh) | 远程会议方法、装置、计算机系统及可读存储介质 | |
CN109088918B (zh) | 一种交互方法、客户端设备及服务端设备 | |
CN108021459B (zh) | 跨进程发送打点日志的方法及装置 | |
CN114884805B (zh) | 数据传输方法、装置、终端及存储介质 | |
CN108289165B (zh) | 一种基于手机控制相机的实现方法、装置及终端设备 | |
CN107800754B (zh) | 数据传输任务处理、数据传输任务监控方法和装置 | |
CN112800604B (zh) | 应用于工业检测的仿真方法、装置、设备及存储介质 | |
CN108965426B (zh) | 音频系统的数据处理方法、装置、计算机设备和存储介质 | |
CN112667182A (zh) | 基于投屏的会议服务数据处理方法、终端、系统及介质 | |
CN105392198A (zh) | 网络通信方法及装置 | |
CN112769824B (zh) | 一种信息传输状态更新方法、终端、装置及存储介质 | |
CN114546961B (zh) | 文件监测方法、装置、介质、设备和程序产品 | |
CN116828022B (zh) | 管理与服务器的连接关系的方法、装置、设备和介质 | |
CN104105125B (zh) | 一种业务处理方法、装置及系统 | |
CN117170983B (zh) | 容灾切换方法、系统、计算机设备及存储介质 | |
CN113641623B (zh) | 信息交互方法和装置、框式网络设备、计算机可读存储介质 | |
EP2804404A1 (en) | Method of installing data in a device comprising a host machine and a secure element |
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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20210409 |