CN107453977A - 一种会话管理的方法及服务器 - Google Patents
一种会话管理的方法及服务器 Download PDFInfo
- Publication number
- CN107453977A CN107453977A CN201610387592.6A CN201610387592A CN107453977A CN 107453977 A CN107453977 A CN 107453977A CN 201610387592 A CN201610387592 A CN 201610387592A CN 107453977 A CN107453977 A CN 107453977A
- Authority
- CN
- China
- Prior art keywords
- group
- session
- terminal device
- user
- mark
- 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
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/1066—Session management
- H04L65/1069—Session establishment or de-establishment
-
- 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/046—Interoperability with other network applications or services
-
- 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
-
- 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/50—Network services
- H04L67/56—Provisioning of proxy services
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Business, Economics & Management (AREA)
- General Business, Economics & Management (AREA)
- Multimedia (AREA)
- Computer And Data Communications (AREA)
Abstract
一种会话管理的方法及服务器,所述方法包括:服务器接收终端设备发送的创建第一群的会话请求,所述会话请求中包含若干个会话对象的用户标识;根据所述会话请求判断在已建立的群中是否存在所述第一群,所述第一群为群成员包含所述若干个会话对象的用户标识以及所述终端设备对应的用户标识的群;若存在所述第一群,则将所述第一群的群组件返回给所述终端设备,以使所述终端设备显示所述第一群的群成员信息以及所述第一群的会话框。能够提高群会话的效率。
Description
技术领域
本发明涉及互联网通讯技术领域,尤其涉及一种会话管理的方法及服务器。
背景技术
目前,使用即时通讯工具进行通讯的用户日益增多,在企业内部,员工之间一般使用即时通讯(英文全称:Instant Messaging,英文简称:IM)工具进行通讯。
IM工具中的“群”是一种可以实现集体会话的途径,服务器在创建群时,会生成该群的唯一群标识(英文全称:Identify,英文简称:ID),并将该群的群成员与群ID关联,以及保存群ID,即可保证该群和群成员可以被重复查找和利用,例如IM工具设置了最近联系的群列表功能,可以在IM上显示用户最近联系的群列表,还可以将群加入到收藏或通讯录以便于用户下次快速找到。
用户需要向一批用户发送群信息时,一般先通过最近群列表、群收藏或者全部群列表等形式来找到这批用户是否已有群,若已有群即可直接点击已有群进入群会话,若没有群,需要向服务器请求创建一个新群。
但通过群收藏、群列表的方式,用户只能看到群名称,要查看某个群的群成员则需要打开该群,在群数量较多时,分别查看每个群的查找效率很低,并且恰好包括这批用户的群不一定存在,可能做无用功,进一步降低群会话的效率。
发明内容
本发明提供了一种会话管理的方法及服务器,能够解决现有技术中进行群会话的效率较低的问题。
第一方面提供一种会话管理的方法,所述方法包括:
接收终端设备发送的创建第一群的会话请求,所述会话请求中包含若干个会话对象的用户标识;
根据所述会话请求判断在已建立的群中是否存在所述第一群,所述第一群为群成员包含所述若干个会话对象的用户标识以及所述终端设备对应的用户标识的群;
若存在所述第一群,则将所述第一群的群组件返回给所述终端设备,以使所述终端设备显示所述第一群的群成员信息以及所述第一群的会话框。
本发明第二方面提供一种服务器,具有实现对应于上述第一方面提供的会话管理的方法的功能。所述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。硬件或软件包括一个或多个与上述功能相对应的模块,所述模块可以是软件和/或硬件。
一种可能的设计中,所述服务器包括:
接收模块,用于接收终端设备发送的创建第一群的会话请求,所述会话请求中包含若干个会话对象的用户标识;
处理模块,用于根据所述接收模块接收到的所述会话请求判断在已建立的群中是否存在所述第一群,所述第一群为群成员包含所述若干个会话对象的用户标识以及所述终端设备对应的用户标识的群;
发送模块,用于在所述处理模块确定存在所述第一群时,将所述第一群的群组件返回给所述终端设备,以使所述终端设备显示所述第一群的群成员信息以及所述第一群的会话框。
相较于现有技术,本发明提供的方案中,服务器接收到终端设备发送的会话请求后,确定会话请求所请求创建的群为已有的第一群时,将第一群的群组件返回给终端设备,使得终端设备无需考虑本次会话之前是否存在,也无需通过搜索、比对群成员等方式查找第一群,即可直接显示已有的第一群,从而提高查找效率。
附图说明
图1为本实施例中通信系统的场景示意图;
图2为本实施例中会话管理的方法的一种流程示意图;
图3为本实施例中会话框的一种窗口示意图;
图4为本实施例中会话管理的方法的另一种流程示意图;
图5为本实施例中显示历史记录的会话框的一种示意图;
图6为本实施例中在群列表中的特定群选择群会话的成员的一种示意图;
图7为本实施例中在已打开的群会话中选择部分群成员创建新的群会话的一种示意图;
图8为本实施例中显示图7中创建新的群会话的一种示意图;
图9为本实施例中现有机制中搜索相同群名称的群的一种示意图;
图10为本实施例中显示相同群名称中的特定群的一种示意图;
图11为本实施例中服务器的一种结构示意图;
图12为本实施例中服务器的另一种结构示意图。
具体实施方式
本发明实施例提供了一种会话管理的方法及服务器,用于即时通讯系统,能够提高群会话的效率。
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或模块的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或模块,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或模块,本文中所出现的模块的划分,仅仅是一种逻辑上的划分,实际应用中实现时可以有另外的划分方式,例如多个模块可以结合成或集成在另一个系统中,或一些特征可以忽略,或不执行,另外,所显示的或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,模块之间的间接耦合或通信连接可以是电性或其他类似的形式,本文中均不作限定。并且,作为分离部件说明的模块或子模块可以是也可以不是物理上的分离,可以是也可以不是物理模块,或者可以分布到多个电路模块中,可以根据实际的需要选择其中的部分或全部模块来实现本发明实施例方案的目的。
如图1所示,为本发明实施例中通信系统的一个场景示意图。所述通信系统包括服务器和至少两个终端设备。
其中,终端设备为安装了即时通讯工具的用户设备,例如安装了微信、QQ、易信、脸书(Facebook)、微博、推特(Twitter)等通讯应用或交互式应用,该终端设备可以是个人计算机、平板、智能手机或数字助理等能够发起点对点会话、群会话以及处理会话业务的设备。例如是可以向用户提供语音和/或数据连通性的设备,具有无线连接功能的手持式设备,具体安装的即时通讯工具的类型不作限定。
服务器为后台管理群的服务器,包括群管理模块和数据库,服务器能够配置群组件、群成员、群关系、群标识与群的哈希值之间的映射关系表、终端设备之间的通讯记录以及终端设备的收藏等群信息,并存储在数据库中,服务器能够响应网络上终端设备的会话请求,并向终端设备提供文件下载、通讯等业务服务,具体可用于管理群组件、群的查询及群的创建等业务。
服务器和终端设备通过网络进行数据交互,该服务器可以是后续实施例中描述的任一种可能的服务器,该服务器可以同时处理多个终端设备发起的会话请求。
为解决上述技术问题,本发明实施例主要提供以下技术方案:
服务器接收到终端设备发送的创建群的会话请求,根据会话请求携带的若干会话对象的用户标识在数据库中查找是否存在恰好包括这若干会话对象的目标群。
由于终端设备不需要通过比对成员、查找群列表等方式去查找群会话,所以对于终端设备来说,终端设备无论是通过请求创建群以找到已有的群,还是请求新创建群,都只需要将参与群会话的会话对象列表(例如用户标识)发送给服务器,故对于在后台处理群业务的服务器来说,则需要根据终端设备提供的用户标识去查找参与群会话的群是否存在。
若找到该目标群,则将该目标群的群组件返回给终端设备,使得终端设备能够直接弹出该群组件对应的目标群的窗口,例如该窗口可以是包括目标群的群成员列表、会话框的窗口。
其中,群组件为组成群的元素,例如指向会话框的对象指针、指向所述若干会话对象的对象指针、各类控件(如文本输入控件、按钮控件等)、会话框按钮、群的各元素的布局信息等,终端设备根据群组件即可在交互界面上显示对应的群的会话框。
请参照图2,为本发明实施例中会话管理的方法的一个实施例,本实施例包括:
101、终端设备向服务器发送创建第一群的会话请求。
所述会话请求中包含若干个会话对象的用户标识。
102、服务器接收终端设备发送的会话请求,根据所述会话请求判断在已建立的群中是否存在所述第一群。
所述第一群为群成员包含所述若干个会话对象的用户标识以及所述终端设备对应的用户标识的群。
上述判断过程主要分为下述(a)&(b)两种情况:
(a)、103-1、若存在所述第一群,则服务器将所述第一群的群组件返回给所述终端设备。
104-1、所述终端设备显示所述第一群的群成员信息以及所述第一群的会话框。
(b)、103-2、若不存在所述第一群,则服务器根据所述若干个会话对象创建第二群,并将所述第二群的群组件返回给所述终端设备。
所述第二群为群成员包含所述若干个会话对象的用户标识以及所述终端设备对应的用户标识的群;
104-2、所述终端设备显示所述第二群的群成员信息以及所述第二群的会话框。
其中,会话框可以包括群成员列表、会话显示区域、群名称、群公告等群信息,这些群信息由群组件实现,例如,会话框可以是如图3所示的业务群的会话框,该会话框中包括群名称、群号、群公告、群成员列表以及各功能图标等群属性,这些群属性由群组件实现,群属性中的图标位置、排列顺序和形状等排版形式由即时通讯工具的设计决定,本文不作限定。
本发明实施例中,服务器接收到终端设备发送的会话请求后,确定会话请求所请求创建的群为已有的第一群时,将第一群的群组件返回给终端设备,使得终端设备无需考虑本次群会话之前是否存在,也无需通过搜索、比对群成员等方式查找第一群,即可直接显示已有的第一群,从而提高查找效率。
另外,在确定不存在第一群时,服务器创建第二群,将第二群的群组件返回给终端设备,使得终端设备无需通过搜索、比对群成员等方式查找是否存在第一群,直接显示第二群。通过本方案,终端设备在向指定的成员发起会话时,无需考虑本次会话之前是否存在,有效提高群会话的效率,由于服务器处理能力强,将查找工作由服务器来做,能进一步提高查找效率。
可选的,在一些发明实施例中,为了提高查找的效率和准确度,服务器在创建每个群时,还可以采用哈希算法将各群成员的用户标识生成一个哈希值,然后建立并存储群标识和群的哈希值的对应关系,以方便后续能够快速的响应终端设备查找群的请求。另外,为减少终端设备侧查找特定群、或建立包含特定成员的临时会话组等繁琐的交互操作,对于终端设备的群会话需求,都可由服务器来完成这些查找群的操作。服务器在接收到终端设备发送的会话请求后,为实现准确的查找到第一群并呈现给终端设备,服务器具体需要执行以下步骤实现:
服务器计算所述若干个会话对象的用户标识的哈希值,并根据群标识和群的哈希值的对应关系,查询与所述哈希值匹配的群标识;
若查询到与所述哈希值匹配的群标识,则服务器确定存在所述第一群,然后将所述第一群的群组件返回给所述终端设备,使得所述终端设备在向所述若干个会话对象发送群消息时,显示所述第一群的群成员信息、以及所述第一群的会话框,并在所述第一群的会话框的会话显示区域中显示群消息。
若未查询到与所述哈希值匹配的群标识,则服务器确定不存在所述第一群,使得所述终端设备在向所述若干个会话对象发送群消息时,显示所述第二群的会话框,并在所述第二群的会话框的会话显示区域中显示群消息。
可选的,所述哈希算法为将任意长度的输入通过散列算法,变换成固定长度的输出,输出的值为散列值,使用散列值即可快速的按照关键词查找数据记录。包括消息摘要算法(英文全称:Message Digest Algorithm,英文简称:MD)2、MD4、MD5或安全散列算法(英文全称:Secure Hash Algorithm,英文简称:SHA-1)等不可逆的字符串变换算法中的一种。
可选的,在一些发明实施例中,为了减少服务器与终端设备的交互次数,以及提高查找群和创建群的效率,可以将参与群会话的群成员排序后再做哈希计算,将哈希计算得到的固定长度的字节字符串作为查找群的群索引,从而可以不用去直接对比群成员,尤其在群包含大量群成员时,通过该群索引即可实现快速查找、对比、匹配的目的。上述实施例中计算得到的所述哈希值可以是长度为a字节的字符串,a为正整数。
服务器计算所述若干个会话对象的用户标识的哈希值的具体过程如下:
服务器将所述若干个会话对象的用户标识中的各会话对象的用户标识按照字母顺序排序,也可以按照其他编码规则进行排序,具体排序的规则不限于按照字母顺序排序。
服务器使用哈希算法对按照字母排序后的会话对象的用户标识进行编码,得到长度为a字节的字符串,将所述长度为a字节的字符串作为所述第一群的群索引,然后服务器便可以直接通过第一群的群索引在数据库中查询是否存在对应的群标识,如果查询不到该第一群的群索引,那么表明终端设备请求创建的第一群并不存在,反之,则第一群存在。其中,a为正整数。
举例来说,如图4所示,例如,若干个会话对象的用户标识分别为:bill、ted、woody、tracy,先按照字母顺序对这4个用户标识排序为:bill、ted、tracy、woody,然后使用哈希算法对bill、ted、tracy、woody进行编码,编码得到的字符串为:62696c2c7465642c74726163792c776f6f6479,然后对该字符串进行md5hash变换,生成一个md5值,md5值为d3104fbce8d6d090f1e42d741042d35,然后根据md5值在数据库的群列表中查找群标识即会话标识(session_id),最终:查找到session_id为593138833。群列表为群标识与群的哈希值之间的映射关系表,可以是如下表所示的格式:
md5值 | session_id |
d3104fbce8d6d090f1e42d741042d35 | 593138833 |
…… | …… |
可以理解的是,不论用户标识的类型是汉字、英文、数字等各类文字或符号组成,还是其中的任意组合组成,都需要将用户标识经过编码转换为十六进制,便于计算哈希值。
可选的,在一些发明实施例中,由于终端设备的用户在需要向通讯录中的一批特定用户发起群会话时,可能会因为查找麻烦等原因直接创建一个新会话组,即使之前已经为这批特定用户创建过一个特定群A,也在该特定群A发送过群消息,但新会话组与该特定群A是两个独立的群,因此新会话组是没有延续该特定群A的群历史消息的,即这批特定用户在新会话组中的通讯记录与特定群A中的通讯记录是分离的,虽然原特定群A仍然可以继续使用,但在两者中发送的群消息是不会同步或合并的,即产生碎片群的现象,并且还可能出现多次建立仅包括这批特定用户的会话组,这样将产生更多的碎片群,不便于这批特定用户查阅群历史消息。
为解决碎片群的现象,本申请中,服务器在已建立的群中在查找到第一群时,可以直接将第一群的群组件返回给终端设备,使得终端设备可以直接弹出新会话组,可以理解的是,对于终端设备而言,在弹出的新会话组时,实质上打开的是之前创建过的第一群。并且,服务器在确定存在第一群后,服务器还可以获取第一群的历史群消息,然后将所述历史群消息发送至所述终端设备,使得所述终端设备在所述第一群的会话框的会话显示区域展示所述历史群消息。从而实现群历史消息的延续,杜绝碎片群的产生。
举例来说,如图5所示的测试群的会话框,该测试群的群号为586689,该测试群包括张工、李工、王工和曾工4个群成员,群公告为周三例会。例如,用户张工想发起一次群会话,但不想花时间去查找或比对是否曾经建立过过和李工、王工和曾工三人一起的会话群,故需要将包括李工、王工和曾工三人的用户ID发送给服务器,服务器接收到张工发送的李工、王工和曾工三人的用户ID后,根据张工的用户ID、以及李工、王工和曾工三人的用户ID生成一个md5值,然后去数据库中查找与该md5值匹配的群号,最终查询到群号为586689的测试群,表明这4人曾经建立过会话群,所以服务器直接在数据库中查找到之前存储的该测试群的历史记录,然后将该测试群的群组件和历史记录一同发送给张工,在张工的电脑上则会弹出该测试群的会话框,并且显示该测试群的群成员列表(张工、李工、王工和曾工),同时在弹出的测试群的会话框中显示历史记录。
可选的,在一些发明实施例中,终端设备可以在多种场景下发起创建群的会话请求,例如针对当前打开的特定群中的部分群成员创建一个新的群会话,还可以针对打开的群列表中的某个特定群的部分群成员创建一个新的群会话等。
举例来说,在所述会话请求是由所述终端设备针对特定群的部分或所有成员发起的会话请求时,如图6所示,用户曾工打开通讯录的群列表后,选择一个打开一个群名称为开发组的群,显示该开发组的群成员列表,然后从群成员列表中选择部分群成员如选择张工、李工和王工,向服务器发起新的群会话,服务器接收到曾工发送的创建新会话组的会话请求后,计算出md5值,如果查询到与该md5值匹配的群,则表明参与会话的成员以前曾经有过群会话,则何工的电脑可以根据服务器返回的群组件直接打开已有的群会话;若在数据库中未查询到与该md5值匹配的群,则表明张工、李工、王工和曾工4人之前并未建立过群会话,故服务器需要为这4人创建一个新群,并为新群生成一个群号,然后将新群的群组件返回给何工,使得何工的电脑上弹出新群的会话框,新群的会话框的群成员列表为张工、李工、王工和曾工4人,曾工可以在该新群内发送群消息,还可以设置群公告和群的群名称等操作。通过该方式,用户在需要进行群会话时,无需考虑是否存在已有群,也不需要打开群去查找群成员,另外,即使第一群存在,用户也无需考虑第一群由于长期没有群消息而从最近群列表中踢出,或靠后排导致不易查找等限制。
又举例来说,如图7所示,用户何工在已打开的PC调试群里选择部分群成员(张工、李工、王工和曾工),向服务器发起新的群会话。服务器接收到何工发送的创建新会话组的会话请求后,计算出md5值,如果查询到与该md5值匹配的群,则表明参与会话的成员以前曾经有过群会话,则何工的电脑可以根据服务器返回的群组件直接打开已有的群会话,即何工不需要通过搜索群名称以及打开群确认成员的方式来操作;若在数据库中未查询到与该md5值匹配的群,则表明何工、张工、李工、王工和曾工5人之前并未建立过群会话,故服务器需要为这5人创建一个新群,并为新群生成一个群号579268,然后将群号为579268的群的群组件返回给何工,使得何工的电脑上弹出群号为579268的群的会话框(如图8所示),并且弹出的会话框的群成员列表为何工、张工、李工、王工和曾工5人,何工可以在该群内发送群消息,还可以设置群公告,修改群的群名称等操作。
又举例来说,如图9,在两个以上的特定群的群名称相同时,所述会话请求是由所述终端设备针对所述两个以上的特定群中的一个特定群的部分或所有成员发起的会话请求。针对用户创建的新群为已有群的情况,若用户之前参与过多个群名称相同且群成员不等同的群会话,一般情况下,用户需要在搜索栏搜索群名称包括“搜索优化”的群,相应的,会搜索出三个群名称都为消息管理器搜索优化的群,但搜索出来的群只能显示群名称和群成员的数量,由图9可知,这三个群包含的成员不等同,用户还需要一个一个的打开群查看群成员后,才可以确认哪一个群是想要进行群会话的群,这样极大降低查找已有群的效率。
为了缩短查找群的时间,根据图10可知,用户向服务器发起创建新群的会话请求,服务器根据计算得到的md5值查找到用户要创建的群是包括4群成员的消息管理器搜索优化群后,将包括4群成员的消息管理器搜索优化群的群组件返回给用户,使得最终用户侧显示的群是包括4群成员的消息管理器搜索优化群,由于整个查找过程都不需要用户参与,明显提高用户的群会话的效率。
以上对本发明中一种会话管理方法进行说明,以下对执行上述会话管理的服务器进行描述。
参照图11,对服务器30进行说明,服务器30包括:
接收模块301,用于接收终端设备发送的创建第一群的会话请求,所述会话请求中包含若干个会话对象的用户标识;
处理模块302,用于根据所述接收模块301接收到的所述会话请求判断在已建立的群中是否存在所述第一群,所述第一群为群成员包含所述若干个会话对象的用户标识以及所述终端设备对应的用户标识的群;
发送模块303,用于在所述处理模块302确定存在所述第一群时,将所述第一群的群组件返回给所述终端设备,以使所述终端设备显示所述第一群的群成员信息以及所述第一群的会话框。
本发明实施例中,处理模块302在接收模块301接收到终端设备发送的会话请求后,确定会话请求所请求创建的群为已有的第一群时,通过发送模块303将第一群的群组件返回给终端设备,使得终端设备无需考虑本次会话之前是否存在,也无需通过搜索、比对群成员等方式查找第一群,即可直接显示已有的第一群,从而提高查找效率。
可选的,所述处理模块302还用于:
若不存在所述第一群,则根据所述若干个会话对象创建第二群,所述第二群为群成员包含所述若干个会话对象的用户标识以及所述终端设备对应的用户标识的群;
并通过所述发送模块303将所述第二群的群组件返回给所述终端设备,以使所述终端设备显示所述第二群的群成员信息以及所述第二群的会话框。
可选的,所述会话请求是由所述终端设备针对特定群的部分或所有成员发起的会话请求;
或,
在两个以上的特定群的群名称相同时,所述会话请求是由所述终端设备针对所述两个以上的特定群中的一个特定群的部分或所有成员发起的会话请求。
可选的,所述处理模块302具体用于:
计算所述若干个会话对象的用户标识的哈希值,并根据群标识和群的哈希值的对应关系,查询与所述哈希值匹配的群标识;
若查询到与所述哈希值匹配的群标识,则确定存在所述第一群;
若未查询到与所述哈希值匹配的群标识,则确定不存在所述第一群。
可选的,所述处理模块302还用于:
若存在所述第一群,则获取所述第一群的历史群消息;
通过所述发送模块303将所述历史群消息发送至所述终端设备,使得所述终端设备在所述第一群的会话框的会话显示区域展示所述历史群消息。
可选的,所述处理模块302在根据所述若干个会话对象创建第二群之后,通过所述发送模块303将第二群的群组件返回给所述终端设备之前,还用于:
保存所述第二群的群组件、以及第二群的群标识与所述哈希值的对应关系。
可选的,所述哈希值为长度为a字节的字符串;所述处理模块302具体用于:
将所述若干个会话对象的用户标识中的各会话对象的用户标识按照字母排序;
使用哈希算法对按照字母排序后的会话对象的用户标识进行编码,得到长度为a字节的字符串,将所述长度为a字节的字符串作为所述第一群的群索引,其中,a为正整数。
上面从模块化功能实体的角度对本发明实施例中的服务器进行了描述,下面从硬件处理的角度分别对本发明实施例中的服务器进行描述。需要说明的是,在本发明图11所示的实施例中的接收模块对应的实体设备可以为接收器,发送模块对应的实体设备可以为发射器,处理模块对应的实体设备可以为处理器。图11所示的装置可以具有如图12所示的结构,当图11所示的装置具有如图12所示的结构时,图12中的处理器、发射器和接收器能够实现前述对应该装置的装置实施例提供的处理模块、发送模块和接收模块相同或相似的功能,图12中的存储器存储处理器执行上述会话管理的方法时需要调用的程序代码。
请参阅图12,本发明实施例中的服务器40包括:
接收器401、发射器402、处理器403和存储器404(其中处理器403的数量可以一个或多个,图12中以一个处理器403为例)。
在本发明的一些实施例中,接收器401、发射器402、处理器403和存储器404可通过总线或其它方式连接,其中,图12中以通过总线连接为例。
本发明实施例涉及的服务器可以具有比图12所示出的更多或更少的部件,可以组合两个或更多个部件,或者可以具有不同的部件配置或设置,各个部件可以在包括一个或多个信号处理和/或专用集成电路在内的硬件、软件或硬件和软件的组合实现。
其中,通过调用存储器404存储的操作指令,处理器403用于执行如下步骤:
通过接收器401接收终端设备发送的创建第一群的会话请求,所述会话请求中包含若干个会话对象的用户标识;
根据接收器401接收到的所述会话请求判断在已建立的群中是否存在所述第一群,所述第一群为群成员包含所述若干个会话对象的用户标识以及所述终端设备对应的用户标识的群;
在确定存在所述第一群时,通过发射器402将所述第一群的群组件返回给所述终端设备,以使所述终端设备显示所述第一群的群成员信息以及所述第一群的会话框。
可选的,处理器403具体用于执行如下步骤:
若不存在所述第一群,则根据所述若干个会话对象创建第二群,所述第二群为群成员包含所述若干个会话对象的用户标识以及所述终端设备对应的用户标识的群;
并通过发射器402将所述第二群的群组件返回给所述终端设备,以使所述终端设备显示所述第二群的群成员信息以及所述第二群的会话框。
可选的,处理器403具体用于执行如下步骤:
计算所述若干个会话对象的用户标识的哈希值,并根据群标识和群的哈希值的对应关系,查询与所述哈希值匹配的群标识;
若查询到与所述哈希值匹配的群标识,则确定存在所述第一群;
若未查询到与所述哈希值匹配的群标识,则确定不存在所述第一群。
可选的,处理器403还用于执行如下步骤:
若存在所述第一群,则获取所述第一群的历史群消息;
通过发射器402将所述历史群消息发送至所述终端设备,使得所述终端设备在所述第一群的会话框的会话显示区域展示所述历史群消息。
可选的,处理器403在根据所述若干个会话对象创建第二群之后,通过发射器402将第二群的群组件返回给所述终端设备之前,还用于执行如下步骤:
保存所述第二群的群组件、以及第二群的群标识与所述哈希值的对应关系。
可选的,所述哈希值为长度为a字节的字符串;处理器403具体用于执行如下步骤:
将所述若干个会话对象的用户标识中的各会话对象的用户标识按照字母排序;
使用哈希算法对按照字母排序后的会话对象的用户标识进行编码,得到长度为a字节的字符串,将所述长度为a字节的字符串作为所述第一群的群索引,其中,a为正整数。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(英文全称:Read-Only Memory,英文简称:ROM)、随机存取存储器(英文全称:RandomAccess Memory,英文简称:RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上对本发明所提供的技术方案进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (15)
1.一种会话管理的方法,其特征在于,所述方法包括:
接收终端设备发送的创建第一群的会话请求,所述会话请求中包含若干个会话对象的用户标识;
根据所述会话请求判断在已建立的群中是否存在所述第一群,所述第一群为群成员包含所述若干个会话对象的用户标识以及所述终端设备对应的用户标识的群;
若存在所述第一群,则将所述第一群的群组件返回给所述终端设备,以使所述终端设备显示所述第一群的群成员信息以及所述第一群的会话框。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
若不存在所述第一群,则根据所述若干个会话对象创建第二群,所述第二群为群成员包含所述若干个会话对象的用户标识以及所述终端设备对应的用户标识的群;
并将所述第二群的群组件返回给所述终端设备,以使所述终端设备显示所述第二群的群成员信息以及所述第二群的会话框。
3.根据权利要求2所述的方法,其特征在于,所述根据所述会话请求判断在已建立的群中是否存在第一群包括:
计算所述若干个会话对象的用户标识的哈希值,并根据群标识和群的哈希值的对应关系,查询与所述哈希值匹配的群标识;
若查询到与所述哈希值匹配的群标识,则确定存在所述第一群;
若未查询到与所述哈希值匹配的群标识,则确定不存在所述第一群。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
若存在所述第一群,则获取所述第一群的历史群消息;
将所述历史群消息发送至所述终端设备,使得所述终端设备在所述第一群的会话框的会话显示区域展示所述历史群消息。
5.根据权利要求3或4所述的方法,其特征在于,所述根据所述若干个会话对象创建第二群之后,所述将第二群的群组件返回给所述终端设备之前,所述方法还包括:
保存所述第二群的群组件、以及第二群的群标识与所述哈希值的对应关系。
6.根据权利要求3或4所述的方法,其特征在于,所述哈希值为长度为a字节的字符串;所述计算所述若干个会话对象的用户标识的哈希值,包括:
将所述若干个会话对象的用户标识中的各会话对象的用户标识按照字母排序;
使用哈希算法对按照字母排序后的会话对象的用户标识进行编码,得到长度为a字节的字符串,将所述长度为a字节的字符串作为所述第一群的群索引,其中,a为正整数。
7.根据权利要求6所述的方法,其特征在于,所述哈希算法包括消息摘要算法MD2、MD4、MD5或加密算法SHA-1中的一种。
8.根据权利要求1所述的方法,其特征在于,所述会话请求是由所述终端设备针对特定群的部分或所有成员发起的会话请求;
或,
在两个以上的特定群的群名称相同时,所述会话请求是由所述终端设备针对所述两个以上的特定群中的一个特定群的部分或所有成员发起的会话请求。
9.一种服务器,其特征在于,所述服务器包括:
接收模块,用于接收终端设备发送的创建第一群的会话请求,所述会话请求中包含若干个会话对象的用户标识;
处理模块,用于根据所述接收模块接收到的所述会话请求判断在已建立的群中是否存在所述第一群,所述第一群为群成员包含所述若干个会话对象的用户标识以及所述终端设备对应的用户标识的群;
发送模块,用于在所述处理模块确定存在所述第一群时,将所述第一群的群组件返回给所述终端设备,以使所述终端设备显示所述第一群的群成员信息以及所述第一群的会话框。
10.根据权利要求9所述的服务器,其特征在于,所述处理模块还用于:
若不存在所述第一群,则根据所述若干个会话对象创建第二群,所述第二群为群成员包含所述若干个会话对象的用户标识以及所述终端设备对应的用户标识的群;
并通过所述发送模块将所述第二群的群组件返回给所述终端设备,以使所述终端设备显示所述第二群的群成员信息以及所述第二群的会话框。
11.根据权利要求10所述的服务器,其特征在于,所述处理模块具体用于:
计算所述若干个会话对象的用户标识的哈希值,并根据群标识和群的哈希值的对应关系,查询与所述哈希值匹配的群标识;
若查询到与所述哈希值匹配的群标识,则确定存在所述第一群;
若未查询到与所述哈希值匹配的群标识,则确定不存在所述第一群。
12.根据权利要求11所述的服务器,其特征在于,所述处理模块还用于:
若存在所述第一群,则获取所述第一群的历史群消息;
通过所述发送模块将所述历史群消息发送至所述终端设备,使得所述终端设备在所述第一群的会话框的会话显示区域展示所述历史群消息。
13.根据权利要求11或12所述的服务器,其特征在于,所述处理模块在根据所述若干个会话对象创建第二群之后,通过所述发送模块将第二群的群组件返回给所述终端设备之前,还用于:
保存所述第二群的群组件、以及第二群的群标识与所述哈希值的对应关系。
14.根据权利要求11或12所述的服务器,其特征在于,所述哈希值为长度为a字节的字符串;所述处理模块具体用于:
将所述若干个会话对象的用户标识中的各会话对象的用户标识按照字母排序;
使用哈希算法对按照字母排序后的会话对象的用户标识进行编码,得到长度为a字节的字符串,将所述长度为a字节的字符串作为所述第一群的群索引,其中,a为正整数。
15.根据权利要求9所述的服务器,其特征在于,所述会话请求是由所述终端设备针对特定群的部分或所有成员发起的会话请求;
或,
在两个以上的特定群的群名称相同时,所述会话请求是由所述终端设备针对所述两个以上的特定群中的一个特定群的部分或所有成员发起的会话请求。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610387592.6A CN107453977A (zh) | 2016-06-01 | 2016-06-01 | 一种会话管理的方法及服务器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610387592.6A CN107453977A (zh) | 2016-06-01 | 2016-06-01 | 一种会话管理的方法及服务器 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107453977A true CN107453977A (zh) | 2017-12-08 |
Family
ID=60486083
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610387592.6A Pending CN107453977A (zh) | 2016-06-01 | 2016-06-01 | 一种会话管理的方法及服务器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107453977A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110391963A (zh) * | 2018-04-17 | 2019-10-29 | 成都野望数码科技有限公司 | 一种群组重合度的确定方法及装置 |
CN112307015A (zh) * | 2019-07-31 | 2021-02-02 | 腾讯科技(深圳)有限公司 | 一种数据更新的方法以及相关装置 |
CN112383466A (zh) * | 2020-11-10 | 2021-02-19 | 中国建设银行股份有限公司 | 一种多场景聊天的方法和装置 |
CN113760568A (zh) * | 2021-01-04 | 2021-12-07 | 北京沃东天骏信息技术有限公司 | 数据处理的方法和装置 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101075991A (zh) * | 2007-06-12 | 2007-11-21 | 腾讯科技(深圳)有限公司 | 实现多议题讨论组及接收消息的方法、客户端与服务器 |
CN101102286A (zh) * | 2006-07-05 | 2008-01-09 | 阿里巴巴公司 | 一种在即时通信系统中引用用户信息的方法及装置 |
CN101159712A (zh) * | 2007-11-20 | 2008-04-09 | 腾讯科技(深圳)有限公司 | 基于即时通讯工具实现协同设计的方法、系统和设备 |
CN101163118A (zh) * | 2007-11-30 | 2008-04-16 | 腾讯科技(深圳)有限公司 | 一种多个im用户实时共享对象的方法和装置 |
CN101227425A (zh) * | 2007-12-25 | 2008-07-23 | 腾讯科技(深圳)有限公司 | 获取历史消息、反馈历史消息的方法、客户端及系统 |
CN102835134A (zh) * | 2010-01-14 | 2012-12-19 | 捷讯研究有限公司 | 用于减少消息信令的系统和方法 |
US20130110946A1 (en) * | 2011-10-28 | 2013-05-02 | Blether Labs LLC | Ad hoc group chat using a social networking service |
CN104579708A (zh) * | 2014-12-26 | 2015-04-29 | 北京奇虎科技有限公司 | 一种群组加入方法和装置 |
-
2016
- 2016-06-01 CN CN201610387592.6A patent/CN107453977A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101102286A (zh) * | 2006-07-05 | 2008-01-09 | 阿里巴巴公司 | 一种在即时通信系统中引用用户信息的方法及装置 |
CN101075991A (zh) * | 2007-06-12 | 2007-11-21 | 腾讯科技(深圳)有限公司 | 实现多议题讨论组及接收消息的方法、客户端与服务器 |
CN101159712A (zh) * | 2007-11-20 | 2008-04-09 | 腾讯科技(深圳)有限公司 | 基于即时通讯工具实现协同设计的方法、系统和设备 |
CN101163118A (zh) * | 2007-11-30 | 2008-04-16 | 腾讯科技(深圳)有限公司 | 一种多个im用户实时共享对象的方法和装置 |
CN101227425A (zh) * | 2007-12-25 | 2008-07-23 | 腾讯科技(深圳)有限公司 | 获取历史消息、反馈历史消息的方法、客户端及系统 |
CN102835134A (zh) * | 2010-01-14 | 2012-12-19 | 捷讯研究有限公司 | 用于减少消息信令的系统和方法 |
US20130110946A1 (en) * | 2011-10-28 | 2013-05-02 | Blether Labs LLC | Ad hoc group chat using a social networking service |
CN104579708A (zh) * | 2014-12-26 | 2015-04-29 | 北京奇虎科技有限公司 | 一种群组加入方法和装置 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110391963A (zh) * | 2018-04-17 | 2019-10-29 | 成都野望数码科技有限公司 | 一种群组重合度的确定方法及装置 |
CN112307015A (zh) * | 2019-07-31 | 2021-02-02 | 腾讯科技(深圳)有限公司 | 一种数据更新的方法以及相关装置 |
CN112307015B (zh) * | 2019-07-31 | 2023-11-03 | 腾讯科技(深圳)有限公司 | 一种数据更新的方法以及相关装置 |
CN112383466A (zh) * | 2020-11-10 | 2021-02-19 | 中国建设银行股份有限公司 | 一种多场景聊天的方法和装置 |
CN112383466B (zh) * | 2020-11-10 | 2023-02-24 | 中国建设银行股份有限公司 | 一种多场景聊天的方法和装置 |
CN113760568A (zh) * | 2021-01-04 | 2021-12-07 | 北京沃东天骏信息技术有限公司 | 数据处理的方法和装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110601956B (zh) | 一种内容聚合方法、装置、计算机设备和存储介质 | |
US7822761B2 (en) | Groupware system with improved contact data handling | |
US7490132B1 (en) | System allowing participant in a chat session to use either private tag or public tag to manage chat histories | |
CN100438432C (zh) | 一种集成多个即时通信账户的方法和系统 | |
CN105701096A (zh) | 索引生成方法、数据查询方法、装置及系统 | |
WO2013026325A1 (zh) | 一种人物搜索方法、装置及存储介质 | |
CN107453977A (zh) | 一种会话管理的方法及服务器 | |
CN110598103B (zh) | 一种内容聚合方法、装置、计算机设备和存储介质 | |
CN103902535A (zh) | 获取联想词的方法、装置及系统 | |
CN107168599B (zh) | 一种即时通信方法和装置 | |
CN109213758B (zh) | 数据存取方法、装置、设备及计算机可读存储介质 | |
CN107766393A (zh) | 基于数据库的信息处理方法、客户端及服务器 | |
CN108353018A (zh) | 发送消息的方法、设备和系统 | |
CN111625552A (zh) | 数据收集方法、装置、设备和可读存储介质 | |
CN113326363B (zh) | 搜索方法及装置、预测模型训练方法及装置、电子设备 | |
CN113300933A (zh) | 会话内容的管理方法、装置、计算机设备和可读存储介质 | |
CN105991403A (zh) | 一种基于即时通讯的多媒体分享方法及装置 | |
CN109408755A (zh) | 数据处理方法、装置、终端设备及计算机存储介质 | |
CN113114557B (zh) | 消息发送方法、装置、电子设备及存储介质 | |
CN115357765A (zh) | 数据搜索方法、装置、电子设备以及存储介质 | |
CN116263770A (zh) | 基于数据库的业务数据存储方法、装置、终端设备及介质 | |
CN110730323B (zh) | 会议交互信息处理方法、装置、计算机装置及存储介质 | |
CN111695031A (zh) | 基于标签的搜索方法、装置、服务器及存储介质 | |
US20140089438A1 (en) | Method and device for processing information | |
CN117762950B (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20171208 |