CN115002137B - 离线消息处理方法、装置、计算机设备和存储介质 - Google Patents
离线消息处理方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN115002137B CN115002137B CN202210924962.0A CN202210924962A CN115002137B CN 115002137 B CN115002137 B CN 115002137B CN 202210924962 A CN202210924962 A CN 202210924962A CN 115002137 B CN115002137 B CN 115002137B
- Authority
- CN
- China
- Prior art keywords
- session
- offline
- message
- time
- synchronization
- 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
- 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
- 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
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer And Data Communications (AREA)
Abstract
本申请涉及一种离线消息处理方法、装置、计算机设备、存储介质和计算机程序产品。该方法包括:向服务器发送离线消息同步请求,离线消息同步请求携带有同步时间;接收服务器反馈的初始会话对应的离线消息及同步状态,初始会话包括会话时间满足要求的第一预设数量的第一会话及除第一会话外存在新的离线消息的第二会话;离线消息包括根据同步时间查询会话列表所获取的第一会话的第二预设数量的离线消息及第二会话的第三预设数量的离线消息;根据各同步状态及已同步的离线消息的时间生成会话标签;接收目标会话的展示指令;获取目标会话对应的会话标签,将会话标签发送至服务器;接收并显示服务器反馈的会话消息。采用本方法能够减少同步时间。
Description
技术领域
本申请涉及通信技术领域,特别是涉及一种离线消息处理方法、装置、计算机设备、存储介质和计算机程序产品。
背景技术
随着智能手机的普及和网络速度和稳定性的大幅度提升,通过IM(即时通讯)进行沟通已经越来越普遍,而通过IM即时通讯进行沟通不仅相对于电话或者短信近乎于免费,而且生活或工作中大部分的好友都使用同一种即时通讯软件更加降低了沟通成本,在一个APP上即可完成和大部分人的沟通。
但是随着对即时通讯的依赖越来越高,长时间不在线积累的离线消息也会越来越多,在APP唤起时需要花费较多的时间才能同步完成。
发明内容
基于此,有必要针对上述技术问题,提供一种能够减少同步时间的离线消息处理方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。
第一方面,本申请提供一种离线消息处理方法,应用于客户端,所述方法包括:
向服务器发送离线消息同步请求,所述离线消息同步请求携带有同步时间;
接收所述服务器反馈的初始会话对应的离线消息以及同步状态,所述初始会话包括会话时间满足要求的第一预设数量的第一会话,以及除所述第一会话外存在新的离线消息的第二会话;所述离线消息包括根据所述同步时间查询会话列表所获取的所述第一会话的第二预设数量的离线消息以及第二会话的第三预设数量的离线消息;
根据各所述同步状态以及已同步的离线消息的时间生成会话标签;
接收目标会话的展示指令;
获取所述目标会话对应的会话标签,并将所述会话标签发送至所述服务器;
接收并显示所述服务器反馈的根据所述会话标签查询得到的会话消息。
在其中一个实施例中,所述向服务器发送离线消息同步请求,包括:
获取客户端的显示属性,所述显示属性包括一页所显示的会话的第一预设数量以及一页所显示的消息的第二预设数量;
根据所述显示属性生成离线消息同步请求,并向服务器发送离线消息同步请求。
在其中一个实施例中,所述根据各所述同步状态以及已同步的离线消息的时间生成会话标签,包括:
当所述同步状态为未同步完成时,获取本次同步的离线消息的开始时间和结束时间;
根据所述开始时间和结束时间更新所述初始会话对应的会话标签;
所述将所述会话标签发送至所述服务器,包括:
将所述会话标签中各所述开始时间和结束时间发送至所述服务器,以使得所述服务器根据所述会话标签中各所述开始时间和结束时间确定待同步时间,并基于所述待同步时间查询会话消息。
在其中一个实施例中,所述接收所述服务器反馈的初始会话对应的离线消息之后,还包括:
根据所述离线消息确定所述初始会话的会话类型;
当所述会话类型属于会话折叠类型时,根据所述会话类型将所述初始会话折叠至对应的会话集合中,并修改所述会话集合的标识。
在其中一个实施例中,所述根据所述离线消息确定所述初始会话的会话类型,包括:
获取会话类型判断规则以及各所述会话类型判断规则的优先级;
按照所述优先级,依次根据所述会话类型判断规则以及所述离线消息确定所述初始会话的会话类型,且所述初始会话的会话类型为根据高优先级的所述会话类型判断规则判断得到的。
第二方面,本申请还提供一种离线消息处理方法,应用于服务器,所述方法包括:
接收客户端发送的离线消息同步请求,所述离线消息同步请求携带有同步时间;
根据所述同步时间确定初始会话,所述初始会话包括会话时间满足要求的第一预设数量的第一会话,以及除所述第一会话外存在新的离线消息的第二会话;
根据所述同步时间查询所述第一会话的第二预设数量的离线消息以及第二会话的第三预设数量消息,并确定各所述初始会话的同步状态;
将所查询到的各所述初始会话的离线消息以及各所述初始会话的同步状态反馈至客户端;
接收所述客户端发送的会话标签,所述会话标签是所述客户端根据各所述同步状态以及已同步的离线消息的时间生成各所述初始会话对应的会话标签;
根据所述会话标签查询到对应的会话消息,并将所查询到的会话消息发送至所述客户端。
在其中一个实施例中,所述方法还包括:
确定所述客户端在第一系统中的第一账户信息;
查询所述第一账户信息对应的第一虚拟账户信息,以及所述第一虚拟账户信息在第二系统中待处理离线消息,所述待处理离线消息是通过第二系统中的第二账户信息与所述第一账户信息之间的消息,所述第二账户信息是所述第一虚拟账户信息关联的第二虚拟账户信息对应的。
第三方面,本申请还提供一种离线消息处理装置,所述装置包括:
第一发送模块,用于向服务器发送离线消息同步请求,所述离线消息同步请求携带有同步时间;
第一接收模块,用于接收所述服务器反馈的初始会话对应的离线消息以及同步状态,所述初始会话包括会话时间满足要求的第一预设数量的第一会话,以及除所述第一会话外存在新的离线消息的第二会话;所述离线消息包括根据所述同步时间查询会话列表所获取的所述第一会话的第二预设数量的离线消息以及第二会话的第三预设数量的离线消息;
会话标签生成模块,用于根据各所述同步状态以及已同步的离线消息的时间生成会话标签;
第二接收模块,用于接收目标会话的展示指令;
第二发送模块,用于获取所述目标会话对应的会话标签,并将所述会话标签发送至所述服务器;
显示模块,用于接收并显示所述服务器反馈的根据所述会话标签查询得到的会话消息。
第四方面,本申请还提供一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述任意一个实施例中所述的方法的步骤。
第五方面,本申请还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任意一个实施例中所述的方法的步骤。
上述离线消息处理方法、装置、计算机设备、存储介质和计算机程序产品,在同步离线消息时,仅同步会话时间满足要求的第一预设数量的第一会话中的第二预设数量的离线消息,以及其他的第二会话中的第三预设数量的离线消息,这样减少了离线消息的同步量,从而减少同步时间,且在同步后生成各个会话的会话标签,这样当接收目标会话的展示指令时,根据会话标签从服务器获取到完整的会话消息,这样一方面可以保证离线消息的同步的完整性,另外一方面大大减少了同步时间。
附图说明
图1为一个实施例中离线消息处理方法的应用环境图;
图2为一个实施例中离线消息处理方法的流程示意图;
图3为一个实施例中的离线消息同步的时序图;
图4为一个实施例中的普通会话列表和打招呼会话列表的示意图;
图5为另一个实施例中离线消息处理方法的流程示意图;
图6为一个实施例中的客户与用户沟通的场景的示意图;
图7为一个实施例中的跨APP的消息沟通的示意图;
图8为一个实施例中离线消息处理装置的结构框图;
图9为另一个实施例中离线消息处理装置的结构框图;
图10为一个实施例中计算机设备的内部结构图;
图11为另一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请实施例提供的离线消息处理方法,可以应用于如图1所示的应用环境中。其中,终端102通过网络与服务器104进行通信。数据存储系统可以存储服务器104需要处理的数据。数据存储系统可以集成在服务器104上,也可以放在云上或其他网络服务器上。其中终端102中安装有客户端。
其中终端102可以向服务器发送离线消息同步请求,该离线消息同步请求携带有同步时间,这样服务器104根据同步时间确定初始会话,初始会话包括会话时间满足要求的第一预设数量的第一会话,以及除第一会话外存在新的离线消息的第二会话;根据同步时间查询第一会话的第二预设数量的离线消息以及第二会话的第三预设数量消息,并确定各初始会话的同步状态;将所查询到的各初始会话的离线消息以及各初始会话的同步状态反馈至终端102中的客户端,终端102根据各同步状态以及已同步的离线消息的时间生成会话标签;接收目标会话的展示指令;获取目标会话对应的会话标签,并将会话标签发送至服务器104,这样服务器104根据会话标签查询到对应的会话消息,并将所查询到的会话消息发送至终端102,从而终端102显示对应的完整的会话消息。
这样在同步离线消息时,仅同步会话时间满足要求的第一预设数量的第一会话中的第二预设数量的离线消息,以及其他的第二会话中的第三预设数量的离线消息,这样减少了离线消息的同步量,从而减少同步时间,且在同步后生成各个会话的会话标签,这样当接收目标会话的展示指令时,根据会话标签从服务器获取到完整的会话消息,这样一方面可以保证离线消息的同步的完整性,另外一方面大大减少了同步时间。
其中,终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑、物联网设备和便携式可穿戴设备,物联网设备可为智能音箱、智能电视、智能空调、智能车载设备等。便携式可穿戴设备可为智能手表、智能手环、头戴设备等。服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
在一个实施例中,如图2所示,提供了一种离线消息处理方法,以该方法应用于图1中的终端中的客户端为例进行说明,包括以下步骤:
S202:向服务器发送离线消息同步请求,离线消息同步请求携带有同步时间。
具体地,离线消息是客户端在离线期间产生的会话的消息。离线消息同步是将上述离线消息从服务器同步到客户端。离线数据的同步,也即客户端向服务器发送离线消息同步请求的时机可以是在客户端启动时。其中离线数据的数量很多时,同步离线数据的时间就会耗时较长,导致客户端启动时间长,或者长时间不能操作,为此,为了保证数据完整性的同时,尽可能缩小同步时间是本实施例的主要目的。
其中离线消息同步请求携带有同步时间,该同步时间是指客户端本地所存储的离线消息的最新时间,也即需要同步该同步时间之后的离线消息。
S204:接收服务器反馈的初始会话对应的离线消息以及同步状态,初始会话包括会话时间满足要求的第一预设数量的第一会话,以及除第一会话外存在新的离线消息的第二会话;离线消息包括根据同步时间查询会话列表所获取的第一会话的第二预设数量的离线消息以及第二会话的第三预设数量的离线消息。
具体地,离线消息是初始会话对应的,初始会话是在同步时间之后存在消息更新的会话,该初始会话包括两部分,一部分是需要通过第二预设数量的离线消息的第一会话,另外一部分是需要同步第三预设数量的第二会话。
其中第一会话可以是最新的消息所对应的第一预设数量的会话,在其他的实施例中,第一会话还可以是用户预先设置的,优先级较高的会话,例如置顶设置的会话,或者是预先设置的需要特别关注的会话。将存在消息更新的会话去掉第一预设数量的第一会话,剩下的则为第二会话。
因此在实际应用中,服务器在接收到离线消息同步请求后,查询最新的消息,并确定最新的消息对应的初始会话,若是该初始会话为用户预先设置的第一会话,则按照最新消息的由晚及近的顺序,依次读取第一预设数量的第一会话,并获取该些第一会话中第二预设数量的离线消息,该第二预设数量的离线消息也是由晚及近的顺序获取。对于剩下的会话,则称为第二会话,对于第二会话仅获取到第三预设数量的离线消息即可,其中,可选地,第三预设数量为1,也即仅同步第二会话中的最近的一条消息,在其他的实施例中还可以设置为其他的值。其中需要说明的是,若是第一会话中的离线消息的数量小于第二预设数量,则进行全部同步,否则仅同步由晚及近的第二预设数量的消息。
其中第一预设数量以及第二预设数量可以是根据客户端的显示属性来进行确定的,或者是直接设置会固定值,例如10。显示属性是指客户端的显示的字体的大小等等,由于客户端的显示的字体的大小的不同,其一页所显示的内容的数量也会不同,在本实施例中,仅需要同步一页所显示的内容即可。
其中同步状态是指会话的同步状态,也即该会话中的离线消息是否完全同步,若是均已同步至客户端,则同步状态为同步完成,否则同步状态为未同步完成。其中需要说明的一点是,离线消息的同步状态不仅仅是需要参考当前次同步的消息,还需要根据历史消息的同步状态来进行确定,例如上一次未同步完成,当前次虽然同步完成,但是同步状态仍为未同步完成。
最后服务器将同步状态以及上述初始会话的离线消息发送至客户端。
S206:根据各同步状态以及已同步的离线消息的时间生成会话标签。
具体地,会话标签是客户端侧生成的,客户端将接收到的离线消息同步到客户端本地的会话列表,然后将离线消息记录到客户端本地数据可,若是会话没有同步完成,则在客户端的数据库记录一个会话标签,该会话标签包括客户端会话最大消息发送时间、结束时间,以及同步到的消息中最小的消息发送时间,也即记录了所同步的消息的范围,从而可以确定没有同步的消息的范围。
S208:接收目标会话的展示指令。
S210:获取目标会话对应的会话标签,并将会话标签发送至服务器。
S212:接收并显示服务器反馈的根据会话标签查询得到的会话消息。
具体地,会话的展示指令是指用户点击了该会话,并进入了该会话的聊天界面,从而客户端无感地去服务器获取到该会话对应的会话消息,以保证会话消息的完整性。
其中,客户端接收到展示指令后,查询该会话是否存在会话标签,若是存在会话标签,则将会话标签作为参数发送至服务器,以请求历史的会话消息,服务器接收到请求后,分别查询会话标签中各个时间段的会话消息,并返回给客户端。
其中可选地,服务器在查询时,若是查询到的会话消息大于分页数量,则停止查询,并标记查询未结束,将查询结果反馈给客户端,客户端将查询结果保存至本地数据库,然后根据查询结果修改会话标签,此外,若查询未结束,则将修改后的会话标签继续发送至服务器,以使得服务器继续查询会话消息,直至该会话没有会话标签。
此外,可选地,服务器在查询的时候,仍以由晚及近的顺序查询,并反馈。
需要说明的一点是,客户端在离线数据同步过程中,实时收到了新的消息,客户端不会将新的消息展示到屏幕,只是保存到客户端本地数据库,等同步完成后统一展示。若客户端同步失败,则客户端进行多次重试,直至同步成功。若客户端在同步失败的情况下,收到新消息,将新的消息保存到本地数据库,并且展示到屏幕,但是不更新客户端同步开始时间戳,也即上述同步时间。
上述离线消息处理方法,在同步离线消息时,仅同步会话时间满足要求的第一预设数量的第一会话中的第二预设数量的离线消息,以及其他的第二会话中的第三预设数量的离线消息,这样减少了离线消息的同步量,从而减少同步时间,且在同步后生成各个会话的会话标签,这样当接收目标会话的展示指令时,根据会话标签从服务器获取到完整的会话消息,这样一方面可以保证离线消息的同步的完整性,另外一方面大大减少了同步时间。
在其中一个实施例中,向服务器发送离线消息同步请求,包括:获取客户端的显示属性,显示属性包括一页所显示的会话的第一预设数量以及一页所显示的消息的第二预设数量;根据显示属性生成离线消息同步请求,并向服务器发送离线消息同步请求。
具体地,第一预设数量和第二预设数量是根据客户端的显示属性获取的,第一预设数量可以是一页所能显示的最多的会话的数量,第二预设数量是一页所能显示的最多的消息的数量。其中显示属性可以是指显示的字体的大小,这样根据字体的大小来确定上述第一预设数量以及第二预设数量,并将该第一预设数量和第二预设数量随离线消息同步请求发送至服务器,以便于服务器筛选满足要求的初始会话和对应的消息。
上述实施例中,根据客户端的显示属性来确定所要同步的消息的数量,更加智能。
在其中一个实施例中,根据各同步状态以及已同步的离线消息的时间生成会话标签,包括:当同步状态为未同步完成时,获取本次同步的离线消息的开始时间和结束时间;根据开始时间和结束时间更新初始会话对应的会话标签;将会话标签发送至服务器,包括:将会话标签中各开始时间和结束时间发送至服务器,以使得服务器根据会话标签中各开始时间和结束时间确定待同步时间,并基于待同步时间查询会话消息。
具体地,本实施例中主要给出会话标签的更新的方式,其中在多次离线消息的同步过程中,一个会话可能没有会话标签,也即该会话的所有的离线消息都同步至客户端,在其他的实施例中,一个会话可能存在会话标签,从而该会话标签中可以记录每次同步所同步的离线消息的开始时间和结束时间,这样就可以得到该会话对应的未同步的离线消息的开始时间和结束时间,进而服务器可以根据未同步的离线消息的开始时间和结束时间进行离线消息的同步,其中根据未同步的离线消息的开始时间和结束时间可以得到多个未同步时间段,服务器可以按照由晚及近的顺序依次通过多个未同步时间段对应的离线消息,从而保证了离线消息的完整性。
上述实施例中,保证了离线消息的完整性。
为了方便理解,请结合图3所示,图3为一个实施例中的离线消息同步的时序图,在该实施例中,客户端启动,开始向服务器同步离线数据,记录客户端处于同步中的状态,服务器接收到离线数据同步请求后,根据客户端要求同步的起始时间T1,查询T1时间之后的所有新增的会话列表L1。若会话列表数量大于第一预设数量,则取前第一预设数量个第一会话,每个会话做如下处理:查询出最近第二预设数量条消息,查询第一会话是否还有其他未同步到的消息,从而设置会话是否同步完成标记。查询会话未读数等信息。将会话列表L1的其他的会话作为第二会话,并且每个会话取最新的一条消息,并根据消息的条数设置会话未同步完成,服务器将查询到的离线数据返回给客户端。
客户端收到离线同步结果后,将遍历同步到的会话列表,每个会话列表做如下处理:将会话信息记录到客户端本地数据库,若会话没有同步完成,则在客户端数据库记录一个会话标签(开始时间:客户端会话最大消息发送时间;结束时间:同步到的消息中最小的消息发送时间)。将消息列表保存到客户端数据库,客户端离线数据同步完成,设置同步状态为“同步完成”。
历史消息的拉取则是在用户点击进入了私聊页面后,客户端需要显示完整的消息,此时客户端先显示已经同步的本地消息,然后后台查询该会话是否存在会话标签,若是存在将会话标签作为参数发送至服务器,以请求历史的会话消息,服务器接收到请求后,分别查询会话标签中各个时间段的会话消息,并返回给客户端。
其中可选地,服务器在查询时,若是查询到的会话消息大于分页数量,则停止查询,并标记查询未结束,将查询结果反馈给客户端,客户端将查询结果保存至本地数据库,然后根据查询结果修改会话标签,此外,若查询未结束,则将修改后的会话标签继续发送至服务器,以使得服务器继续查询会话消息,直至该会话没有会话标签。
上述实施例中,通过会话和消息结合的方式,在首次同步时,仅同步第一预设数量的会话以及每个第一会话仅同步第二预设数量的消息,每个第二会话仅通过第一预设数量的消息,即便在客户端消息量巨大的情况下,也能有效控制同步的数据量,从而缩短数据同步耗时。
在其中一个实施例中,接收服务器反馈的初始会话对应的离线消息之后,还包括:根据离线消息确定初始会话的会话类型;当会话类型属于会话折叠类型时,根据会话类型将初始会话折叠至对应的会话集合中,并修改会话集合的标识。
在其中一个实施例中,根据离线消息确定初始会话的会话类型,包括:获取会话类型判断规则以及各会话类型判断规则的优先级;按照优先级,依次根据会话类型判断规则以及离线消息确定初始会话的会话类型,且初始会话的会话类型为根据高优先级的会话类型判断规则判断得到的。
其中会话集合是指会话列表中对业务定义的同一类型的会话折叠起来,一个会话集合里面承载了多个子会话,并在折叠的入口处展示最新文案信息;随着子会话的业务规则被打破,也会实时被移出来。这样的目的是为了能让用户的会话列表更整洁清爽。
其中客户端可以根据离线消息确定初始会话的会话类型,例如以打招呼为例,允许用户设置“打招呼”会话折叠,以保护用户免受陌生用户频繁的消息打扰。若用户设置了“打招呼”会话折叠,那么陌生用户给自己发来的消息就会被折叠到“打招呼”集合中,只有当用户自己回复了“招呼会话”,这个“打招呼”的业务规则就被打破,那么对方就会从“打招呼”集合中移出,进入自己正常的会话列表。其中在其他的实施例中,还可以包括“陌生人”、“订阅消息”等集合概念,根据业务设定的规则及规则优先级顺序,将会话动态收入或移出虚拟集合。若一个会话同时符合了多个业务规则,则会根据业务规则优先级高低选定最高优先级的规则进行处理。
具体地,结合图4所示,图4给出了普通会话列表和打招呼会话列表的示意图。为了方便,引入两个参数,分别为:sessionType:指会话的类型,值为0,表示普通的会话;值不为0则表示具体某一个具备折叠能力的虚拟集合,比如值为1001是“打招呼”虚拟集合。parentType:指会话的父目录,值为0表示没有父目录;值不为0则表示需要被放入某一个虚拟集合里的会话,比如值为1001,则表示该会话需要放到“打招呼”这个虚拟集合里。
在实际应用中,服务端和客户端约定通过配置下发的方式将一些可折叠的会话相关sessionType等配置下发至客户端。在实时消息或离线消息中,根据业务设置会话父节点即parentType值,当客户端收到实时消息或离线消息,分析其会话父节点即parentType的值来判断该消息所属会话应当折叠或是移出,从而得到更为简洁的会话列表。
在一个实施例中,如图5所示,提供了一种离线消息处理方法,以该方法应用于图1中的服务器为例进行说明,包括以下步骤:
S502:接收客户端发送的离线消息同步请求,离线消息同步请求携带有同步时间。
具体地,离线消息是客户端在离线期间产生的会话的消息。离线消息同步是将上述离线消息从服务器同步到客户端。离线数据的同步,也即客户端向服务器发送离线消息同步请求的时机可以是在客户端启动时。其中离线数据的数量很多时,同步离线数据的时间就会耗时较长,导致客户端启动时间长,或者长时间不能操作,为此,为了保证数据完整性的同时,尽可能缩小同步时间是本实施例的主要目的。
其中离线消息同步请求携带有同步时间,该同步时间是指客户端本地所存储的离线消息的最新时间,也即需要同步该同步时间之后的离线消息。
S504:根据同步时间确定初始会话,初始会话包括会话时间满足要求的第一预设数量的第一会话,以及除第一会话外存在新的离线消息的第二会话。
S506:根据同步时间查询第一会话的第二预设数量的离线消息以及第二会话的第三预设数量消息,并确定各初始会话的同步状态。
S508:将所查询到的各初始会话的离线消息以及各初始会话的同步状态反馈至客户端。
具体地,离线消息是初始会话对应的,初始会话是在同步时间之后存在消息更新的会话,该初始会话包括两部分,一部分是需要通过第二预设数量的离线消息的第一会话,另外一部分是需要同步第三预设数量的第二会话。
其中第一会话可以是最新的消息所对应的第一预设数量的会话,在其他的实施例中,第一会话还可以是用户预先设置的,优先级较高的会话,例如置顶设置的会话,或者是预先设置的需要特别关注的会话。将存在消息更新的会话去掉第一预设数量的第一会话,剩下的则为第二会话。
因此在实际应用中,服务器在接收到离线消息同步请求后,查询最新的消息,并确定最新的消息对应的初始会话,若是该初始会话为用户预先设置的第一会话,则按照最新消息的由晚及近的顺序,依次读取第一预设数量的第一会话,并获取该些第一会话中第二预设数量的离线消息,该第二预设数量的离线消息也是由晚及近的顺序获取。对于剩下的会话,则称为第二会话,对于第二会话仅获取到第三预设数量的离线消息即可,其中,可选地,第三预设数量为1,也即仅同步第二会话中的最近的一条消息,在其他的实施例中还可以设置为其他的值。其中需要说明的是,若是第一会话中的离线消息的数量小于第二预设数量,则进行全部同步,否则仅同步由晚及近的第二预设数量的消息。
其中第一预设数量以及第二预设数量可以是根据客户端的显示属性来进行确定的,或者是直接设置会固定值,例如10。显示属性是指客户端的显示的字体的大小等等,由于客户端的显示的字体的大小的不同,其一页所显示的内容的数量也会不同,在本实施例中,仅需要同步一页所显示的内容即可。
其中同步状态是指会话的同步状态,也即该会话中的离线消息是否完全同步,若是均已同步至客户端,则同步状态为同步完成,否则同步状态为未同步完成。其中需要说明的一点是,离线消息的同步状态不仅仅是需要参考当前次同步的消息,还需要根据历史消息的同步状态来进行确定,例如上一次未同步完成,当前次虽然同步完成,但是同步状态仍为未同步完成。
最后服务器将同步状态以及上述初始会话的离线消息发送至客户端。
S510:接收客户端发送的会话标签,会话标签是客户端根据各同步状态以及已同步的离线消息的时间生成各初始会话对应的会话标签。
S512:根据会话标签查询到对应的会话消息,并将所查询到的会话消息发送至客户端。
具体地,会话的展示指令是指用户点击了该会话,并进入了该会话的聊天界面,从而客户端无感地去服务器获取到该会话对应的会话消息,以保证会话消息的完整性。
其中,客户端接收到展示指令后,查询该会话是否存在会话标签,若是存在会话标签,则将会话标签作为参数发送至服务器,以请求历史的会话消息,服务器接收到请求后,分别查询会话标签中各个时间段的会话消息,并返回给客户端。
其中可选地,服务器在查询时,若是查询到的会话消息大于分页数量,则停止查询,并标记查询未结束,将查询结果反馈给客户端,客户端将查询结果保存至本地数据库,然后根据查询结果修改会话标签,此外,若查询未结束,则将修改后的会话标签继续发送至服务器,以使得服务器继续查询会话消息,直至该会话没有会话标签。
此外,可选地,服务器在查询的时候,仍以由晚及近的顺序查询,并反馈。
需要说明的一点是,客户端在离线数据同步过程中,实时收到了新的消息,客户端不会将新的消息展示到屏幕,只是保存到客户端本地数据库,等同步完成后统一展示。若客户端同步失败,则客户端进行多次重试,直至同步成功。若客户端在同步失败的情况下,收到新消息,将新的消息保存到本地数据库,并且展示到屏幕,但是不更新客户端同步开始时间戳,也即上述同步时间。
上述离线消息处理方法,在同步离线消息时,仅同步会话时间满足要求的第一预设数量的第一会话中的第二预设数量的离线消息,以及其他的第二会话中的第三预设数量的离线消息,这样减少了离线消息的同步量,从而减少同步时间,且在同步后生成各个会话的会话标签,这样当接收目标会话的展示指令时,根据会话标签从服务器获取到完整的会话消息,这样一方面可以保证离线消息的同步的完整性,另外一方面大大减少了同步时间。
其中需要说明的是,对于会话集合以及离线消息同步的其他的内容可以参见客户端侧的描述,在此不再赘述。
在其中一个实施例中,上述离线消息同步方法还包括:确定客户端在第一系统中的第一账户信息;查询第一账户信息对应的第一虚拟账户信息,以及第一虚拟账户信息在第二系统中待处理离线消息,待处理离线消息是通过第二系统中的第二账户信息与第一账户信息之间的消息,第二账户信息是第一虚拟账户信息关联的第二虚拟账户信息对应的。
其中为了,方便理解以客户与用户沟通的场景为例进行说明,具体结合图6,一般客服系统只有一个入口,所有的用户都通过一个入口与客服工作人员进行信息交流,也就是说对于所有用户来说客服都是同一个人,但实际上客服工作人员可能不止一个。实际上对外暴露的客服就是一个虚拟账号,所有用户都是跟这一个虚拟账号进项聊天,然后客服后台将用户与实际的工作人员进行绑定,当收到“客服”账号相关的消息时,则查询绑定关系,从而找到实际的消息收发账号,再进行消息发送。
具体地,本实施例中主要是为了实现两个系统中的账户的详细互通,具体结合图7所示,例如APP1内的用户,需要与APP2内的用户进行消息互通假定发送真实账号为F1,虚拟账号为F10;接收方真实账号为T1,虚拟账号为T10,在APP1内生成APP2真实账号T1的虚拟账号T10信息;APP1内用户F1发消息给虚拟账号T10时,通过虚拟账号关联到APP2的真实用户账号T1;在APP2内查询发送方F1关联的虚拟账号F10(不存在时创建);在APP2内用发送方的虚拟账号F10给APP2内的真实接收方账号T1发送消息。
上述实施例中,引入虚拟账号的概念,在不改变一个APP通信系统的情况下解决了跨APP消息互通的问题。
应该理解的是,虽然如上的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的离线消息处理方法的离线消息处理装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个离线消息处理装置实施例中的具体限定可以参见上文中对于离线消息处理方法的限定,在此不再赘述。
在一个实施例中,如图8所示,提供了一种离线消息处理装置,包括:第一发送模块801、第一接收模块802、会话标签生成模块803、第二接收模块804、第二发送模块805和显示模块806,其中:
第一发送模块801,用于向服务器发送离线消息同步请求,离线消息同步请求携带有同步时间;
第一接收模块802,用于接收服务器反馈的初始会话对应的离线消息以及同步状态,初始会话包括会话时间满足要求的第一预设数量的第一会话,以及除第一会话外存在新的离线消息的第二会话;离线消息包括根据同步时间查询会话列表所获取的第一会话的第二预设数量的离线消息以及第二会话的第三预设数量的离线消息;
会话标签生成模块803,用于根据各同步状态以及已同步的离线消息的时间生成会话标签;
第二接收模块804,用于接收目标会话的展示指令;
第二发送模块805,用于获取目标会话对应的会话标签,并将会话标签发送至服务器;
显示模块806,用于接收并显示服务器反馈的根据会话标签查询得到的会话消息。
在其中一个实施例中,上述第一发送模块801包括:
显示属性获取单元,用于获取客户端的显示属性,显示属性包括一页所显示的会话的第一预设数量以及一页所显示的消息的第二预设数量;
第一发送单元,用于根据显示属性生成离线消息同步请求,并向服务器发送离线消息同步请求。
在其中一个实施例中,上述会话标签生成模块803包括:
时间获取单元,用于当同步状态为未同步完成时,获取本次同步的离线消息的开始时间和结束时间;
会话标签生成单元,用于根据开始时间和结束时间更新初始会话对应的会话标签;
上述的第二发送模块805还用于将会话标签中各开始时间和结束时间发送至服务器,以使得服务器根据会话标签中各开始时间和结束时间确定待同步时间,并基于待同步时间查询会话消息。
在其中一个实施例中,上述离线消息处理装置还包括:
会话类型确定模块,用于根据离线消息确定初始会话的会话类型;
折叠模块,用于当会话类型属于会话折叠类型时,根据会话类型将初始会话折叠至对应的会话集合中,并修改会话集合的标识。
在其中一个实施例中,上述会话类型确定模块包括:
优先级获取单元,用于获取会话类型判断规则以及各会话类型判断规则的优先级;
会话类型确定单元,用于按照优先级,依次根据会话类型判断规则以及离线消息确定初始会话的会话类型,且初始会话的会话类型为根据高优先级的会话类型判断规则判断得到的。
在一个实施例中,如图9所示,提供了一种离线消息处理装置,包括:第三接收模块901、初始会话确定模块902、同步数量确定模块903、第三发送模块904、第四接收模块905和第四发送模块906,其中:
第三接收模块901,用于接收客户端发送的离线消息同步请求,离线消息同步请求携带有同步时间;
初始会话确定模块902,用于根据同步时间确定初始会话,初始会话包括会话时间满足要求的第一预设数量的第一会话,以及除第一会话外存在新的离线消息的第二会话;
同步数量确定模块903,用于根据同步时间查询第一会话的第二预设数量的离线消息以及第二会话的第三预设数量消息,并确定各初始会话的同步状态;
第三发送模块904,用于将所查询到的各初始会话的离线消息以及各初始会话的同步状态反馈至客户端;
第四接收模块905,用于接收客户端发送的会话标签,会话标签是客户端根据各同步状态以及已同步的离线消息的时间生成各初始会话对应的会话标签;
第四发送模块906,用于根据会话标签查询到对应的会话消息,并将所查询到的会话消息发送至客户端。
在其中一个实施例中,上述离线消息处理装置还包括:
账户信息确定模块,用于确定客户端在第一系统中的第一账户信息;
离线消息确定模块,用于查询第一账户信息对应的第一虚拟账户信息,以及第一虚拟账户信息在第二系统中待处理离线消息,待处理离线消息是通过第二系统中的第二账户信息与第一账户信息之间的消息,第二账户信息是第一虚拟账户信息关联的第二虚拟账户信息对应的。
上述离线消息处理装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图10所示。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储会话列表。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种离线消息处理方法。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图11所示。该计算机设备包括通过系统总线连接的处理器、存储器、通信接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过WIFI、移动蜂窝网络、NFC(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种离线消息处理方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图10和图11中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:向服务器发送离线消息同步请求,离线消息同步请求携带有同步时间;接收服务器反馈的初始会话对应的离线消息以及同步状态,初始会话包括会话时间满足要求的第一预设数量的第一会话,以及除第一会话外存在新的离线消息的第二会话;离线消息包括根据同步时间查询会话列表所获取的第一会话的第二预设数量的离线消息以及第二会话的第三预设数量的离线消息;根据各同步状态以及已同步的离线消息的时间生成会话标签;接收目标会话的展示指令;获取目标会话对应的会话标签,并将会话标签发送至服务器;接收并显示服务器反馈的根据会话标签查询得到的会话消息。
在一个实施例中,处理器执行计算机程序时所实现的向服务器发送离线消息同步请求,包括:获取客户端的显示属性,显示属性包括一页所显示的会话的第一预设数量以及一页所显示的消息的第二预设数量;根据显示属性生成离线消息同步请求,并向服务器发送离线消息同步请求。
在一个实施例中,处理器执行计算机程序时所实现的根据各同步状态以及已同步的离线消息的时间生成会话标签,包括:当同步状态为未同步完成时,获取本次同步的离线消息的开始时间和结束时间;根据开始时间和结束时间更新初始会话对应的会话标签;处理器执行计算机程序时所实现的将会话标签发送至服务器,包括:将会话标签中各开始时间和结束时间发送至服务器,以使得服务器根据会话标签中各开始时间和结束时间确定待同步时间,并基于待同步时间查询会话消息。
在一个实施例中,处理器执行计算机程序时所实现的接收服务器反馈的初始会话对应的离线消息之后,还包括:根据离线消息确定初始会话的会话类型;当会话类型属于会话折叠类型时,根据会话类型将初始会话折叠至对应的会话集合中,并修改会话集合的标识。
在一个实施例中,处理器执行计算机程序时所实现的根据离线消息确定初始会话的会话类型,包括:获取会话类型判断规则以及各会话类型判断规则的优先级;按照优先级,依次根据会话类型判断规则以及离线消息确定初始会话的会话类型,且初始会话的会话类型为根据高优先级的会话类型判断规则判断得到的。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:接收客户端发送的离线消息同步请求,离线消息同步请求携带有同步时间;根据同步时间确定初始会话,初始会话包括会话时间满足要求的第一预设数量的第一会话,以及除第一会话外存在新的离线消息的第二会话;根据同步时间查询第一会话的第二预设数量的离线消息以及第二会话的第三预设数量消息,并确定各初始会话的同步状态;将所查询到的各初始会话的离线消息以及各初始会话的同步状态反馈至客户端;接收客户端发送的会话标签,会话标签是客户端根据各同步状态以及已同步的离线消息的时间生成各初始会话对应的会话标签;根据会话标签查询到对应的会话消息,并将所查询到的会话消息发送至客户端。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:确定客户端在第一系统中的第一账户信息;查询第一账户信息对应的第一虚拟账户信息,以及第一虚拟账户信息在第二系统中待处理离线消息,待处理离线消息是通过第二系统中的第二账户信息与第一账户信息之间的消息,第二账户信息是第一虚拟账户信息关联的第二虚拟账户信息对应的。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:向服务器发送离线消息同步请求,离线消息同步请求携带有同步时间;接收服务器反馈的初始会话对应的离线消息以及同步状态,初始会话包括会话时间满足要求的第一预设数量的第一会话,以及除第一会话外存在新的离线消息的第二会话;离线消息包括根据同步时间查询会话列表所获取的第一会话的第二预设数量的离线消息以及第二会话的第三预设数量的离线消息;根据各同步状态以及已同步的离线消息的时间生成会话标签;接收目标会话的展示指令;获取目标会话对应的会话标签,并将会话标签发送至服务器;接收并显示服务器反馈的根据会话标签查询得到的会话消息。
在一个实施例中,计算机程序被处理器执行时所实现的向服务器发送离线消息同步请求,包括:获取客户端的显示属性,显示属性包括一页所显示的会话的第一预设数量以及一页所显示的消息的第二预设数量;根据显示属性生成离线消息同步请求,并向服务器发送离线消息同步请求。
在一个实施例中,计算机程序被处理器执行时所实现的根据各同步状态以及已同步的离线消息的时间生成会话标签,包括:当同步状态为未同步完成时,获取本次同步的离线消息的开始时间和结束时间;根据开始时间和结束时间更新初始会话对应的会话标签;计算机程序被处理器执行时所实现的将会话标签发送至服务器,包括:将会话标签中各开始时间和结束时间发送至服务器,以使得服务器根据会话标签中各开始时间和结束时间确定待同步时间,并基于待同步时间查询会话消息。
在一个实施例中,计算机程序被处理器执行时所实现的接收服务器反馈的初始会话对应的离线消息之后,还包括:根据离线消息确定初始会话的会话类型;当会话类型属于会话折叠类型时,根据会话类型将初始会话折叠至对应的会话集合中,并修改会话集合的标识。
在一个实施例中,计算机程序被处理器执行时所实现的根据离线消息确定初始会话的会话类型,包括:获取会话类型判断规则以及各会话类型判断规则的优先级;按照优先级,依次根据会话类型判断规则以及离线消息确定初始会话的会话类型,且初始会话的会话类型为根据高优先级的会话类型判断规则判断得到的。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:接收客户端发送的离线消息同步请求,离线消息同步请求携带有同步时间;根据同步时间确定初始会话,初始会话包括会话时间满足要求的第一预设数量的第一会话,以及除第一会话外存在新的离线消息的第二会话;根据同步时间查询第一会话的第二预设数量的离线消息以及第二会话的第三预设数量消息,并确定各初始会话的同步状态;将所查询到的各初始会话的离线消息以及各初始会话的同步状态反馈至客户端;接收客户端发送的会话标签,会话标签是客户端根据各同步状态以及已同步的离线消息的时间生成各初始会话对应的会话标签;根据会话标签查询到对应的会话消息,并将所查询到的会话消息发送至客户端。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:确定客户端在第一系统中的第一账户信息;查询第一账户信息对应的第一虚拟账户信息,以及第一虚拟账户信息在第二系统中待处理离线消息,待处理离线消息是通过第二系统中的第二账户信息与第一账户信息之间的消息,第二账户信息是第一虚拟账户信息关联的第二虚拟账户信息对应的。
在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。
Claims (10)
1.一种离线消息处理方法,其特征在于,应用于客户端,所述方法包括:
向服务器发送离线消息同步请求,所述离线消息同步请求携带有同步时间;
接收所述服务器反馈的初始会话对应的离线消息以及同步状态,所述初始会话包括会话时间满足要求的第一预设数量的第一会话,以及除所述第一会话外存在新的离线消息的第二会话;所述离线消息包括根据所述同步时间查询会话列表所获取的所述第一会话的第二预设数量的离线消息以及所述第二会话的第三预设数量的离线消息;
根据各所述同步状态以及已同步的离线消息的时间生成会话标签;
接收目标会话的展示指令;
获取所述目标会话对应的会话标签,并将所述会话标签发送至所述服务器;
接收并显示所述服务器反馈的根据所述会话标签查询得到的会话消息。
2.根据权利要求1所述的方法,其特征在于,所述向服务器发送离线消息同步请求,包括:
获取客户端的显示属性,所述显示属性包括一页所显示的会话的第一预设数量以及一页所显示的消息的第二预设数量;
根据所述显示属性生成离线消息同步请求,并向服务器发送离线消息同步请求。
3.根据权利要求1所述的方法,其特征在于,所述根据各所述同步状态以及已同步的离线消息的时间生成会话标签,包括:
当所述同步状态为未同步完成时,获取本次同步的离线消息的开始时间和结束时间;
根据所述开始时间和结束时间更新所述初始会话对应的会话标签;
所述将所述会话标签发送至所述服务器,包括:
将所述会话标签中各所述开始时间和结束时间发送至所述服务器,以使得所述服务器根据所述会话标签中各所述开始时间和结束时间确定待同步时间,并基于所述待同步时间查询会话消息。
4.根据权利要求1至3任意一项所述的方法,其特征在于,所述接收所述服务器反馈的初始会话对应的离线消息之后,还包括:
根据所述离线消息确定所述初始会话的会话类型;
当所述会话类型属于会话折叠类型时,根据所述会话类型将所述初始会话折叠至对应的会话集合中,并修改所述会话集合的标识。
5.根据权利要求4所述的方法,其特征在于,所述根据所述离线消息确定所述初始会话的会话类型,包括:
获取会话类型判断规则以及各所述会话类型判断规则的优先级;
按照所述优先级,依次根据所述会话类型判断规则以及所述离线消息确定所述初始会话的会话类型,且所述初始会话的会话类型为根据高优先级的所述会话类型判断规则判断得到的。
6.一种离线消息处理方法,其特征在于,应用于服务器,所述方法包括:
接收客户端发送的离线消息同步请求,所述离线消息同步请求携带有同步时间;
根据所述同步时间确定初始会话,所述初始会话包括会话时间满足要求的第一预设数量的第一会话,以及除所述第一会话外存在新的离线消息的第二会话;
根据所述同步时间查询所述第一会话的第二预设数量的离线消息以及所述第二会话的第三预设数量的离线消息,并确定各所述初始会话的同步状态;
将所查询到的各所述初始会话的离线消息以及各所述初始会话的同步状态反馈至客户端;
接收所述客户端发送的会话标签,所述会话标签是所述客户端根据各所述同步状态以及已同步的离线消息的时间生成的各所述初始会话对应的会话标签;
根据所述会话标签查询到对应的会话消息,并将所查询到的会话消息发送至所述客户端。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
确定所述客户端在第一系统中的第一账户信息;
查询所述第一账户信息对应的第一虚拟账户信息,以及所述第一虚拟账户信息在第二系统中待处理离线消息,所述待处理离线消息是通过第二系统中的第二账户信息与所述第一账户信息之间的消息,所述第二账户信息是所述第一虚拟账户信息关联的第二虚拟账户信息对应的。
8.一种离线消息处理装置,其特征在于,所述装置包括:
第一发送模块,用于向服务器发送离线消息同步请求,所述离线消息同步请求携带有同步时间;
第一接收模块,用于接收所述服务器反馈的初始会话对应的离线消息以及同步状态,所述初始会话包括会话时间满足要求的第一预设数量的第一会话,以及除所述第一会话外存在新的离线消息的第二会话;所述离线消息包括根据所述同步时间查询会话列表所获取的所述第一会话的第二预设数量的离线消息以及所述第二会话的第三预设数量的离线消息;
会话标签生成模块,用于根据各所述同步状态以及已同步的离线消息的时间生成会话标签;
第二接收模块,用于接收目标会话的展示指令;
第二发送模块,用于获取所述目标会话对应的会话标签,并将所述会话标签发送至所述服务器;
显示模块,用于接收并显示所述服务器反馈的根据所述会话标签查询得到的会话消息。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至5或6至7中任一项所述的方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至5或6至7中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210924962.0A CN115002137B (zh) | 2022-08-03 | 2022-08-03 | 离线消息处理方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210924962.0A CN115002137B (zh) | 2022-08-03 | 2022-08-03 | 离线消息处理方法、装置、计算机设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115002137A CN115002137A (zh) | 2022-09-02 |
CN115002137B true CN115002137B (zh) | 2022-10-21 |
Family
ID=83020941
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210924962.0A Active CN115002137B (zh) | 2022-08-03 | 2022-08-03 | 离线消息处理方法、装置、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115002137B (zh) |
Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102282873A (zh) * | 2009-01-19 | 2011-12-14 | Lg电子株式会社 | 用于递送cpm消息的方法及其服务器 |
CN103051520A (zh) * | 2013-01-05 | 2013-04-17 | 北京小米科技有限责任公司 | 即时通信工具中同步离线会话消息的方法及装置 |
CN105897550A (zh) * | 2015-12-23 | 2016-08-24 | 乐视致新电子科技(天津)有限公司 | 一种推送离线消息的方法及设备 |
CN106161189A (zh) * | 2015-04-02 | 2016-11-23 | 北大方正集团有限公司 | 即时通信的离线通信方法及装置 |
CN106790454A (zh) * | 2016-12-07 | 2017-05-31 | 努比亚技术有限公司 | 离线消息推送方法与装置 |
CN106961377A (zh) * | 2016-01-12 | 2017-07-18 | 北大方正集团有限公司 | 消息同步方法和消息同步系统 |
CN108023923A (zh) * | 2016-11-04 | 2018-05-11 | 中兴通讯股份有限公司 | 离线消息的处理方法及装置 |
CN109462545A (zh) * | 2018-12-26 | 2019-03-12 | 北京云中融信网络科技有限公司 | 消息删除方法及装置 |
CN109639564A (zh) * | 2018-12-12 | 2019-04-16 | 金瓜子科技发展(北京)有限公司 | 一种获取离线消息的方法、装置及计算机可读存储介质 |
CN110932966A (zh) * | 2019-12-09 | 2020-03-27 | 网易(杭州)网络有限公司 | 消息处理方法及装置、计算机存储介质、电子设备 |
CN111371854A (zh) * | 2020-02-24 | 2020-07-03 | 南京甄视智能科技有限公司 | 物联网中的离线消息发送方法、装置、存储介质及服务器 |
CN111654428A (zh) * | 2020-06-05 | 2020-09-11 | 天津卓朗科技发展有限公司 | 离线消息处理方法、装置和服务器 |
CN112243012A (zh) * | 2019-07-16 | 2021-01-19 | 中国移动通信有限公司研究院 | 一种离线消息传输方法、装置、服务器及终端 |
CN112333080A (zh) * | 2020-10-27 | 2021-02-05 | 合肥市智享亿云信息科技有限公司 | 一种即时通讯离线消息推送方法 |
CN112637314A (zh) * | 2020-12-17 | 2021-04-09 | 深圳市和讯华谷信息技术有限公司 | 消息同步方法、系统、第一终端设备、服务端和介质 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9258259B2 (en) * | 2005-09-30 | 2016-02-09 | Nokia Technologies Oy | Retrieval of offline instant messages |
US9148397B2 (en) * | 2011-12-19 | 2015-09-29 | Facebook, Inc. | Messaging object generation for synchronous conversation threads |
-
2022
- 2022-08-03 CN CN202210924962.0A patent/CN115002137B/zh active Active
Patent Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102282873A (zh) * | 2009-01-19 | 2011-12-14 | Lg电子株式会社 | 用于递送cpm消息的方法及其服务器 |
CN103051520A (zh) * | 2013-01-05 | 2013-04-17 | 北京小米科技有限责任公司 | 即时通信工具中同步离线会话消息的方法及装置 |
CN106161189A (zh) * | 2015-04-02 | 2016-11-23 | 北大方正集团有限公司 | 即时通信的离线通信方法及装置 |
CN105897550A (zh) * | 2015-12-23 | 2016-08-24 | 乐视致新电子科技(天津)有限公司 | 一种推送离线消息的方法及设备 |
CN106961377A (zh) * | 2016-01-12 | 2017-07-18 | 北大方正集团有限公司 | 消息同步方法和消息同步系统 |
CN108023923A (zh) * | 2016-11-04 | 2018-05-11 | 中兴通讯股份有限公司 | 离线消息的处理方法及装置 |
CN106790454A (zh) * | 2016-12-07 | 2017-05-31 | 努比亚技术有限公司 | 离线消息推送方法与装置 |
CN109639564A (zh) * | 2018-12-12 | 2019-04-16 | 金瓜子科技发展(北京)有限公司 | 一种获取离线消息的方法、装置及计算机可读存储介质 |
CN109462545A (zh) * | 2018-12-26 | 2019-03-12 | 北京云中融信网络科技有限公司 | 消息删除方法及装置 |
CN112243012A (zh) * | 2019-07-16 | 2021-01-19 | 中国移动通信有限公司研究院 | 一种离线消息传输方法、装置、服务器及终端 |
CN110932966A (zh) * | 2019-12-09 | 2020-03-27 | 网易(杭州)网络有限公司 | 消息处理方法及装置、计算机存储介质、电子设备 |
CN111371854A (zh) * | 2020-02-24 | 2020-07-03 | 南京甄视智能科技有限公司 | 物联网中的离线消息发送方法、装置、存储介质及服务器 |
CN111654428A (zh) * | 2020-06-05 | 2020-09-11 | 天津卓朗科技发展有限公司 | 离线消息处理方法、装置和服务器 |
CN112333080A (zh) * | 2020-10-27 | 2021-02-05 | 合肥市智享亿云信息科技有限公司 | 一种即时通讯离线消息推送方法 |
CN112637314A (zh) * | 2020-12-17 | 2021-04-09 | 深圳市和讯华谷信息技术有限公司 | 消息同步方法、系统、第一终端设备、服务端和介质 |
Also Published As
Publication number | Publication date |
---|---|
CN115002137A (zh) | 2022-09-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3075177B1 (en) | Method, apparatus and device for exchanging name card | |
US8291018B2 (en) | Methods, apparatuses, and computer program products for providing activity coordination services | |
US7861005B2 (en) | Method and apparatus for folder synchronization and management | |
CN102769640B (zh) | 用户信息的更新方法、服务器以及系统 | |
EP1696377A1 (en) | Method and system for locating contact information collected from contact sources | |
EP1696635A2 (en) | Method and system for aggregating contact information from multiple contact sources | |
US20060195422A1 (en) | Method and system for collecting contact information from contact sources and tracking contact sources | |
CN108141405B (zh) | 提供对已传递的电子邮件内容的修改的方法和设备 | |
US20110045850A1 (en) | Wireless Terminal and Method for Processing Contact Information | |
US20060178134A1 (en) | Method and system for message thread compression | |
US8856230B2 (en) | In browser real time collaboration lists and forms | |
CN103281798A (zh) | 一种实现修改同步的方法、装置及系统 | |
CN105162697A (zh) | 一种微博系统及其数据控制方法 | |
US11704629B2 (en) | Methods and devices for processing information card | |
CN101895579A (zh) | 通讯录同步方法和系统 | |
CN116127219A (zh) | 小程序中页面的展示方法、装置和计算机设备 | |
US11068853B2 (en) | Providing calendar utility to capture calendar event | |
CN109213955A (zh) | 数据处理方法及相关设备 | |
CN115002137B (zh) | 离线消息处理方法、装置、计算机设备和存储介质 | |
US20200014651A1 (en) | Providing social insight in email | |
CN107786661B (zh) | 信息同步方法 | |
CN107977277B (zh) | Erp系统中集成第三方系统的方法、装置及计算机设备 | |
CN107368376B (zh) | 消息发送方法及装置、扩展方法、终端 | |
CN117692418A (zh) | 消息处理方法、装置、计算机设备和存储介质 | |
CN111506644B (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 |