消息处理方法、装置、客户端、服务器及存储介质转让专利

申请号 : CN201811039397.X

文献号 : CN109274510B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 李明

申请人 : 北京达佳互联信息技术有限公司

摘要 :

本申请示出了一种消息处理方法、装置、客户端、服务器及存储介质。在本申请中,获取客户端存储的第一会话的消息列表的第一最新版本,第一消息列表中存储了第一会话中的消息;向服务器发送第一最新版本;接收服务器返回的通知消息;该通知消息携带第二会话的会话标识,该通知消息用于指示第二会话的消息列表中存在未被客户端接收到的遗留消息;根据该通知消息确定第二会话的消息列表中存在未被客户端接收到的遗留消息。在本申请中,无需向服务器发送该用户接收到的该会话中的所有消息,只需根据第一最新版本即可确定出是否存在未被客户端接收到的遗留消息,从而可以节省网络资源。

权利要求 :

1.一种消息处理方法,其特征在于,应用于客户端,所述方法包括:当客户端登录服务器之后,获取所述客户端存储的第一会话的消息列表的第一最新版本,所述第一消息列表中存储了所述第一会话中的消息;

向所述服务器发送所述第一最新版本;

接收服务器返回的通知消息,所述通知消息是在所述服务器存储的所述客户端参与的第二会话的消息列表的第二最新版本大于所述第一最新版本时向所述客户端发送的,所述通知消息携带所述第二会话的会话标识,所述通知消息用于指示所述第二会话的消息列表中存在未被所述客户端接收到的遗留消息,所述第二消息列表存储了所述第二会话中的全部消息;

根据所述通知消息确定所述第二会话的消息列表中存在未被所述客户端接收到的遗留消息;

其中,所述遗留消息为所述客户端处于未登录状态时所述服务器向所述客户端转发过的,且所述服务器后续不会再主动转发的所述第二会话中的历史消息;

其中,所述方法的消息转发机制为:对于任意一个会话,当参与所述会话的某一用户需要在所述会话中发送消息时,所述用户的客户端向所述服务器发送消息以及所述会话的会话标识,所述服务器接收所述消息以及所述会话标识,再根据所述会话标识将所述消息主动转发给参与所述会话的其他用户的客户端。

2.根据权利要求1所述的方法,其特征在于,所述根据所述通知消息确定所述第二会话的消息列表中存在未被所述客户端接收到的遗留消息之后,还包括:从所述服务器中获取所述遗留消息。

3.根据权利要求2所述的方法,其特征在于,所述第二会话的消息列表中存储的消息的消息编号是按照所述服务器接收到所述第二会话中的消息的接收时刻的先后顺序依次递增的;

所述从所述服务器中获取所述遗留消息,包括:向所述服务器发送消息获取请求,所述消息获取请求携带第一消息编号和所述第二会话的会话标识,所述第一消息编号为所述客户端中存储的所述第二会话的消息列表中的所有消息的消息编号中最大的消息编号;

接收所述服务器根据所述获取请求返回的遗留消息,所述遗留消息包括:所述服务器中存储的所述第二会话的消息列表中的、大于所述第一消息编号的消息编号所对应的消息。

4.根据权利要求1所述的方法,其特征在于,所述从所述服务器中获取所述遗留消息之后,还包括:

按照消息编号由小至大的顺序显示所述遗留消息。

5.根据权利要求1所述的方法,其特征在于,所述通知消息还携带所述第二最新版本;

所述方法还包括:

使用所述第二最新版本更新所述第一最新版本。

6.一种消息处理方法,其特征在于,应用于服务器,所述方法包括:接收客户端在登录服务器之后向所述服务器发送的所述客户端存储的第一会话的消息列表的第一最新版本,所述第一消息列表中存储了所述第一会话中的消息;

获取在所述服务器存储的所述客户端参与的第二会话的消息列表的第二最新版本,所述第二消息列表存储了所述第二会话中的全部消息;

当所述第二最新版本与所述第一最新版本不同时,生成通知消息,所述通知消息携带所述第二会话的会话标识,所述通知消息用于指示所述第二会话的消息列表中存在未被所述客户端接收到的遗留消息,其中,所述遗留消息为所述客户端处于未登录状态时所述服务器向所述客户端转发过的,且所述服务器后续不会再主动转发的所述第二会话中的历史消息;

向所述客户端发送所述通知消息;

其中,所述方法的消息转发机制为:对于任意一个会话,当参与所述会话的某一用户需要在所述会话中发送消息时,所述用户的客户端向所述服务器发送消息以及所述会话的会话标识,所述服务器接收所述消息以及所述会话标识,再根据所述会话标识将所述消息主动转发给参与所述会话的其他用户的客户端。

7.根据权利要求6所述的方法,其特征在于,所述第二会话的消息列表中存储的消息的消息编号是按照所述服务器接收到所述第二会话中的消息的接收时刻的先后顺序依次递增的;

所述方法还包括:

接收所述客户端发送的消息获取请求,所述消息获取请求携带第一消息编号和所述第二会话的会话标识,所述第一消息编号为所述客户端中存储的所述第二会话的消息列表中的所有消息的消息编号中最大的消息编号;

获取遗留消息,所述遗留消息包括:所述服务器中存储的所述第二会话的消息列表中的、大于所述第一消息编号的消息编号所对应的消息。

8.根据权利要求6所述的方法,其特征在于,所述通知消息还携带所述第二最新版本。

9.一种消息处理装置,其特征在于,应用于客户端,所述装置包括:第一获取模块,被配置为当客户端登录服务器之后,获取所述客户端存储的第一会话的消息列表的第一最新版本,所述第一消息列表中存储了所述第一会话中的消息;

第一发送模块,被配置为向所述服务器发送所述第一最新版本;

第一接收模块,被配置为接收服务器返回的通知消息,所述通知消息是在所述服务器存储的所述客户端参与的第二会话的消息列表的第二最新版本大于所述第一最新版本时向所述客户端发送的,所述通知消息携带所述第二会话的会话标识,所述通知消息用于指示所述第二会话的消息列表中存在未被所述客户端接收到的遗留消息,所述第二消息列表存储了所述第二会话中的全部消息,其中,所述遗留消息为所述客户端处于未登录状态时所述服务器向所述客户端转发过的,且所述服务器后续不会再主动转发的所述第二会话中的历史消息;

