CN112685537A - 会话记录查询方法、装置及相关设备 - Google Patents
会话记录查询方法、装置及相关设备 Download PDFInfo
- Publication number
- CN112685537A CN112685537A CN202011580314.5A CN202011580314A CN112685537A CN 112685537 A CN112685537 A CN 112685537A CN 202011580314 A CN202011580314 A CN 202011580314A CN 112685537 A CN112685537 A CN 112685537A
- Authority
- CN
- China
- Prior art keywords
- session
- index
- group chat
- target group
- identification
- 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
Images
Landscapes
- Information Transfer Between Computers (AREA)
- Computer And Data Communications (AREA)
Abstract
本公开关于一种会话记录查询方法、装置及相关设备,其中方法包括:接收当前账户对目标群聊会话的会话记录查询请求,会话记录查询请求中至少包括:当前账户的标识和目标群聊会话的会话信息,会话信息至少包括:目标群聊会话中、除当前账户外的至少两个会话参与账户的标识;根据当前账户的标识以及目标群聊会话的会话信息,查询目标群聊会话的会话索引;将与目标群聊会话的会话索引对应的会话记录作为对会话记录查询请求的响应。本公开可以只需输入所要查找的聊天记录所属的聊天群中的会话参与账户,即可找到包含当前账户以及这些会话参与账户的聊天群的会话记录,无需手动依次查找,省时省力且降低了执行聊天记录查找处理的电子设备的运行负担。
Description
技术领域
本公开涉及数据查询领域,尤其涉及会话记录查询方法、装置及相关设备。
背景技术
随着互联网及智能电子设备的普及,越来越多的人通过各种通讯工具(如聊天软件)进行沟通。
在上述通讯工具中,即时通讯(IM,instant message)技术由于其能够即时发送和接收互联网消息因此应用普遍。通过IM技术,用户可以方便的和另一个用户进行沟通,同时,多个用户还可以建立聊天群进行群聊。对于某用户而言,他加入的聊天群可能很多,聊天群中的用户的数量也很多。当该用户希望查询聊天群中的聊天记录时,用户需要首先选择一个聊天群,然后通过日期或关键字等方式来查询该聊天群内的聊天记录。
如果该用户忘记了其希望查找的聊天记录是属于哪一个聊天群,则用户需要分别在每一个聊天群进行查找。这种查找方式一方面操作繁琐耗时,另一方面也会给执行聊天记录查找处理的电子设备带来较高的运行负担。
发明内容
本公开提供一种会话记录查询方法、装置及相关设备,以至少解决相关技术中操作繁琐耗时以及给电子设备带来较高的运行负担的问题。本公开的技术方案如下:
根据本公开实施例的第一方面,提供一种会话记录查询方法,应用于服务器,包括:
接收当前账户对目标群聊会话的会话记录查询请求,所述会话记录查询请求中至少包括:所述当前账户的标识和所述目标群聊会话的会话信息,其中,所述目标群聊会话的会话信息至少包括:所述目标群聊会话中、除所述当前账户外的至少两个会话参与账户的标识;
根据所述当前账户的标识以及所述目标群聊会话的会话信息,查询所述目标群聊会话的会话索引;
将与所述目标群聊会话的会话索引对应的会话记录作为对所述会话记录查询请求的响应。
在第一方面的一种可能的实现方式中,所述根据所述当前账户的标识以及所述目标群聊会话的会话信息,查询所述目标群聊会话的会话索引,包括:
查询用户账户标识为所述当前账户的标识的各第一会话索引,将查询到的各所述第一会话索引中的会话标识确定为目标标识;
使用所述至少两个会话参与账户的标识,在包含所述目标标识的各会话索引中查询,获得所述目标群聊会话的会话标识;
将包含所述目标群聊会话的会话标识的所述第一会话索引,确定为所述目标群聊会话的会话索引。
在第一方面的一种可能的实现方式中,所述使用所述至少两个会话参与账户的标识,在包含所述目标标识的各会话索引中查询,获得所述目标群聊会话的会话标识,包括:
在包含所述目标标识的各会话索引中,查找包含至少一个所述会话参与账户的标识的第二会话索引;
确定包含全部所述会话参与账户的标识的所述第二会话索引,将确定的所述第二会话索引中的会话标识确定为所述目标群聊会话的会话标识。
在第一方面的一种可能的实现方式中,所述确定包含全部所述会话参与账户的标识的所述第二会话索引,将确定的所述第二会话索引中的会话标识确定为所述目标群聊会话的会话标识,包括:
将包括的所述会话标识相同的所述第二会话索引划分为一个索引组;
从各所述索引组中确定目标索引组,所述目标索引组中各第二会话索引的用户账户标识构成的标识组包括:所述会话记录查询请求所包括的各账户的标识;
将所述目标索引组中所述第二会话索引所包括的会话标识,确定为所述目标群聊会话的会话标识。
在第一方面的一种可能的实现方式中,所述根据所述当前账户的标识以及所述目标群聊会话的会话信息,查询所述目标群聊会话的会话索引,包括:
查询用户账户标识为所述当前账户的标识的各第一会话索引;
在所述第一会话索引中查询包括各所述会话参与账户的标识的第三会话索引;
将所述第三会话索引确定为所述目标群聊会话的会话索引。
在第一方面的一种可能的实现方式中,所述方法还包括:
在满足条件一或条件二的情况下,为所述当前账户创建所述目标群聊会话的会话索引;
其中,所述条件一为:所述目标群聊会话为新建的群聊会话;
所述条件二为:所述当前账户为新加入所述目标群聊会话的账户。
在第一方面的一种可能的实现方式中,所述方法还包括:
在满足条件三或条件四的情况下,删除为所述当前账户创建的、所述目标群聊会话的会话索引;
其中,所述条件三为:所述目标群聊会话为解散的群聊会话;
所述条件四为:所述当前账户退出所述目标群聊会话。
根据本公开实施例的第二方面,提供一种会话记录查询装置,应用于服务器,所述会话记录查询装置包括:
请求接收单元,被配置为执行接收当前账户对目标群聊会话的会话记录查询请求,所述会话记录查询请求中至少包括:所述当前账户的标识和所述目标群聊会话的会话信息,其中,所述目标群聊会话的会话信息至少包括:所述目标群聊会话中、除所述当前账户外的至少两个会话参与账户的标识;
索引查询单元,被配置为执行根据所述当前账户的标识以及所述目标群聊会话的会话信息,查询所述目标群聊会话的会话索引;
响应确定单元,被配置为执行将与所述目标群聊会话的会话索引对应的会话记录作为对所述会话记录查询请求的响应。
在第二方面的一种可能的实现方式中,所述索引查询单元,包括:
第一查询子单元,被配置为执行查询用户账户标识为所述当前账户的标识的各第一会话索引,将查询到的各所述第一会话索引中的会话标识确定为目标标识;
第二查询子单元,被配置为执行使用所述至少两个会话参与账户的标识,在包含所述目标标识的各会话索引中查询,获得所述目标群聊会话的会话标识;
第一确定子单元,被配置为执行将包含所述目标群聊会话的会话标识的所述第一会话索引,确定为所述目标群聊会话的会话索引。
在第二方面的一种可能的实现方式中,所述第二查询子单元,包括:
查找子单元,被配置为执行在包含所述目标标识的各会话索引中,查找包含至少一个所述会话参与账户的标识的第二会话索引;
第二确定子单元,被配置为执行确定包含全部所述会话参与账户的标识的所述第二会话索引,将确定的所述第二会话索引中的会话标识确定为所述目标群聊会话的会话标识。
在第二方面的一种可能的实现方式中,所述第二确定子单元,包括:
划分子单元,被配置为执行将包括的所述会话标识相同的所述第二会话索引划分为一个索引组;
索引组确定子单元,被配置为执行从各所述索引组中确定目标索引组,所述目标索引组中各第二会话索引的用户账户标识构成的标识组包括:所述会话记录查询请求所包括的各账户的标识;
第三确定子单元,被配置为执行将所述目标索引组中所述第二会话索引所包括的会话标识,确定为所述目标群聊会话的会话标识。
在第二方面的一种可能的实现方式中,所述索引查询单元,包括:
第三查询子单元,被配置为执行查询用户账户标识为所述当前账户的标识的各第一会话索引;
第四查询子单元,被配置为执行在所述第一会话索引中查询包括各所述会话参与账户的标识的第三会话索引;
索引确定子单元,被配置为执行将所述第三会话索引确定为所述目标群聊会话的会话索引。
在第二方面的一种可能的实现方式中,所述会话记录查询装置还包括:索引创建单元,被配置为执行在满足条件一或条件二的情况下,为所述当前账户创建所述目标群聊会话的会话索引;
其中,所述条件一为:所述目标群聊会话为新建的群聊会话;
所述条件二为:所述当前账户为新加入所述目标群聊会话的账户。
在第二方面的一种可能的实现方式中,所述会话记录查询装置还包括:索引删除单元,被配置为执行在满足条件三或条件四的情况下,删除为所述当前账户创建的、所述目标群聊会话的会话索引;
其中,所述条件三为:所述目标群聊会话为解散的群聊会话;
所述条件四为:所述当前账户退出所述目标群聊会话。
根据本公开实施例的第三方面,提供一种服务器,包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现如第一方面提供的任一种会话记录查询方法。
根据本公开实施例的第四方面,提供一种计算机可读存储介质,当所述计算机可读存储介质中的指令由服务器的处理器执行时,使得服务器能够执行如第一方面提供的任一种会话记录查询方法。
根据本公开实施例的第五方面,提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现第一方面提供的任一种会话记录查询方法。
本公开的实施例提供的技术方案至少带来以下有益效果:
本公开可以只需输入所要查找的聊天记录所属的聊天群中的会话参与账户,即可找到包含当前账户以及这些会话参与账户的聊天群的会话记录,无需手动依次查找,省时省力且降低了执行聊天记录查找处理的电子设备的运行负担。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理,并不构成对本公开的不当限定。
图1是根据一示例性实施例示出的一种会话记录查询方法的流程图;
图2是根据一示例性实施例示出的另一种会话记录查询方法的流程图;
图3是根据一示例性实施例示出的另一种会话记录查询方法的流程图;
图4是根据一示例性实施例示出的另一种会话记录查询方法的流程图;
图5为根据一示例性实施例示出的可以进行即时通讯的应用程序的一种操作界面的示意图;
图6为根据一示例性实施例示出的可以进行即时通讯的应用程序的另一种操作界面的示意图;
图7是根据一示例性实施例示出的一种会话记录查询装置的框图;
图8是根据一示例性实施例示出的一种服务器的框图。
具体实施方式
为了使本领域普通人员更好地理解本公开的技术方案,下面将结合附图,对本公开实施例中的技术方案进行清楚、完整地描述。
需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
图1是根据一示例性实施例示出的一种会话记录查询方法的流程图,如图1所示,可以包括以下步骤。
在步骤S11中,接收当前账户对目标群聊会话的会话记录查询请求,会话记录查询请求中至少包括:当前账户的标识和目标群聊会话的会话信息,其中,目标群聊会话的会话信息至少包括:目标群聊会话中、除当前账户外的至少两个会话参与账户的标识。
可选的,当前账户可以为通过客户端设备使用服务器提供的会话功能的用户的账户,本公开可以首先对输入的账户认证信息进行合法性验证,在合法性验证通过后,当前账户可以正常使用服务器提供的会话功能。上述账户认证信息可以包括:账号、手机号、邮箱、姓名、身份证号、人脸图像、指纹、声音、在触摸屏上的滑动轨迹、密码等信息中的至少一种。
当合法性验证通过后,当前账户可以处于“登录”状态或“在线”状态,并正常使用服务器提供的会话功能。
本公开可以分别将每一个通过合法性验证的账户确定为当前账户并分别对每一个当前账户进行图1所示的方法所包含的处理。
可选的,本公开中的会话的会话内容可以包括:文字、超链接、表情符号、文件等内容中的至少一种。上述文件可以包括:图片、音频、视频、文档中的至少一种。本公开可以将上述会话内容中的至少一种作为会话记录进行存储。
其中,群聊会话是一种会话类型。会话的会话类型可以包括:私聊会话和群聊会话,其中,私聊会话为两个账户之间的会话,对其他账户而言是不可见的。群聊会话所涉及的账户数量可以更多,例如:100个账户的群聊会话,一个账户在某群聊中输入的内容对该群聊中的所有账户而言都是可见的。
可选的,图1所示方法可以应用于服务器。当图1所示方法应用于服务器时,本公开可以利用服务器较强的存储能力来保存更多的会话记录,并利用服务器较强的处理能力来快速处理会话记录查询请求。
当图1所示方法应用于服务器时,本公开可以在参与群聊会话的用户在客户端设备中输入会话内容后即获得客户端设备上传的该会话内容,也可以定期或不定期的从客户端设备中获得用户输入的会话内容。
可选的,当前账户可以通过客户端设备发出会话记录查询请求。该客户端设备上可以安装具有即时通讯功能的应用程序。当前账户可以通过该应用程序的至少一个操作界面来发出会话记录查询请求。拥有当前账户的用户可以在操作界面中通过字符输入、滑动、拖动、点击等操作来将会话信息等用于进行会话记录查询的信息输入可以进行即时通讯的应用程序中,从而发出会话记录查询请求。
图5为根据一示例性实施例示出的具有即时通讯功能的应用程序的一种操作界面的示意图。拥有当前账户的用户可以在图5所示操作界面的输入框001中输入至少两个会话参与账户的标识,然后点击查询按键,从而使得具有即时通讯功能的应用程序发出会话记录查询请求。
在本公开其他可选实施例中,用户还可以通过操作界面输入其他会话信息,如会话建立时刻等。
在本公开其他可选实施例中,用户还可以通过操作界面输入除会话信息外的其他信息,如用于查询会话内容的关键词、会话内容的时间范围等。
图6为根据一示例性实施例示出的具有即时通讯功能的应用程序的另一种操作界面的示意图。拥有当前账户的用户可以在图6所示操作界面的“群成员”右侧的输入框中输入除当前账户外的至少两个会话参与账户的标识,如图6所示的“李四”和“王五”。用户可以在图6所示操作界面的“关键词”右侧的输入框中输入用于查询会话内容的关键词,如图6所示的“吃饭”。用户可以在图6所示操作界面的“开始时间”右侧的输入框中输入用于所要查询的会话内容的开始时间,如图6所示的“2020-03-01”。用户可以在图6所示操作界面的“结束时间”右侧的输入框中输入用于所要查询的会话内容的结束时间,如图6所示的“2020-03-02”。在输入上述信息后,用户点击查询按键后,进行即时通讯的应用程序即可发出包含上述信息的会话记录查询请求。
在步骤S12中,根据当前账户的标识以及目标群聊会话的会话信息,查询目标群聊会话的会话索引。
可选的,本公开可以在索引库中查询会话索引。索引库中可以包括至少一条会话索引,本公开提供的每条会话索引可以包括多种不同的数据,例如:会话索引中包括多个字段,这样,本公开可以通过会话索引中各字段的取值来在索引库中查询符合查询条件的各条会话索引。
其中,当前账户的标识可以为:账号、手机号、身份证号等。
与当前账户的标识类似,各会话参与账户的标识可以为:账号、手机号、身份证号等。
本公开可以为每一个群聊会话设置一个唯一的会话标识。
本公开的会话索引中可以包括:当前账户的标识以及会话信息。其中,除了包括当前账户外的各会话参与账户的标识,会话信息中还可以包括:会话类型、会话标识、会话建立时刻、会话参与账户进入会话的时刻中的至少一个。
可选的,会话类型、会话标识、会话建立时刻、会话参与账户进入会话的时刻中部分或全部可以作为本公开中的会话索引的字段。这样,就可以使用多种字段进行查询。在实际应用中,可以设置所要查询的各字段的逻辑关系(与或非),并根据设置的逻辑关系进行查询。
例如:可以仅通过某会话标识来查询会话,也可以通过某会话类型和某会话建立时间范围来同时查询,可选的,可以设定该会话类型和该会话建立时间范围之间的逻辑关系为“与”、“或”、“非”中的一个。
会话信息中包括的字段可以有多种,在进行查询时,可以仅选择其中的部分字段和当前账户的标识、除当前账户外的至少两个会话参与账户的标识一起对会话记录进行查询。
本公开可以分别为每一个账户创建其参与的每个群聊会话对应的会话索引。可选的,本公开为当前账户创建的会话索引中,当前账户的标识可以为创建的该会话索引的用户账户标识字段的取值。可选的,该用户账户标识字段可以为“userid”或“uid”等。
用户账户标识字段可以体现会话索引的归属,即:当某会话索引中的用户账户标识字段的取值为账户A的标识时,则说明该某会话索引为账户A的会话索引,而非其他账户的会话索引。
对于一个群聊会话而言,本公开可以分别为每一个会话参与账户建立一条以其标识作为用户账户标识字段的取值的会话索引。例如:举例A:某会话为群聊会话,该会话的会话参与账户有三个,这三个账户的标识分别为:张三、李四和王五,该会话的会话标识为Q01,则本公开可以针对该会话建立如下的三条会话索引:
一条用户账户标识字段的取值为张三且会话标识为Q01的会话索引;
一条用户账户标识字段的取值为李四且会话标识为Q01的会话索引;
一条用户账户标识字段的取值为王五且会话标识为Q01的会话索引。
当张三查询他所参与的群聊会话的会话记录时,本公开可以在张三的标识作为用户账户标识字段的取值的会话索引中查询符合查询条件的会话索引,进而确定对应的会话记录。
可选的,当同一群聊会话中的各会话参与账户的标识分别作为包含该群聊会话的会话标识的会话索引中的用户账户标识字段的取值时,包含该会话标识的各会话索引对应的会话记录为同一会话记录或为不同的会话记录。
当包含相同会话标识的各会话索引对应的会话记录为同一会话记录时,本公开可以对一个会话仅保存一个会话记录,并通过与多个会话索引对应来同时满足各会话参与账户的查询需求。此种方式可以在满足各会话参与账户的查询需求的前提下,有效降低数据的存储量。
当包含相同会话标识的各会话索引对应的会话记录为不同的会话记录时,本公开可以对一个会话保存分别与各会话参与账户匹配的会话记录,即:同一会话中的各会话参与账户可以查询的会话记录不同。
可选的,服务器中可以保存有会话记录。
可选的,包含相同会话标识的各会话索引对应的会话记录的至少一种属性不同或不完全相同。其中,上述属性可以包括:时间范围、会话内容的类型、所包括的会话内容的发布者等。此种方式可以使得各会话参与账户的会话记录具有多样性。当前账户可以对自己的会话记录进行设置,从而使得本公开仅将会话的部分会话记录与当前账户的会话索引对应保存。
可选的,包含相同会话标识的各会话索引对应的会话记录的时间范围不同。仍使用上述举例A说明:张三可以设置其在该会话的会话记录为最近一个月的会话记录。则用户账户标识字段的取值为张三且会话标识为Q01的会话索引对应的会话记录为该群聊会话最近一个月的会话记录。
可选的,包含相同会话标识的各会话索引对应的会话记录的会话内容的类型不完全相同。仍使用上述举例A说明:李四可以设置其在该会话的会话记录为文字类型的会话内容。则用户账户标识字段的取值为李四且会话标识为Q01的会话索引对应的会话记录为该群聊会话中的文字类型的会话内容。这样,其他类型(如图片)的会话内容,李四就无法查询到。
可选的,包含相同会话标识的各会话索引对应的会话记录所包括的会话内容的发布者不完全相同。仍使用上述举例A说明:王五可以设置其在该会话的会话记录为不包括张三发出的消息的会话内容。则用户账户标识字段的取值为王五且会话标识为Q01的会话索引对应的会话记录为该群聊会话中除张三外其他会话参与账户发出的会话内容。这样,张三发出的会话内容,王五就无法查询到。
当前账户的标识以及除当前账户外的各会话参与账户的标识可以在会话索引中进行不同的设置,以区分当前账户的标识以及除当前账户外的各会话参与账户的标识。例如:当前账户的标识位于会话索引的头部,除当前账户外的各会话参与账户的标识位于会话索引的头部之外。这样,本公开可以将会话索引头部的账户的标识确定为当前账户的标识。
可选的,本公开可以按照预设的排列顺序设置当前账户的标识以及各会话信息在会话索引中的位置。上述预设的排列顺序可以为:将当前账户的标识、会话类型、会话标识、除当前账户外的会话参与账户的标识、除当前账户外的会话参与账户进入会话的时刻和会话建立时刻按照从会话索引头部至会话索引尾部的顺序依次排列。可选的,会话索引中的各种信息之间可以具有间隔符,如逗号。
下面提供一种示例性的会话索引的数据结构:
{"mappings":{"session":{"properties1":{"uid","chatType","targetId","groupSnapshot":{"properties2":{"member","timestamp1"}},"timestamp2"}}}}。
其中,该数据结构中的uid为当前账户的标识,chatType为会话类型,targetId为会话标识,member为除当前账户外的会话参与账户的标识,timestamp1为除当前账户外的会话参与账户进入会话的时刻,timestamp2为会话建立时刻。Mappings用于代表上述数据结构的映射关系,session用于表征该数据结构与会话相关,properties1代表会话的属性,properties右侧的{}之内的内容均为会话的属性。groupSnapshot用于表示包含多组信息,properties2用于表示各组信息所包含的具体属性。其中,每一个会话参与账户的标识及其进入会话的时刻构成一组信息。当除当前账户外的会话参与账户有多个时,会话索引中可以包括多组信息。
可选的,本公开的会话索引的数据结构可以包括多个键值对,本公开还可以在数据结构中设定各种值的数据类型,其中,数据类型可以包括:keyword、long等。其中,Long是一种数据类型,表示长整型,如时刻可以用long来表示,以便于对时刻进行排序。Keyword是ES(Elasticsearch)的一种数据类型,是字符串类型。
下面提供一种示例性的带有设定的数据类型的会话索引的数据结构:
{"mappings":{"session":{"properties":{"uid":{"type":"keyword"},"chatType":{"type":"keyword"},"targetId":{"type":"keyword"},"groupSnapshot":{"properties":{"member":{"type":"keyword"},"timestamp":{"type":"long"}}},"timestamp":{"type":"long"}}}}}。
为方便理解,下面以本公开提供的带有设定的数据类型的会话索引的数据结构为例进行举例说明:
假设:当前账户的标识为:zhangsan123;会话类型为群聊会话(本公开可以使用Q来标识群聊会话);会话标识为群聊会话的ID:ss541;除当前账户外的会话参与账户的标识包括:lisi3和wangwu6;除当前账户外的会话参与账户进入会话的时刻包括:2010年3月1日12时00分00秒和2010年3月2日12时00分00秒;会话建立时刻为2010年3月1日11时00分00秒。则根据这些信息建立的会话索引为:
{"mappings":{"session":{"properties1":{"zhangsan123","Q","ss541","groupSnapshot":{"properties2":{"lisi3","2010.03.01;12:00:00"},{"wangwu6","2010.03.02;12:00:00"}},"2010.03.01;11:00:00"}}}}。
当然,在会话索引的数据结构包括多个键值对时,根据这些信息建立的会话索引为:
{"mappings":{"session":{"properties1":{"uid":"zhangsan123","chatType":"Q","targetId""ss541","groupSnapshot":{"properties2":{"member":"lisi3","timestamp1":"2010.03.01;12:00:00"},{"member":"wangwu6","timestamp1":"2010.03.02;12:00:00"}},"timestamp2":"2010.03.01;11:00:00"}}}}。
在步骤S13中,将与目标群聊会话的会话索引对应的会话记录作为对会话记录查询请求的响应。
具体的,本公开可以为会话记录设置唯一标识,然后将该唯一标识与会话索引对应保存。该唯一标识可以为会话记录所在文件的文件名,也可以为会话记录的存储地址,也可以为其他标识,本公开不做限定。通过上述唯一标识,本公开可以查找到对应的会话记录。
本公开在获得会话记录查询请求后,可以根据会话记录查询请求中的信息查询目标群聊会话的会话索引,进而将与目标群聊会话的会话索引对应的会话记录作为对会话记录查询请求的响应,例如:将与目标群聊会话的会话索引对应的会话记录发送到客户端设备的显示屏进行显示。
可选的,步骤S13可以将与目标群聊会话的会话索引对应的会话记录输出到客户端设备的显示屏进行显示。具体的,可以将与目标群聊会话的会话索引对应的会话记录的全部或部分会话内容输出到具有即时通讯功能的应用程序的操作界面中。可选的,显示会话内容的操作界面和上述至少两个会话参与账户的标识的输入界面可以为相同或不同的操作界面。
如图6所示,可以在图6所示操作界面中显示查询结果,该查询结果包括查询到的与目标群聊会话的会话索引对应的会话记录的部分会话内容(可以具体为包括关键词的部分或全部会话内容)。如图6所示,该查询结果还可以包括:显示的会话内容所属的群聊会话的会话标识(如“群A”、“群B”、“群C”)、所查询的会话参与账户的标识“李四”、“王五”。
本公开为会话记录设置了包含会话参与账户的标识的会话索引,将会话记录与会话索引进行对应保存。这样,当服务器获得包含当前账户的标识以及会话参与账户的标识的会话记录查询请求时,服务器可以查找包括当前账户的标识和会话记录查询请求中的会话参与账户的标识的会话索引,进而可以查找到与索引对应的会话记录。可见,本公开的服务器可以根据会话记录查询请求,找到包含当前账户以及这些会话参与账户的群聊会话的会话记录,无需手动依次查找,省时省力且降低了客户端设备的运行负担。
可选的,如图2所示,在其他实施例中,图1所示步骤S12可以具体包括:
在步骤S121中,查询用户账户标识为当前账户的标识的各第一会话索引,将查询到的各第一会话索引中的会话标识确定为目标标识。
例如:目标标识有三个,分别为Q0001、Q0002、Q0003。
在步骤S122中,使用至少两个会话参与账户的标识,在包含目标标识的各会话索引中查询,获得目标群聊会话的会话标识。
其中,目标群聊会话的会话索引包括会话记录查询请求中各会话参与账户的标识。
在步骤S123中,将包含目标群聊会话的会话标识的第一会话索引,确定为目标群聊会话的会话索引。
由于存在不同账户的会话索引,因此本公开可以首先查找到当前账户的会话索引,即:查询用户账户标识为当前账户的标识的各第一会话索引。例如:对于本公开提供的会话索引的数据结构,本公开可以查询"uid"为当前账户的标识的各第一会话索引。在查询到各第一会话索引后,即可根据各第一会话索引中的会话标识获得当前账户所在的各群聊会话的会话标识。接着,本公开即可在这些群聊会话的会话索引中,查询同时包含会话记录查询请求中的各会话参与账户的标识的目标群聊会话的会话索引。
可见,图2所示方法实现了分步查询,通过这种分步查询方式,本公开可以有效降低查询的数据量,提高查询速度。
可选的,除根据上述至少两个会话参与账户的标识查询目标群聊会话的会话索引外,本公开还可以根据其他的会话信息(如会话建立时刻)来查询目标群聊会话的会话索引。
可选的,除通过会话信息查询目标群聊会话的会话索引外,本公开还可以根据除会话信息外的其他信息查询目标群聊会话的会话索引,如用于查询会话内容的关键词、会话内容的时间范围等。
可选的,如图3所示,在其他实施例中,图2所示步骤S122可以具体包括:
在步骤S1221中,在包含目标标识的各会话索引中,查找包含至少一个会话参与账户的标识的第二会话索引。
可选的,由于部分查询指令在查询时,只要有一项查询条件满足即作为查询结果,因此在实际应用中,本公开可以在包含目标标识的各会话索引中,查找包含至少一个会话参与账户的标识的第二会话索引;然后,再确定包含全部会话参与账户的标识的第二会话索引。
例如:步骤S1221可以通过查询命令“Select*from tb where uid in(B,C)andgroupId in(Q0001,Q0002,Q0003)”来查找包含至少一个会话参与账户的标识的第二会话索引。
上述查询命令中“tb”代表索引库名称,“uid”为用户账户标识的字段,“(B,C)”中的B和C分别为会话记录查询请求中的会话参与账户的标识,“groupId”为会话标识的字段,“(Q0001,Q0002,Q0003)”中的Q0001、Q0002、Q0003分别为目标标识(即各第一会话索引中的会话标识),则上述查询命令的含义为:从索引库tb中查询字段uid的值为B、C中的一个且字段groupId的值为Q0001、Q0002、Q0003中的一个的会话索引。
在步骤S1222中,确定包含全部会话参与账户的标识的第二会话索引,将确定的第二会话索引中的会话标识确定为目标群聊会话的会话标识。
通过图3所示方法,本公开可以首先查找包含至少一个会话参与账户的标识的第二会话索引,进而再确定包含全部会话参与账户的标识的第二会话索引。图3中步骤S1221和步骤S1222实现了会话索引的分步、精准查询,可以有效利用查询指令的查询特点。
可选的,在其他实施例中,步骤S1222可以具体包括:
将包括的会话标识相同的第二会话索引划分为一个索引组;
从各索引组中确定目标索引组,目标索引组中各第二会话索引的用户账户标识构成的标识组包括:会话记录查询请求所包括的各账户的标识;
将目标索引组中第二会话索引所包括的会话标识,确定为目标群聊会话的会话标识。
通过上述划分索引组可以使得对应同一群聊会话的各第二会话索引划分为一个索引组。若一个会话索引中的用户账户标识仅可以与一个值对应,则当一个索引组中各会话索引的用户账户标识分别为会话记录查询请求所包括的各账户的标识时,说明该索引组对应的群聊会话包括会话记录查询请求所包括的各账户(当前账户及至少两个会话参与账户),至此,即可确定该索引组对应的群聊会话即为目标群聊会话。本公开可以将该索引组中的会话索引所包括的会话标识,确定为目标群聊会话的会话标识。可见,通过上述分组和处理过程,本公开可以准确的确定目标群聊会话。
可选的,如图4所示,在其他实施例中,图1所示步骤S12可以具体包括:
在步骤S124中,查询用户账户标识为当前账户的标识的各第一会话索引。
其中,在一可选实施例中,步骤S124查询用户账户标识为当前账户的标识的各第一会话索引的过程,可以与步骤S121查询用户账户标识为当前账户的标识的各第一会话索引的过程相同,不再赘述。
在步骤S125中,在第一会话索引中查询包括各会话参与账户的标识的第三会话索引。
可选的,各会话参与账户的标识在会话索引中的字段为除用户账户标识外的其他字段。即:当前账户对应的字段和各会话参与账户对应的字段不同。如:当前账户对应的字段为uid,各会话参与账户对应的字段为member。此时,本公开步骤S124和步骤S125可以通过一条或多条查询指令来实现会话索引的查询。例如:本公开可以通过一条查询指令实现步骤S124和步骤S125的处理,该查询指令可以为:“Select*from tb where uid in(A)andmember in(B,C)”,其中,上述查询命令中“tb”代表索引库名称,“uid”为用户账户标识的字段,“(A)”中的A为当前账户的标识。member为会话参与账户的标识的字段,“(B,C)”中的B和C分别为会话记录查询请求中的会话参与账户的标识,则上述查询命令的含义为:从索引库tb中查询字段uid为A且字段member为B、C中的一个的会话索引。
在步骤S126中,将第三会话索引确定为目标群聊会话的会话索引。
通过图4所示方法,本公开可以通过较少的查询指令查询得到目标群聊会话的会话索引,可以适用于能够直接通过查询指令查询会话参与账户的标识的字段的应用环境。
可选的,本公开可以在会话建立时分别为会话中所有会话参与方建立新会话索引。具体的,本公开可以在会话建立时为当前账户建立包括当前账户的标识和会话信息的会话索引。但是,某些情况下,会话索引可能会被删除或由于某些原因丢失,这种情况下,本公开可以创建新会话索引,以使得会话记录可以正常存储。
在其他实施例中,当有人加入群聊会话时,本公开可以为新加入的人创建一个新会话索引。
可选的,在其他实施例中,本公开实施例提供的任一种会话记录查询方法,还可以包括:
在满足条件一或条件二的情况下,为当前账户创建目标群聊会话的会话索引;
其中,条件一为:目标群聊会话为新建的群聊会话;
条件二为:当前账户为新加入目标群聊会话的账户。
其,创建的会话索引可以包括当前账户的标识以及群聊会话的会话信息。在创建会话索引后,该群聊会话中后续的会话内容可以和该会话索引对应保存。可选的,会话内容之前的会话索引以及对应的会话记录可以继续保留。通过上述会话索引的创建,本公开可以及时为新加入的账户以及新建的群聊会话中各账户创建相对应的会话索引,以用于后续对该会话索引进行查询和使用。
可选的,在其他实施例中,本公开实施例提供的任一种会话记录查询方法,还可以包括:
在满足条件三或条件四的情况下,删除为当前账户创建的、目标群聊会话的会话索引;
其中,条件三为:目标群聊会话为解散的群聊会话;
条件四为:当前账户退出目标群聊会话。
可选的,上述删除的会话索引是当前账户参与的群聊会话的会话记录所对应的会话索引。
通过上述会话索引的删除,本公开可以及时清除多余的会话索引,有效节省了存储控件和会话记录查询的计算量。
图7是根据一示例性实施例示出的一种会话记录查询装置框图。参照图7,该装置包括请求接收单元121,索引查询单元122和响应确定单元123。
该请求接收单元121,被配置为执行接收当前账户对目标群聊会话的会话记录查询请求,会话记录查询请求中至少包括:当前账户的标识和目标群聊会话的会话信息,其中,目标群聊会话的会话信息至少包括:目标群聊会话中、除当前账户外的至少两个会话参与账户的标识;
该索引查询单元122,被配置为执行根据当前账户的标识以及目标群聊会话的会话信息,查询目标群聊会话的会话索引;
该响应确定单元123,被配置为执行将与目标群聊会话的会话索引对应的会话记录作为对会话记录查询请求的响应。
在一可选实施例中,索引查询单元122可以包括:
第一查询子单元,被配置为执行查询用户账户标识为当前账户的标识的各第一会话索引,将查询到的各第一会话索引中的会话标识确定为目标标识;
第二查询子单元,被配置为执行使用至少两个会话参与账户的标识,在包含目标标识的各会话索引中查询,获得目标群聊会话的会话标识;
第一确定子单元,被配置为执行将包含目标群聊会话的会话标识的第一会话索引,确定为目标群聊会话的会话索引。
在一可选实施例中,第二查询子单元,包括:
查找子单元,被配置为执行在包含目标标识的各会话索引中,查找包含至少一个会话参与账户的标识的第二会话索引;
第二确定子单元,被配置为执行确定包含全部会话参与账户的标识的第二会话索引,将确定的第二会话索引中的会话标识确定为目标群聊会话的会话标识。
在一可选实施例中,第二确定子单元,包括:
划分子单元,被配置为执行将包括的会话标识相同的第二会话索引划分为一个索引组;
索引组确定子单元,被配置为执行从各索引组中确定目标索引组,目标索引组中各第二会话索引的用户账户标识构成的标识组包括:会话记录查询请求所包括的各账户的标识;
第三确定子单元,被配置为执行将目标索引组中第二会话索引所包括的会话标识,确定为目标群聊会话的会话标识。
在一可选实施例中,索引查询单元122,包括:
第三查询子单元,被配置为执行查询用户账户标识为当前账户的标识的各第一会话索引;
第四查询子单元,被配置为执行在第一会话索引中查询包括各会话参与账户的标识的第三会话索引;
索引确定子单元,被配置为执行将第三会话索引确定为目标群聊会话的会话索引。
在一可选实施例中,本公开实施例提供的会话记录查询装置还包括:索引创建单元,被配置为执行在满足条件一或条件二的情况下,为当前账户创建目标群聊会话的会话索引;
其中,条件一为:目标群聊会话为新建的群聊会话;
条件二为:当前账户为新加入目标群聊会话的账户。
在一可选实施例中,本公开实施例提供的会话记录查询装置还包括:索引删除单元,被配置为执行在满足条件三或条件四的情况下,删除为当前账户创建的、目标群聊会话的会话索引;
其中,条件三为:目标群聊会话为解散的群聊会话;
条件四为:当前账户退出目标群聊会话。
关于上述实施例中的装置,其中各个单元执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
图8是根据一示例性实施例示出的一种服务器的框图。如图8所示,该服务器800可以包括:
处理器820;
用于存储处理器820可执行指令的存储器804;
其中,处理器820被配置为执行指令,以实现本公开实施例提供的任一种会话记录查询方法。
在示例性实施例中,还提供了一种计算机可读存储介质,当计算机可读存储介质中的指令由服务器800的处理器820执行时,使得服务器800能够执行本公开实施例提供的任一种会话记录查询方法。可选地,计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
在示例性实施例中,还提供了一种计算机程序产品,包括计算机程序,计算机程序被处理器执行时实现本公开实施例提供的任一种会话记录查询方法。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
Claims (10)
1.一种会话记录查询方法,应用于服务器,其特征在于,包括:
接收当前账户对目标群聊会话的会话记录查询请求,所述会话记录查询请求中至少包括:所述当前账户的标识和所述目标群聊会话的会话信息,其中,所述目标群聊会话的会话信息至少包括:所述目标群聊会话中、除所述当前账户外的至少两个会话参与账户的标识;
根据所述当前账户的标识以及所述目标群聊会话的会话信息,查询所述目标群聊会话的会话索引;
将与所述目标群聊会话的会话索引对应的会话记录作为对所述会话记录查询请求的响应。
2.根据权利要求1所述的方法,其特征在于,所述根据所述当前账户的标识以及所述目标群聊会话的会话信息,查询所述目标群聊会话的会话索引,包括:
查询用户账户标识为所述当前账户的标识的各第一会话索引,将查询到的各所述第一会话索引中的会话标识确定为目标标识;
使用所述至少两个会话参与账户的标识,在包含所述目标标识的各会话索引中查询,获得所述目标群聊会话的会话标识;
将包含所述目标群聊会话的会话标识的所述第一会话索引,确定为所述目标群聊会话的会话索引。
3.根据权利要求2所述的方法,其特征在于,所述使用所述至少两个会话参与账户的标识,在包含所述目标标识的各会话索引中查询,获得所述目标群聊会话的会话标识,包括:
在包含所述目标标识的各会话索引中,查找包含至少一个所述会话参与账户的标识的第二会话索引;
确定包含全部所述会话参与账户的标识的所述第二会话索引,将确定的所述第二会话索引中的会话标识确定为所述目标群聊会话的会话标识。
4.根据权利要求3所述的方法,其特征在于,所述确定包含全部所述会话参与账户的标识的所述第二会话索引,将确定的所述第二会话索引中的会话标识确定为所述目标群聊会话的会话标识,包括:
将包括的所述会话标识相同的所述第二会话索引划分为一个索引组;
从各所述索引组中确定目标索引组,所述目标索引组中各第二会话索引的用户账户标识构成的标识组包括:所述会话记录查询请求所包括的各账户的标识;
将所述目标索引组中所述第二会话索引所包括的会话标识,确定为所述目标群聊会话的会话标识。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在满足条件一或条件二的情况下,为所述当前账户创建所述目标群聊会话的会话索引;
其中,所述条件一为:所述目标群聊会话为新建的群聊会话;
所述条件二为:所述当前账户为新加入所述目标群聊会话的账户。
6.根据权利要求1或5所述的方法,其特征在于,所述方法还包括:
在满足条件三或条件四的情况下,删除为所述当前账户创建的、所述目标群聊会话的会话索引;
其中,所述条件三为:所述目标群聊会话为解散的群聊会话;
所述条件四为:所述当前账户退出所述目标群聊会话。
7.一种会话记录查询装置,应用于服务器,其特征在于,包括:
请求接收单元,被配置为执行接收当前账户对目标群聊会话的会话记录查询请求,所述会话记录查询请求中至少包括:所述当前账户的标识和所述目标群聊会话的会话信息,其中,所述目标群聊会话的会话信息至少包括:所述目标群聊会话中、除所述当前账户外的至少两个会话参与账户的标识;
索引查询单元,被配置为执行根据所述当前账户的标识以及所述目标群聊会话的会话信息,查询所述目标群聊会话的会话索引;
响应确定单元,被配置为执行将与所述目标群聊会话的会话索引对应的会话记录作为对所述会话记录查询请求的响应。
8.一种服务器,其特征在于,包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现如权利要求1至6中任一项所述的会话记录查询方法。
9.一种计算机可读存储介质,当所述计算机可读存储介质中的指令由服务器的处理器执行时,使得服务器能够执行如权利要求1至6中任一项所述的会话记录查询方法。
10.一种计算机程序产品,包括计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1-6任一项所述的会话记录查询方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011580314.5A CN112685537A (zh) | 2020-12-28 | 2020-12-28 | 会话记录查询方法、装置及相关设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011580314.5A CN112685537A (zh) | 2020-12-28 | 2020-12-28 | 会话记录查询方法、装置及相关设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112685537A true CN112685537A (zh) | 2021-04-20 |
Family
ID=75452756
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011580314.5A Pending CN112685537A (zh) | 2020-12-28 | 2020-12-28 | 会话记录查询方法、装置及相关设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112685537A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113259226A (zh) * | 2021-05-24 | 2021-08-13 | 北京达佳互联信息技术有限公司 | 信息同步方法、装置、电子设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103414628A (zh) * | 2013-07-17 | 2013-11-27 | 腾讯科技(深圳)有限公司 | 一种会话记录查阅方法及装置 |
CN105892810A (zh) * | 2016-03-30 | 2016-08-24 | 北京小米移动软件有限公司 | 消息显示方法及装置 |
CN108206776A (zh) * | 2016-12-20 | 2018-06-26 | 中移(杭州)信息技术有限公司 | 一种群组历史消息的查询方法和装置 |
CN111600730A (zh) * | 2020-05-18 | 2020-08-28 | 腾讯科技(深圳)有限公司 | 会话界面显示方法、群聊创建方法、装置及设备 |
CN111669313A (zh) * | 2020-05-29 | 2020-09-15 | 广西东信互联科技有限公司 | 一种即时通讯系统消息的储存及同步方法 |
-
2020
- 2020-12-28 CN CN202011580314.5A patent/CN112685537A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103414628A (zh) * | 2013-07-17 | 2013-11-27 | 腾讯科技(深圳)有限公司 | 一种会话记录查阅方法及装置 |
CN105892810A (zh) * | 2016-03-30 | 2016-08-24 | 北京小米移动软件有限公司 | 消息显示方法及装置 |
CN108206776A (zh) * | 2016-12-20 | 2018-06-26 | 中移(杭州)信息技术有限公司 | 一种群组历史消息的查询方法和装置 |
CN111600730A (zh) * | 2020-05-18 | 2020-08-28 | 腾讯科技(深圳)有限公司 | 会话界面显示方法、群聊创建方法、装置及设备 |
CN111669313A (zh) * | 2020-05-29 | 2020-09-15 | 广西东信互联科技有限公司 | 一种即时通讯系统消息的储存及同步方法 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113259226A (zh) * | 2021-05-24 | 2021-08-13 | 北京达佳互联信息技术有限公司 | 信息同步方法、装置、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11044286B2 (en) | Information exchange method and terminal | |
CN110601956B (zh) | 一种内容聚合方法、装置、计算机设备和存储介质 | |
TWI615792B (zh) | 會話內容合倂方法和系統 | |
WO2017186054A1 (zh) | 表情推荐方法及装置 | |
CA2816560C (en) | Content sharing interface for sharing content in social networks | |
CN113225572B (zh) | 直播间的页面元素展示方法、装置及系统 | |
WO2021017700A1 (zh) | 用于社交应用的信息展示装置、方法、展示终端和介质 | |
JP2017530448A (ja) | サービス処理方法、装置、及びサーバ | |
US10560416B2 (en) | Hero cards that display contextual information and actions for backend systems | |
JP7029003B2 (ja) | パスワード保護質問設定方法及び装置 | |
CN104980809A (zh) | 一种弹幕处理方法和装置 | |
CN110598103B (zh) | 一种内容聚合方法、装置、计算机设备和存储介质 | |
KR20170032448A (ko) | 데이터 정보 거래 방법 및 시스템 | |
WO2013026325A1 (zh) | 一种人物搜索方法、装置及存储介质 | |
CN103166828A (zh) | 社交网络的互操作方法及系统 | |
CN106470110B (zh) | 向用户列表中的多个用户群发消息的方法及装置 | |
TW201737681A (zh) | 即時通訊的實現方法和裝置 | |
CN112069410A (zh) | 一种消息处理方法、装置、设备及介质 | |
CN101699805A (zh) | 即时通讯软件内进行网络数据索引查询的方式 | |
US9182888B2 (en) | System, device and method for providing presence information using audio data | |
CN112685537A (zh) | 会话记录查询方法、装置及相关设备 | |
CN101188572A (zh) | 即时通讯软件内网络数据信息的查询方法 | |
US8949327B2 (en) | Method and device to provide trusted recommendations of websites | |
CN109408755A (zh) | 数据处理方法、装置、终端设备及计算机存储介质 | |
WO2021031941A1 (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 |