确定模块,被配置为根据所述通知消息确定所述第二会话的消息列表中存在未被所述客户端接收到的遗留消息;

其中,所述装置的消息转发机制为:对于任意一个会话,当参与所述会话的某一用户需要在所述会话中发送消息时,所述用户的客户端向所述服务器发送消息以及所述会话的会话标识,所述服务器接收所述消息以及所述会话标识,再根据所述会话标识将所述消息主动转发给参与所述会话的其他用户的客户端。

10.根据权利要求9所述的装置,其特征在于,所述装置还包括:第二获取模块,被配置为从所述服务器中获取所述遗留消息。

11.根据权利要求10所述的装置,其特征在于,所述第二会话的消息列表中存储的消息的消息编号是按照所述服务器接收到所述第二会话中的消息的接收时刻的先后顺序依次递增的;

所述第二获取模块包括:

发送单元,被配置为向所述服务器发送消息获取请求,所述消息获取请求携带第一消息编号和所述第二会话的会话标识,所述第一消息编号为所述客户端中存储的所述第二会话的消息列表中的所有消息的消息编号中最大的消息编号;

接收单元,被配置为接收所述服务器根据所述获取请求返回的遗留消息,所述遗留消息包括:所述服务器中存储的所述第二会话的消息列表中的、大于所述第一消息编号的消息编号所对应的消息。

12.根据权利要求9所述的装置,其特征在于,所述装置还包括:显示模块,被配置为按照消息编号由小至大的顺序显示所述遗留消息。

13.根据权利要求 9所述的装置,其特征在于,所述通知消息还携带所述第二最新版本;

所述装置还包括:

更新模块,被配置为使用所述第二最新版本更新所述第一最新版本。

14.一种消息处理装置,其特征在于,应用于服务器,所述装置包括:第二接收模块,被配置为接收客户端在登录服务器之后向所述服务器发送的所述客户端存储的第一会话的消息列表的第一最新版本,所述第一消息列表中存储了所述第一会话中的消息;

第三获取模块,被配置为在所述服务器存储的所述客户端参与的第二会话的消息列表的第二最新版本,所述第二消息列表存储了所述第二会话中的全部消息;

生成模块,被配置为当所述第二最新版本与所述第一最新版本不同时,生成通知消息,所述通知消息携带所述第二会话的会话标识,所述通知消息用于指示所述第二会话的消息列表中存在未被所述客户端接收到的遗留消息,其中,所述遗留消息为所述客户端处于未登录状态时所述服务器向所述客户端转发过的,且所述服务器后续不会再主动转发的所述第二会话中的历史消息;

第二发送模块,被配置为向所述客户端发送所述通知消息;

其中,所述装置的消息转发机制为:对于任意一个会话,当参与所述会话的某一用户需要在所述会话中发送消息时,所述用户的客户端向所述服务器发送消息以及所述会话的会话标识,所述服务器接收所述消息以及所述会话标识,再根据所述会话标识将所述消息主动转发给参与所述会话的其他用户的客户端。

15.根据权利要求14所述的装置,其特征在于,所述第二会话的消息列表中存储的消息的消息编号是按照所述服务器接收到所述第二会话中的消息的接收时刻的先后顺序依次递增的;

所述装置还包括:

第三接收模块,被配置为接收所述客户端发送的消息获取请求,所述消息获取请求携带第一消息编号和所述第二会话的会话标识,所述第一消息编号为所述客户端中存储的所述第二会话的消息列表中的所有消息的消息编号中最大的消息编号;

第四获取模块,被配置为获取遗留消息,所述遗留消息包括:所述服务器中存储的所述第二会话的消息列表中的、大于所述第一消息编号的消息编号所对应的消息。

16.根据权利要求14所述的装置,其特征在于,所述通知消息还携带所述第二最新版本。

17.一种客户端,其特征在于,所述客户端包括:处理器;

用于存储处理器可执行指令的存储器;

其中,所述处理器被配置为执行如权利要求1‑5任一项所述的消息处理方法。

18.一种服务器,其特征在于,所述服务器包括:处理器;

用于存储处理器可执行指令的存储器;

其中,所述处理器被配置为执行如权利要求6‑8任一项所述的消息处理方法。

19.一种非临时性计算机可读存储介质,当所述存储介质中的指令由客户端的处理器执行时,使得客户端能够执行如权利要求1‑5任一项所述的消息处理方法。

20.一种非临时性计算机可读存储介质,当所述存储介质中的指令由服务器的处理器执行时,使得服务器能够执行如权利要求6‑8任一项所述的消息处理方法。

说明书 :

消息处理方法、装置、客户端、服务器及存储介质

技术领域

[0001] 本申请涉及计算机技术领域,尤其涉及一种消息处理方法、装置、客户端、服务器及存储介质。

背景技术

[0002] 当前,用户之间相互沟通的需求越来越大,为了提高沟通效率,越来越多的用户组成群组,并在群组中相互交流。在加入群组的用户中,当一个用户需要在群组中发送消息
时,可以将消息发送给服务器,然后服务器将该消息转发给群组中的其他每个用户,从而实
现相互交流。
[0003] 通常,加入群组中的用户并不是每时每刻都在线,未上线的用户无法接收到服务器转发的消息。
[0004] 之后当未上线的用户上线时,为了能够得到之前由于未上线而未接收到的消息,该用户在上线之后,需要将在该群组中的已接收到的所有消息发送给服务器,以使服务器
将接收到的消息与该群组中的所有消息进行对比,从而确定出是否存在该用户未接收到的
消息,然后向该用户发送通知信息,以向该用户通知存在该未接收到的消息。
[0005] 然而,发明人发现,该用户需要将在该群组中的已接收到的所有消息均发送给服务器,如果在该群组中的已接收到的消息非常多,则会占用非常多的网络资源。

发明内容

[0006] 为克服相关技术中存在的问题,本申请提供一种消息处理方法、装置、客户端、服务器及存储介质。
[0007] 根据本申请的第一方面,提供一种消息处理方法,应用于客户端,所述方法包括:
[0008] 获取所述客户端存储的第一会话的消息列表的第一最新版本,所述第一消息列表中存储了所述第一会话中的消息;
[0009] 向服务器发送所述第一最新版本;
[0010] 接收服务器返回的通知消息,所述通知消息是在所述服务器存储的所述客户端参与的第二会话的消息列表的第二最新版本大于所述第一最新版本时向所述客户端发送的,
所述通知消息携带所述第二会话的会话标识,所述通知消息用于指示所述第二会话的消息
列表中存在未被所述客户端接收到的遗留消息,所述第二消息列表存储了所述第二会话中
的全部消息;
[0011] 根据所述通知消息确定所述第二会话的消息列表中存在未被所述客户端接收到的遗留消息。
[0012] 在一个可选的实现方式中,所述根据所述通知消息确定所述第二会话的消息列表中存在未被所述客户端接收到的遗留消息之后,还包括:
[0013] 从所述服务器中获取所述遗留消息。
[0014] 在一个可选的实现方式中,所述第二会话的消息列表中存储的消息的消息编号是按照所述服务器接收到所述第二会话中的消息的接收时刻的先后顺序依次递增的;
[0015] 所述从所述服务器中获取所述遗留消息,包括:
[0016] 向所述服务器发送消息获取请求,所述消息获取请求携带第一消息编号和所述第二会话的会话标识,所述第一消息编号为所述客户端中存储的所述第二会话的消息列表中
的所有消息的消息编号中最大的消息编号;
[0017] 接收所述服务器根据所述获取请求返回的遗留消息,所述遗留消息包括:所述服务器中存储的所述第二会话的消息列表中的、大于所述第一消息编号的消息编号所对应的
消息。
[0018] 在一个可选的实现方式中,所述从所述服务器中获取所述遗留消息之后,还包括:
[0019] 按照消息编号由小至大的顺序显示所述遗留消息。
[0020] 在一个可选的实现方式中,所述通知消息还携带所述第二最新版本;
[0021] 所述方法还包括:
[0022] 使用所述第二最新版本更新所述第一最新版本。
[0023] 根据本申请的第二方面,提供一种消息处理方法,应用于服务器,所述方法包括:
[0024] 接收客户端存储的第一会话的消息列表的第一最新版本,所述第一消息列表中存储了所述第一会话中的消息;
[0025] 获取在所述服务器存储的所述客户端参与的第二会话的消息列表的第二最新版本,所述第二消息列表存储了所述第二会话中的全部消息;
[0026] 当所述第二最新版本与所述第一最新版本不同时,生成通知消息,所述通知消息携带所述第二会话的会话标识,所述通知消息用于指示所述第二会话的消息列表中存在未
被所述客户端接收到的遗留消息,
[0027] 向所述客户端发送所述通知消息。
[0028] 在一个可选的实现方式中,所述第二会话的消息列表中存储的消息的消息编号是按照所述服务器接收到所述第二会话中的消息的接收时刻的先后顺序依次递增的;
[0029] 所述方法还包括:
[0030] 接收所述客户端发送的消息获取请求,所述消息获取请求携带第一消息编号和所述第二会话的会话标识,所述第一消息编号为所述客户端中存储的所述第二会话的消息列
表中的所有消息的消息编号中最大的消息编号;
[0031] 获取遗留消息,所述遗留消息包括:所述服务器中存储的所述第二会话的消息列表中的、大于所述第一消息编号的消息编号所对应的消息。
[0032] 在一个可选的实现方式中,所述通知消息还携带所述第二最新版本。
[0033] 根据本申请的第三方面,提供一种消息处理装置,应用于客户端,所述装置包括:
[0034] 第一获取模块,被配置为获取所述客户端存储的第一会话的消息列表的第一最新版本,所述第一消息列表中存储了所述第一会话中的消息;
[0035] 第一发送模块,被配置为向服务器发送所述第一最新版本;
[0036] 第一接收模块,被配置为接收服务器返回的通知消息,所述通知消息是在所述服务器存储的所述客户端参与的第二会话的消息列表的第二最新版本大于所述第一最新版
本时向所述客户端发送的,所述通知消息携带所述第二会话的会话标识,所述通知消息用
于指示所述第二会话的消息列表中存在未被所述客户端接收到的遗留消息,所述第二消息
列表存储了所述第二会话中的全部消息;
[0037] 确定模块,被配置为根据所述通知消息确定所述第二会话的消息列表中存在未被所述客户端接收到的遗留消息。
[0038] 在一个可选的实现方式中,所述装置还包括:
[0039] 第二获取模块,被配置为从所述服务器中获取所述遗留消息。
[0040] 在一个可选的实现方式中,所述第二会话的消息列表中存储的消息的消息编号是按照所述服务器接收到所述第二会话中的消息的接收时刻的先后顺序依次递增的;
[0041] 所述第二获取模块包括:
[0042] 发送单元,被配置为向所述服务器发送消息获取请求,所述消息获取请求携带第一消息编号和所述第二会话的会话标识,所述第一消息编号为所述客户端中存储的所述第
二会话的消息列表中的所有消息的消息编号中最大的消息编号;
[0043] 接收单元,被配置为接收所述服务器根据所述获取请求返回的遗留消息,所述遗留消息包括:所述服务器中存储的所述第二会话的消息列表中的、大于所述第一消息编号
的消息编号所对应的消息。
[0044] 在一个可选的实现方式中,所述装置还包括:
[0045] 显示模块,被配置为按照消息编号由小至大的顺序显示所述遗留消息。
[0046] 在一个可选的实现方式中,所述通知消息还携带所述第二最新版本;
[0047] 所述装置还包括:
[0048] 更新模块,被配置为使用所述第二最新版本更新所述第一最新版本。
[0049] 根据本申请的第四方面,提供一种消息处理装置,应用于服务器,所述装置包括:
[0050] 第二接收模块,被配置为接收客户端存储的第一会话的消息列表的第一最新版本,所述第一消息列表中存储了所述第一会话中的消息;
[0051] 第三获取模块,被配置为在所述服务器存储的所述客户端参与的第二会话的消息列表的第二最新版本,所述第二消息列表存储了所述第二会话中的全部消息;
[0052] 生成模块,被配置为当所述第二最新版本与所述第一最新版本不同时,生成通知消息,所述通知消息携带所述第二会话的会话标识,所述通知消息用于指示所述第二会话
的消息列表中存在未被所述客户端接收到的遗留消息,
[0053] 第二发送模块,被配置为向所述客户端发送所述通知消息。
[0054] 在一个可选的实现方式中,所述第二会话的消息列表中存储的消息的消息编号是按照所述服务器接收到所述第二会话中的消息的接收时刻的先后顺序依次递增的;
[0055] 所述装置还包括:
[0056] 第三接收模块,被配置为接收所述客户端发送的消息获取请求,所述消息获取请求携带第一消息编号和所述第二会话的会话标识,所述第一消息编号为所述客户端中存储
的所述第二会话的消息列表中的所有消息的消息编号中最大的消息编号;
[0057] 第四获取模块,被配置为获取遗留消息,所述遗留消息包括:所述服务器中存储的所述第二会话的消息列表中的、大于所述第一消息编号的消息编号所对应的消息。
[0058] 在一个可选的实现方式中,所述通知消息还携带所述第二最新版本。
[0059] 根据本申请的第五方面,提供一种客户端,所述客户端包括:
[0060] 处理器;
[0061] 用于存储处理器可执行指令的存储器;
[0062] 其中,所述处理器被配置为执行如第一方面所述的消息处理方法。
[0063] 根据本申请的第六方面,提供一种服务器,所述服务器包括:
[0064] 处理器;
[0065] 用于存储处理器可执行指令的存储器;
[0066] 其中,所述处理器被配置为执行如第二方面所述的消息处理方法。
[0067] 根据本申请的第七方面,提供一种非临时性计算机可读存储介质,当所述存储介质中的指令由客户端的处理器执行时,使得客户端能够执行如第一方面所述的消息处理方
法。
[0068] 根据本申请的第八方面,提供一种非临时性计算机可读存储介质,当所述存储介质中的指令由服务器的处理器执行时,使得服务器能够执行如第二方面所述的消息处理方
法。
[0069] 根据本申请的第九方面,提供一种计算机程序产品,当所述计算机程序产品中的指令由客户端的处理器执行时,使得所述客户端能够执行如第一方面所述的消息处理方
法。
[0070] 根据本申请的第十方面,提供一种计算机程序产品,当所述计算机程序产品中的指令由服务器的处理器执行时,使得所述服务器能够执行如第二方面所述的消息处理方
法。
[0071] 本申请提供的技术方案可以包括以下有益效果:
[0072] 在本申请中,获取客户端存储的第一会话的消息列表的第一最新版本,第一消息列表中存储了第一会话中的消息;向服务器发送第一最新版本;接收服务器返回的通知消
息;该通知消息是在服务器存储的客户端参与的第二会话的消息列表的第二最新版本大于
第一最新版本时向客户端发送的,该通知消息携带第二会话的会话标识,该通知消息用于
指示第二会话的消息列表中存在未被客户端接收到的遗留消息;根据该通知消息确定第二
会话的消息列表中存在未被客户端接收到的遗留消息。在本申请中,无需向服务器发送该
用户接收到的该会话中的所有消息,只需根据第一最新版本即可确定出是否存在未被客户
端接收到的遗留消息,从而可以节省网络资源。
[0073] 应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。

附图说明

[0074] 此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
[0075] 图1是本申请示出的一种消息处理方法的流程图。
[0076] 图2是本申请示出的一种消息处理方法的流程图。
[0077] 图3是本申请示出的一种消息处理装置的框图。
[0078] 图4是本申请示出的一种消息处理装置的框图。
[0079] 图5是本申请示出的一种客户端的框图。
[0080] 图6是本申请示出的一种服务器的框图。

具体实施方式

[0081] 这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例
中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附
权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
[0082] 图1是本申请示出的一种消息处理方法的流程图,如图1所示,该方法应用于客户端,该方法包括以下步骤。
[0083] 在步骤S101中,获取客户端存储的第一会话的消息列表的第一最新版本,第一消息列表中存储了第一会话中的消息;
[0084] 在本申请实施例中,至少两个用户可以组成一个会话,例如,两个用户之间点对点的会话,或者,三个以上用户组成一个群组,群组中的每一个用户都可以在群组中发送消
息,且每一个用户都可以在群组中看到其他用户发送的消息,此时,该群组即为一个会话。
[0085] 对于任意一个会话,当参与该会话的某一用户需要在该会话中发送消息时,该用户首先需要向服务器发送该消息以及该会话的会话标识,服务器接收该消息以及该会话标
识,再根据该会话标识将该消息转发给参与该会话的其他用户。
[0086] 然而,如果参与该会话的其他用户中的部分用户未上线,则即使服务器向该部分用户转发该消息,该部分用户也无法接收到该消息,相关的机制下,服务器后续也不会主动
再次向该部分用户转发该消息,如此导致该部分用户就无法接收到该消息。
[0087] 在本申请中,参与该会话的每一个用户都可以在该会话中发送消息,服务器在接收到参与该会话的一个用户在该会话中发送的消息之后,就会为该消息设置一个消息编
号,消息编号可以用数字表示,消息编号可以按照服务器接收到该会话中的消息的接收先
后顺序依次逐渐递增,例如,服务器接收到的该会话中的第一个消息的消息编号为001,接
收到的该会话中的第二个消息的消息编号为002,接收到的该会话中的第三个消息的消息
编号为003等等,以此类推。
[0088] 其中,可以将为该消息设置的消息编号可以添加在该消息中的预设字段中,然后再将添加了消息编号的该消息转发给该会话中的其他用户。
[0089] 或者,将该消息与为该消息设置的消息编号组成对应表项,并存储在服务器中存储的消息与消息编号之间的第一对应关系中,然后将包括该消息与为该消息设置的消息编
号的对应表项发送给该会话中的其他用户。
[0090] 对于该其他用户中的任意一个用户,如果该用户此时在线,也即,如果该用户此时使用客户端登录了服务器,则客户端会接收到服务器发送的该消息,该用户也能查看到该
消息,但是客户端也不知道此次登录服务器之前处于未登录状态时服务器是否向客户端发
送过该会话中的历史消息,如果客户端此次登录服务器之前处于未登录状态时服务器向该
客户端发送过该会话中的历史消息,由于当时客户端处于未登录状态,因此,客户端并没有
接收到服务器向客户端发送的历史消息,且由于相关的机制下,服务器后续也不会主动再
次向客户端发送历史消息,如此导致客户端就无法接收到历史消息,该历史消息即为遗留
消息。
[0091] 在本申请中,用户可能参与了一个会话,也可能同时参与了多个会话,客户端为每一个用户参与的会话都会在客户端中存储一个消息列表,在本申请中,客户端中存储的消
息列表所对应的会话为第一会话,当用户使用客户端登录服务器之后,为了确定客户端参
与的会话中是否还存在客户端未接收到的遗漏消息,客户端可以获取客户端存储的第一会
话的消息列表的第一最新版本,第一消息列表中存储了第一会话中的消息,然后执行步骤
S102。
[0092] 其中,在本申请中,使用客户端的用户参与的会话即为客户端参与的会话,对于客户端参与的任意一个会话,每当客户端接收到服务器发送的该会话中的新消息时,就会将
新消息存储在客户端中存储的该会话的消息列表中,且需要更新该会话的消息列表的最新
版本,例如,第一次在该会话中的消息列表中存储消息1之后,将该会话的消息列表的最新
版本设置为V1.0,之后在某一会话中的消息列表中存储消息2之后,将该会话的消息列表的
最新版本设置为V2.0,之后在某一会话中的消息列表中存储消息3之后,将该会话的消息列
表的最新版本设置为V3.0等,以此类推。
[0093] 在步骤S102中,向服务器发送第一最新版本;
[0094] 在本申请中,服务器存储了客户端当前参与的第二会话的消息列表,以及存储了每一个第二会话的消息列表的第二最新版本,第二消息列表存储了第二会话中的全部消
息。
[0095] 在本申请中,第二会话可以为一个会话,也可以为多个不同的会话,第二会话可以与第一会话相同,或者,第一会话为第二会话中的部分会话等。
[0096] 对于第二会话中的任一会话,每当服务器发送到其他用户发送的该会话中的新消息时,就会将新消息存储在服务器存储的该会话的消息列表中,且需要更新该会话的消息
列表的版本,例如,第一次在该会话中的消息列表中存储消息1之后,将该会话的消息列表
的最新版本设置为V1.0,之后在某一会话中的消息列表中存储消息2之后,将该会话的消息
列表的最新版本设置为V2.0,之后在某一会话中的消息列表中存储消息3之后,将该会话的
消息列表的最新版本设置为V3.0等,以此类推。
[0097] 服务器在该会话的消息列表中存储了新消息之后,可能由于届时客户端未登录服务器导致客户端未接收到服务器发送的新消息。因此,在本申请中,在服务器接收客户端存
储的第一会话的消息列表的第一最新版本之后,服务器可以在服务器存储的客户端参与的
第二会话的消息列表的第二最新版本,判断第二最新版本与第一最新版本是否相同,当第
二最新版本与第一最新版本不同时,则生成通知消息,该通知消息携带第二会话的会话标
识,该通知消息用于指示第二会话的消息列表中存在未被客户端接收到的遗留消息,然后
向客户端发送该通知消息。
[0098] 其中,当第二会话为多个时,由于每一个第二会话的消息列表都有各自的版本,因此,在本申请中,在服务器存储的客户端参与的第二会话的消息列表的第二最新版本为每
一个第二会话的消息列表都有各自的版本中的最高版本。
[0099] 在步骤S103中,接收服务器返回的通知消息;该通知消息是在服务器存储的客户端参与的第二会话的消息列表的第二最新版本大于第一最新版本时向客户端发送的,该通
知消息携带第二会话的会话标识,该通知消息用于指示第二会话的消息列表中存在未被客
户端接收到的遗留消息;
[0100] 第二消息列表存储了第二会话中的全部消息;
[0101] 在步骤S104中,根据该通知消息确定第二会话的消息列表中存在未被客户端接收到的遗留消息。
[0102] 在本申请中,获取客户端存储的第一会话的消息列表的第一最新版本,第一消息列表中存储了第一会话中的消息;向服务器发送第一最新版本;接收服务器返回的通知消
息;该通知消息是在服务器存储的客户端参与的第二会话的消息列表的第二最新版本大于
第一最新版本时向客户端发送的,该通知消息携带第二会话的会话标识,该通知消息用于
指示第二会话的消息列表中存在未被客户端接收到的遗留消息;根据该通知消息确定第二
会话的消息列表中存在未被客户端接收到的遗留消息。在本申请中,无需向服务器发送该
用户接收到的该会话中的所有消息,只需根据第一最新版本即可确定出是否存在未被客户
端接收到的遗留消息,从而可以节省网络资源。
[0103] 在本申请中,如果第二会话的消息列表中存在未被客户端接收到的遗留消息,则客户端往往需要从服务器中获取该遗留消息,以供使用客户端的用户查看该遗留消息,其
中,为了能够从服务器中获取该遗留消息,客户端可以向服务器发送消息获取请求,第二会
话的消息列表中存储的消息的消息编号是按照服务器接收到第二会话中的消息的接收时
刻的先后顺序依次递增的;该消息获取请求携带第一消息编号和第二会话的会话标识,第
一消息编号为客户端中存储的第二会话的消息列表中的所有消息的消息编号中最大的消
息编号;其中,不同的会话的会话标识不同。
[0104] 服务器接收客户端发送的消息获取请求,从该消息获取请求中提取出第一消息编号和第二会话的会话标识,根据该会话标识,获取遗留消息,遗留消息包括:服务器中存储
的第二会话的消息列表中的、大于第一消息编号的消息编号所对应的消息,再向客户端返
回遗留消息。客户端接收服务器根据该消息获取请求返回的遗留消息。
[0105] 进一步地,为了提高用户体验,在从服务器中获取遗留消息之后,还可以按照消息编号由小至大的顺序显示遗留消息。
[0106] 在另一实施例中,该通知消息还携带第二最新版本;因此,客户端还可以使用第二最新版本更新第一最新版本,也即,将第二最新版本作为客户端存储的第一会话的消息列
表的最新版本,以使之后可以根据更新后的最新版本从服务器中继续获取其他遗留消息。
[0107] 图2是本申请示出的一种消息处理方法的流程图,如图1所示,该方法应用于服务器,该方法包括以下步骤。
[0108] 在步骤S201中,接收客户端存储的第一会话的消息列表的第一最新版本,第一消息列表中存储了第一会话中的消息;
[0109] 在步骤S202中,获取在服务器存储的客户端参与的第二会话的消息列表的第二最新版本,第二消息列表存储了第二会话中的全部消息;
[0110] 在步骤S203中,当第二最新版本与第一最新版本不同时,生成通知消息,该通知消息携带第二会话的会话标识,该通知消息用于指示第二会话的消息列表中存在未被客户端
接收到的遗留消息;
[0111] 在步骤S204中,向客户端发送该通知消息。
[0112] 本申请支持客户端可以不向服务器发送该用户接收到的该会话中的所有消息,而仅根据第一最新版本即可确定出服务器中是否存在未被客户端接收到的遗留消息,从而可
以节省网络资源。
[0113] 向客户端发送通知消息之后,客户端往往需要从服务器中获取该遗留消息,以供使用客户端的用户查看该遗留消息,其中,为了能够从服务器中获取该遗留消息,客户端可
以向服务器发送消息获取请求,第二会话的消息列表中存储的消息的消息编号是按照服务
器接收到第二会话中的消息的接收时刻的先后顺序依次递增的;该消息获取请求携带第一
消息编号和第二会话的会话标识,第一消息编号为客户端中存储的第二会话的消息列表中
的所有消息的消息编号中最大的消息编号;其中,不同的会话的会话标识不同。
[0114] 服务器接收客户端发送的消息获取请求,从该消息获取请求中提取出第一消息编号和第二会话的会话标识,根据该会话标识,获取遗留消息,遗留消息包括:服务器中存储
的第二会话的消息列表中的、大于第一消息编号的消息编号所对应的消息,再向客户端返
回遗留消息。客户端接收服务器根据该消息获取请求返回的遗留消息。
[0115] 在另一实施例中,该通知消息还携带第二最新版本;因此,客户端还可以使用第二最新版本更新第一最新版本,也即,将第二最新版本作为客户端存储的第一会话的消息列
表的最新版本,以使之后可以根据更新后的最新版本从服务器中继续获取其他遗留消息。
[0116] 图3是本申请示出的一种消息处理装置的框图。参照图3,该装置包括:
[0117] 第一获取模块11,被配置为获取所述客户端存储的第一会话的消息列表的第一最新版本,所述第一消息列表中存储了所述第一会话中的消息;
[0118] 第一发送模块12,被配置为向服务器发送所述第一最新版本;
[0119] 第一接收模块13,被配置为接收服务器返回的通知消息,所述通知消息是在所述服务器存储的所述客户端参与的第二会话的消息列表的第二最新版本大于所述第一最新
版本时向所述客户端发送的,所述通知消息携带所述第二会话的会话标识,所述通知消息
用于指示所述第二会话的消息列表中存在未被所述客户端接收到的遗留消息,所述第二消
息列表存储了所述第二会话中的全部消息;
[0120] 确定模块14,被配置为根据所述通知消息确定所述第二会话的消息列表中存在未被所述客户端接收到的遗留消息。
[0121] 在一个可选的实现方式中,所述装置还包括:
[0122] 第二获取模块,被配置为从所述服务器中获取所述遗留消息。
[0123] 在一个可选的实现方式中,所述第二会话的消息列表中存储的消息的消息编号是按照所述服务器接收到所述第二会话中的消息的接收时刻的先后顺序依次递增的;
[0124] 所述第二获取模块包括:
[0125] 发送单元,被配置为向所述服务器发送消息获取请求,所述消息获取请求携带第一消息编号和所述第二会话的会话标识,所述第一消息编号为所述客户端中存储的所述第
二会话的消息列表中的所有消息的消息编号中最大的消息编号;
[0126] 接收单元,被配置为接收所述服务器根据所述获取请求返回的遗留消息,所述遗留消息包括:所述服务器中存储的所述第二会话的消息列表中的、大于所述第一消息编号
的消息编号所对应的消息。
[0127] 在一个可选的实现方式中,所述装置还包括:
[0128] 显示模块,被配置为按照消息编号由小至大的顺序显示所述遗留消息。
[0129] 在一个可选的实现方式中,所述通知消息还携带所述第二最新版本;
[0130] 所述装置还包括:
[0131] 更新模块,被配置为使用所述第二最新版本更新所述第一最新版本。
[0132] 在本申请中,获取客户端存储的第一会话的消息列表的第一最新版本,第一消息列表中存储了第一会话中的消息;向服务器发送第一最新版本;接收服务器返回的通知消
息;该通知消息是在服务器存储的客户端参与的第二会话的消息列表的第二最新版本大于
第一最新版本时向客户端发送的,该通知消息携带第二会话的会话标识,该通知消息用于
指示第二会话的消息列表中存在未被客户端接收到的遗留消息;根据该通知消息确定第二
会话的消息列表中存在未被客户端接收到的遗留消息。在本申请中,无需向服务器发送该
用户接收到的该会话中的所有消息,只需根据第一最新版本即可确定出是否存在未被客户
端接收到的遗留消息,从而可以节省网络资源。
[0133] 图4是本申请示出的一种消息处理装置的框图。参照图4,该装置包括:
[0134] 第二接收模块21,被配置为接收客户端存储的第一会话的消息列表的第一最新版本,所述第一消息列表中存储了所述第一会话中的消息;
[0135] 第三获取模块22,被配置为在所述服务器存储的所述客户端参与的第二会话的消息列表的第二最新版本,所述第二消息列表存储了所述第二会话中的全部消息;
[0136] 生成模块23,被配置为当所述第二最新版本与所述第一最新版本不同时,生成通知消息,所述通知消息携带所述第二会话的会话标识,所述通知消息用于指示所述第二会
话的消息列表中存在未被所述客户端接收到的遗留消息,
[0137] 第二发送模块24,被配置为向所述客户端发送所述通知消息。
[0138] 在一个可选的实现方式中,所述第二会话的消息列表中存储的消息的消息编号是按照所述服务器接收到所述第二会话中的消息的接收时刻的先后顺序依次递增的;
[0139] 所述装置还包括:
[0140] 第三接收模块,被配置为接收所述客户端发送的消息获取请求,所述消息获取请求携带第一消息编号和所述第二会话的会话标识,所述第一消息编号为所述客户端中存储
的所述第二会话的消息列表中的所有消息的消息编号中最大的消息编号;
[0141] 第四获取模块,被配置为获取遗留消息,所述遗留消息包括:所述服务器中存储的所述第二会话的消息列表中的、大于所述第一消息编号的消息编号所对应的消息。
[0142] 在一个可选的实现方式中,所述通知消息还携带所述第二最新版本。
[0143] 本申请支持客户端可以不向服务器发送该用户接收到的该会话中的所有消息,而仅根据第一最新版本即可确定出服务器中是否存在未被客户端接收到的遗留消息,从而可
以节省网络资源。
[0144] 关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
[0145] 图5是本申请示出的一种客户端800的框图。例如,客户端800可以是移动电话,计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字
助理等。
[0146] 参照图5,客户端800可以包括以下一个或多个组件:处理组件802,存储器804,电力组件806,多媒体组件808,音频组件810,输入/输出(I/O)的接口812,传感器组件814,以
及通信组件816。
[0147] 处理组件802通常控制客户端800的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理组件802可以包括一个或多个处理器820来执行指
令,以完成上述如图1所示的消息处理方法的全部或部分步骤。此外,处理组件802可以包括
一个或多个模块,便于处理组件802和其他组件之间的交互。例如,处理组件802可以包括多
媒体模块,以方便多媒体组件808和处理组件802之间的交互。
[0148] 存储器804被配置为存储各种类型的数据以支持在设备800的操作。这些数据的示例包括用于在客户端800上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,
消息,图片,视频等。存储器804可以由任何类型的易失性或非易失性存储设备或者它们的
组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可
编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存
储器,磁盘或光盘。
[0149] 电源组件806为客户端800的各种组件提供电力。电源组件806可以包括电源管理系统,一个或多个电源,及其他与为客户端800生成、管理和分配电力相关联的组件。
[0150] 多媒体组件808包括在所述客户端800和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,
屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传
感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动
作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多
媒体组件808包括一个前置摄像头和/或后置摄像头。当设备800处于操作模式,如拍摄模式
或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头
和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。
[0151] 音频组件810被配置为输出和/或输入音频信号。例如,音频组件810包括一个麦克风(MIC),当客户端800处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被
配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器804或经由通信
组件816发送。在一些实施例中,音频组件810还包括一个扬声器,用于输出音频信号。
[0152] I/O接口812为处理组件802和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁
定按钮。
[0153] 传感器组件814包括一个或多个传感器,用于为客户端800提供各个方面的状态评估。例如,传感器组件814可以检测到设备800的打开/关闭状态,组件的相对定位,例如所述
组件为客户端800的显示器和小键盘,传感器组件814还可以检测客户端800或客户端800一
个组件的位置改变,用户与客户端800接触的存在或不存在,客户端800方位或加速/减速和
客户端800的温度变化。传感器组件814可以包括接近传感器,被配置用来在没有任何的物
理接触时检测附近物体的存在。传感器组件814还可以包括光传感器,如CMOS或CCD图像传
感器,用于在成像应用中使用。在一些实施例中,该传感器组件814还可以包括加速度传感
器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。
[0154] 通信组件816被配置为便于客户端800和其他设备之间有线或无线方式的通信。客户端800可以接入基于通信标准的无线网络,如WiFi,运营商网络(如2G、3G、4G或5G),或它
们的组合。在一个示例性实施例中,通信组件816经由广播信道接收来自外部广播管理系统
的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件816还包括近场通信
(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会
(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
[0155] 在示例性实施例中,客户端800可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列
(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述如图1所示的消息
处理方法。
[0156] 在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器804,上述指令可由客户端800的处理器820执行以完成上述如图1所示
的消息处理方法。例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器
(RAM)、CD‑ROM、磁带、软盘和光数据存储设备等。
[0157] 图6是本申请示出的一种服务器1900的框图。例如,服务器1900可以被提供为一服务器。
[0158] 参照图6,服务器1900包括处理组件1922,其进一步包括一个或多个处理器,以及由存储器1932所代表的存储器资源,用于存储可由处理组件1922的执行的指令,例如应用
程序。存储器1932中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的
模块。此外,处理组件1922被配置为执行指令,以执行上述如图2所述的消息处理方法。
[0159] 服务器1900还可以包括一个电源组件1926被配置为执行服务器1900的电源管理,一个有线或无线网络接口1950被配置为将服务器1900连接到网络,和一个输入输出(I/O)
接口1958。服务器1900可以操作基于存储在存储器1932的操作系统,例如Windows 
ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM或类似。
[0160] 本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或
者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识
或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由下面的
权利要求指出。
[0161] 应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求来限制。
[0162] A1、一种消息处理方法,应用于客户端,所述方法包括:
[0163] 获取所述客户端存储的第一会话的消息列表的第一最新版本,所述第一消息列表中存储了所述第一会话中的消息;
[0164] 向服务器发送所述第一最新版本;
[0165] 接收服务器返回的通知消息,所述通知消息是在所述服务器存储的所述客户端参与的第二会话的消息列表的第二最新版本大于所述第一最新版本时向所述客户端发送的,
所述通知消息携带所述第二会话的会话标识,所述通知消息用于指示所述第二会话的消息
列表中存在未被所述客户端接收到的遗留消息,所述第二消息列表存储了所述第二会话中
的全部消息;
[0166] 根据所述通知消息确定所述第二会话的消息列表中存在未被所述客户端接收到的遗留消息。
[0167] A2、根据A1所述的方法,所述根据所述通知消息确定所述第二会话的消息列表中存在未被所述客户端接收到的遗留消息之后,还包括:
[0168] 从所述服务器中获取所述遗留消息。
[0169] A3、根据A2所述的方法,所述第二会话的消息列表中存储的消息的消息编号是按照所述服务器接收到所述第二会话中的消息的接收时刻的先后顺序依次递增的;
[0170] 所述从所述服务器中获取所述遗留消息,包括:
[0171] 向所述服务器发送消息获取请求,所述消息获取请求携带第一消息编号和所述第二会话的会话标识,所述第一消息编号为所述客户端中存储的所述第二会话的消息列表中
的所有消息的消息编号中最大的消息编号;
[0172] 接收所述服务器根据所述获取请求返回的遗留消息,所述遗留消息包括:所述服务器中存储的所述第二会话的消息列表中的、大于所述第一消息编号的消息编号所对应的
消息。
[0173] A4、根据A1所述的方法,所述从所述服务器中获取所述遗留消息之后,还包括:
[0174] 按照消息编号由小至大的顺序显示所述遗留消息。
[0175] A5、根据A1所述的方法,所述通知消息还携带所述第二最新版本;
[0176] 所述方法还包括:
[0177] 使用所述第二最新版本更新所述第一最新版本。
[0178] A6、一种消息处理方法,应用于服务器,所述方法包括:
[0179] 接收客户端存储的第一会话的消息列表的第一最新版本,所述第一消息列表中存储了所述第一会话中的消息;
[0180] 获取在所述服务器存储的所述客户端参与的第二会话的消息列表的第二最新版本,所述第二消息列表存储了所述第二会话中的全部消息;
[0181] 当所述第二最新版本与所述第一最新版本不同时,生成通知消息,所述通知消息携带所述第二会话的会话标识,所述通知消息用于指示所述第二会话的消息列表中存在未
被所述客户端接收到的遗留消息,
[0182] 向所述客户端发送所述通知消息。
[0183] A7、根据A6所述的方法,所述第二会话的消息列表中存储的消息的消息编号是按照所述服务器接收到所述第二会话中的消息的接收时刻的先后顺序依次递增的;
[0184] 所述方法还包括:
[0185] 接收所述客户端发送的消息获取请求,所述消息获取请求携带第一消息编号和所述第二会话的会话标识,所述第一消息编号为所述客户端中存储的所述第二会话的消息列
表中的所有消息的消息编号中最大的消息编号;
[0186] 获取遗留消息,所述遗留消息包括:所述服务器中存储的所述第二会话的消息列表中的、大于所述第一消息编号的消息编号所对应的消息。
[0187] A8、根据A6所述的方法,所述通知消息还携带所述第二最新版本。
[0188] A9、一种消息处理装置,应用于客户端,所述装置包括:
[0189] 第一获取模块,被配置为获取所述客户端存储的第一会话的消息列表的第一最新版本,所述第一消息列表中存储了所述第一会话中的消息;
[0190] 第一发送模块,被配置为向服务器发送所述第一最新版本;
[0191] 第一接收模块,被配置为接收服务器返回的通知消息,所述通知消息是在所述服务器存储的所述客户端参与的第二会话的消息列表的第二最新版本大于所述第一最新版
本时向所述客户端发送的,所述通知消息携带所述第二会话的会话标识,所述通知消息用
于指示所述第二会话的消息列表中存在未被所述客户端接收到的遗留消息,所述第二消息
列表存储了所述第二会话中的全部消息;
[0192] 确定模块,被配置为根据所述通知消息确定所述第二会话的消息列表中存在未被所述客户端接收到的遗留消息。
[0193] A10、根据A9所述的装置,所述装置还包括:
[0194] 第二获取模块,被配置为从所述服务器中获取所述遗留消息。
[0195] A11、根据A10所述的装置,所述第二会话的消息列表中存储的消息的消息编号是按照所述服务器接收到所述第二会话中的消息的接收时刻的先后顺序依次递增的;
[0196] 所述第二获取模块包括:
[0197] 发送单元,被配置为向所述服务器发送消息获取请求,所述消息获取请求携带第一消息编号和所述第二会话的会话标识,所述第一消息编号为所述客户端中存储的所述第
二会话的消息列表中的所有消息的消息编号中最大的消息编号;
[0198] 接收单元,被配置为接收所述服务器根据所述获取请求返回的遗留消息,所述遗留消息包括:所述服务器中存储的所述第二会话的消息列表中的、大于所述第一消息编号
的消息编号所对应的消息。
[0199] A12、根据A9所述的装置,所述装置还包括:
[0200] 显示模块,被配置为按照消息编号由小至大的顺序显示所述遗留消息。
[0201] A13、根据A9所述的装置,所述通知消息还携带所述第二最新版本;
[0202] 所述装置还包括:
[0203] 更新模块,被配置为使用所述第二最新版本更新所述第一最新版本。
[0204] A14、一种消息处理装置,应用于服务器,所述装置包括:
[0205] 第二接收模块,被配置为接收客户端存储的第一会话的消息列表的第一最新版本,所述第一消息列表中存储了所述第一会话中的消息;
[0206] 第三获取模块,被配置为在所述服务器存储的所述客户端参与的第二会话的消息列表的第二最新版本,所述第二消息列表存储了所述第二会话中的全部消息;
[0207] 生成模块,被配置为当所述第二最新版本与所述第一最新版本不同时,生成通知消息,所述通知消息携带所述第二会话的会话标识,所述通知消息用于指示所述第二会话
的消息列表中存在未被所述客户端接收到的遗留消息,
[0208] 第二发送模块,被配置为向所述客户端发送所述通知消息。
[0209] A15、根据A14所述的装置,所述第二会话的消息列表中存储的消息的消息编号是按照所述服务器接收到所述第二会话中的消息的接收时刻的先后顺序依次递增的;
[0210] 所述装置还包括:
[0211] 第三接收模块,被配置为接收所述客户端发送的消息获取请求,所述消息获取请求携带第一消息编号和所述第二会话的会话标识,所述第一消息编号为所述客户端中存储
的所述第二会话的消息列表中的所有消息的消息编号中最大的消息编号;
[0212] 第四获取模块,被配置为获取遗留消息,所述遗留消息包括:所述服务器中存储的所述第二会话的消息列表中的、大于所述第一消息编号的消息编号所对应的消息。
[0213] A16、根据A14所述的装置,所述通知消息还携带所述第二最新版本。