CN103259715B - 一种管理多人会话的方法、装置及系统 - Google Patents
一种管理多人会话的方法、装置及系统 Download PDFInfo
- Publication number
- CN103259715B CN103259715B CN201310178962.1A CN201310178962A CN103259715B CN 103259715 B CN103259715 B CN 103259715B CN 201310178962 A CN201310178962 A CN 201310178962A CN 103259715 B CN103259715 B CN 103259715B
- Authority
- CN
- China
- Prior art keywords
- request message
- message
- client
- group
- 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.)
- Active
Links
Landscapes
- Information Transfer Between Computers (AREA)
- Telephonic Communication Services (AREA)
Abstract
本发明实施例公开了一种管理多人会话的方法、装置及系统,涉及通信领域,用以减小对服务器的配置要求。本发明实施例提供的方法,包括:第二成员在第二用户设备上所登录的第二客户端接收请求消息,请求消息携带的信息包括:请求消息的消息类型、请求消息对应的会话组的标识和会话组内成员的标识;请求消息由第一成员所登录的第一客户端生成并发送至服务器后,由服务器根据会话组内成员的标识转发给第二客户端;第二客户端根据请求消息的消息类型、请求消息对应的会话组的标识和会话组内成员的标识,执行相应的动作。
Description
技术领域
本发明涉及通信领域,尤其涉及一种管理多人会话的方法、装置及系统。
背景技术
即时通讯(Instant Messaging,简称IM)是一种基于互联网的即时交流消息的业务,允许两人或多人通过网路即时地传递文字信息、语音信息、视频信息等,以快速便捷的特点得到广大用户的支持,典型的即时通信应用软件有:QQ、微信、飞信、沃友、来聊等。
多人会话,是IM的一种表现形式,又叫临时群、聊吧等。目前,一般采用基于服务器的方法管理会话,即服务器根据存储的会话本身的数据以及会话成员列表数据与客户端进行信令交互,从而管理会话,例如:创建会话列表、解散会话列表、邀请成员、踢出成员等。
在上述实现管理会话的过程中,发明人发现现有技术中至少存在如下问题:由于服务器根据存储的会话本身的数据以及会话成员列表数据与客户端进行信令交互,从而管理会话,当用户量较大时,例如,当用户量达到千万级别时,服务器端的数据存储量和计算压力会成倍增加,导致对服务器的配置要求过高。
发明内容
本发明的实施例提供一种管理多人会话的方法、装置和系统,用以减小对服务器的配置要求。
为达到上述目的,本发明的实施例采用如下技术方案:
第一方面,提供一种管理多人会话的方法,包括:
第二成员所登录的第二客户端接收请求消息,所述请求消息携带的信息包括:所述请求消息的消息类型、所述请求消息对应的会话组的标识和所述会话组内成员的标识;所述请求消息由第一成员所登录的第一客户端生成并发送至服务器后,由服务器根据所述会话组内成员的标识转发给所述第二客户端;
所述第二客户端根据所述请求消息的消息类型、所述请求消息对应的会话组的标识和所述会话组内成员的标识,执行相应的动作。
结合第一方面,在第一种可能的实现方式中,在所述第二客户端未创建与所述请求消息对应的会话组的标识相匹配的会话组的情况下,所述第二客户端根据所述请求消息的消息类型、所述请求消息对应的会话组的标识和所述会话组内成员的标识,执行相应的动作,包括:
所述第二客户端根据所述请求信息对应的会话组的标识和所述会话组内成员的标识,创建针对所述会话组的会话列表。
结合第一方面,在第二种可能的实现方式中,在所述第二客户端已创建与所述请求消息对应的会话组的标识相匹配的会话组的情况下,所述第二客户端根据所述请求消息的消息类型、所述请求消息对应的会话组的标识和所述会话组内成员的标识,执行相应的动作,包括:
若所述请求消息的消息类型为邀请新成员,则所述第二客户端根据所述请求消息更新针对所述会话组的会话列表;
或者,若所述请求消息的消息类型为踢出成员,所述请求消息携带的信息还包括被踢出成员的标识,则当所述第二成员为被踢出成员时,所述第二客户端根据所述请求消息删除针对所述会话组的会话列表和/或会话记录,或者,当所述第二成员为未被踢出的成员时,所述第二客户端根据所述请求消息更新针对所述会话组的会话列表;
或者,若所述请求消息的消息类型为退出会话,则所述第二客户端根据所述请求消息更新针对所述会话组的会话列表;
或者,若所述请求消息的消息类型为聊天,所述请求消息携带的信息还包括聊天内容,则所述第二客户端呈现所述第一成员的标识以及所述聊天内容。
结合第一方面,在第三种可能的实现方式中,所述请求消息携带的信息还包括:消息响应指示;在所述第二客户端根据所述请求消息的消息类型、所述请求消息对应的会话组的标识和所述会话组内成员的标识,执行相应的动作之后,所述方法还包括:
所述第二客户端按照所述消息响应指示,向所述第一客户端发送响应消息,所述响应消息携带的信息包括:所述第二成员的标识,所述响应消息的消息内容为是否完成相应动作;
当所述响应消息的消息内容为没有完成相应动作时,所述第二客户端通过所述服务器接收所述第一客户端发送的二次请求消息,所述二次请求消息携带的信息包括:所述请求消息所携带的信息、所述二次请求消息的对象为所述第二成员的标识。
结合第一方面、第一方面的第一种可能的实现方式至第三种可能的实现方式任一种,在第四种可能的实现方式中,在所述第二客户端没有针对所述会话组的会话列表的情况下,所述第二客户端根据所述请求消息的消息类型、所述请求消息对应的会话组的标识和所述会话组内成员的标识,执行相应的动作,还包括:
当所述请求消息的消息类型为踢出成员或者退出会话时,所述第二客户端丢弃所述请求消息。
结合第一方面、第一方面的第一种可能的实现方式或者第四种可能的实现方式任一种,在第五种可能的实现方式中,在所述第二客户端有针对所述会话组的会话列表的情况下,所述方法还包括:
如果所述第二客户端在预设时间内没有接收到针对所述会话组的请求消息,所述第二客户端删除针对所述会话组的会话列表及会话记录,或者当所述第二客户端的受限空间已满时,删除针对所述会话组的会话列表及会话记录;
或者,当再次接收到所述会话组内其他成员的所述请求消息时,所述第二客户端根据所述请求消息更新针对所述会话组的会话列表。
第二方面,提供一种管理多人会话的方法,包括:
服务器接收第一成员所登录的第一客户端发送的请求消息,所述请求消息携带的信息包括:所述请求消息的消息类型、所述请求消息对应的会话组的标识和所述会话组内成员的标识、所述请求消息的对象;
根据所述请求消息的对象和所述会话组内成员的标识,将所述请求消息发送给所述请求消息的对象所指示的、除所述第一成员之外的其他成员所登录的客户端,以使得所述其他成员所登录的客户端根据所述请求消息的消息类型、所述请求消息对应的会话组的标识和所述会话组内成员的标识执行相应的动作。
结合第二方面,在第一种可能的实现方式中,所述请求消息的消息类型为邀请新成员或者退出会话;
或者,所述请求消息的消息类型为踢出成员,所述请求消息携带的信息还包括所述请求消息的对象为被踢出成员的标识;
或者,所述请求消息的消息类型为聊天,所述请求消息携带的信息还包括聊天内容。
结合第二方面或者第二方面的第一种可能的实现方式,在第二种可能的实现方式中,所述请求消息携带的信息还包括:消息响应指示,所述方法还包括:
接收第二成员所登录的第二客户端发送的响应消息,所述响应消息携带的信息包括:所述第二成员的标识、所述响应消息的消息内容为是否完成相应动作;所述第二成员为所述会话组内除所述第一成员外的其他成员中的一个成员;
将所述响应消息发送给所述第一客户端。
结合第二方面的第二种可能的实现方式,在第三种可能的实现方式中,当所述响应消息的消息内容为否时,所述方法还包括:
接收所述第一客户端发送的二次请求消息;所述二次请求消息携带的信息包括:所述请求消息所携带的信息、所述二次请求消息的对象为所述第二成员的标识;
根据所述二次请求消息的对象将所述二次请求消息发送给所述第二成员所登陆的第二客户端。
第三方面,提供一种管理多人会话的装置,包括:
接收单元,用于接收请求消息,所述请求消息携带的信息包括:所述请求消息的消息类型、所述请求消息对应的会话组的标识和所述会话组内成员的标识;所述请求消息由第一成员所登录的第一客户端生成并发送至服务器后,由服务器根据所述会话组内成员的标识转发给所述接收单元;
处理单元,用于根据所述接收单元传输的所述请求消息的消息类型、所述请求消息对应的会话组的标识和所述会话组内成员的标识,执行相应的动作。
结合第三方面,在第一种可能的实现方式中,在所述装置未创建与所述请求消息对应的会话组的标识相匹配的会话组的情况下,所述处理单元具体用于,
根据所述请求信息对应的会话组的标识和所述会话组内成员的标识,创建针对所述会话组的会话列表。
结合第三方面,在第二种可能的实现方式中,在所述装置已创建与所述请求消息对应的会话组的标识相匹配的会话组的情况下,所述处理单元具体用于,
若所述请求消息的消息类型为邀请新成员,则根据所述请求消息更新针对所述会话组的会话列表;
或者,若所述请求消息的消息类型为踢出成员,所述请求消息携带的信息还包括被踢出成员的标识,则当在所述装置上登陆的第二成员为被踢出成员时,根据所述请求消息删除针对所述会话组的会话列表和/或会话记录,或者,当所述第二成员为未被踢出的成员时,根据所述请求消息更新针对所述会话组的会话列表;
或者,若所述请求消息的消息类型为退出会话,则根据所述请求消息更新针对所述会话组的会话列表;
或者,若所述请求消息的消息类型为聊天,所述请求消息携带的信息还包括聊天内容,则呈现所述第一成员的标识以及所述聊天内容。
结合第三方面,在第三种可能的实现方式中,所述请求消息携带的信息还包括:消息响应指示;所述装置还包括:
发送单元,用于按照所述消息响应指示,向所述第一客户端发送响应消息,所述响应消息携带的信息包括:在所述装置上登陆的第二成员的标识,所述响应消息的消息内容为是否完成相应动作;
所述接收单元还用于,当所述响应消息的消息内容为没有完成相应动作时,通过所述服务器接收所述第一客户端发送的二次请求消息,所述二次请求消息携带的信息包括:所述请求消息所携带的信息、二次请求消息的对象为所述第二成员的标识。
结合第三方面、第三方面的第一种可能的实现方式至第三种可能的实现方式任一种,在第四种可能的实现方式中,在所述装置没有针对所述会话组的会话列表的情况下,所述处理单元具体用于,
当所述请求消息的消息类型为踢出成员或者退出会话时,丢弃所述请求消息。
结合第三方面、第三方面的第一种可能的实现方式或者第四种可能的实现方式任一种,在第五种可能的实现方式中,
如果所述接收单元在预设时间内没有接收到针对所述会话组的请求消息,所述处理单元还用于,删除针对所述会话组的会话列表及会话记录,或者所述装置的受限空间已满时,删除针对所述会话组的会话列表及会话记录;
或者,当所述接收单元再次接收到所述会话组内其他成员的所述请求消息时,所述处理单元还用于,根据所述请求消息更新针对所述会话组的会话列表。
第四方面,提供一种服务器,包括:
接收单元,用于接收第一成员所登录的第一客户端发送的请求消息,所述请求消息携带的信息包括:所述请求消息的消息类型、所述请求消息对应的会话组的标识和所述会话组内成员的标识、所述请求消息的对象;
发送单元,用于根据所述接收单元传输的所述请求消息的对象和所述会话组内成员的标识,将所述请求消息发送给所述请求消息的对象所指示的、除所述第一成员之外的其他成员所登录的客户端,以使得所述其他成员所登录的客户端根据所述请求消息的消息类型、所述请求消息对应的会话组的标识和所述会话组内成员的标识执行相应的动作。
结合第四方面,在第一种可能的实现方式中,所述请求消息的消息类型为邀请新成员或者退出会话;
或者,所述请求消息的消息类型为踢出成员,所述请求消息携带的信息还包括所述请求消息的对象为被踢出成员的标识;
或者,所述请求消息的消息类型为聊天,所述请求消息携带的信息还包括聊天内容。
结合第四方面或者第四方面的第一种可能的实现方式,在第二种可能的实现方式中,所述请求消息携带的信息还包括:消息响应指示,
所述接收单元还用于,接收第二成员所登录的第二客户端发送的响应消息,所述响应消息携带的信息包括:所述第二成员的标识、所述响应消息的消息内容为是否完成相应动作;所述第二成员为所述会话组内除所述第一成员外的其他成员中的一个成员;
所述发送单元还用于,将所述响应消息发送给所述第一客户端。
结合第四方面的第二种可能的实现方式,在第三种可能的实现方式中,当所述响应消息的消息内容为否时,所述接收单元还用于,
接收所述第一客户端发送的二次请求消息;所述二次请求消息携带的信息包括:所述请求消息所携带的信息、所述二次请求消息的对象为所述第二成员的标识;
所述发送单元还用于,根据所述二次请求消息的对象将所述二次请求消息发送给所述第二成员所登陆的第二客户端。
第五方面,提供一种管理多人会话的系统,包括:上述第三方面提供的任一种种管理多人会话的装置和/或上述第四方面提供的任一种服务器。
本发明实施例提供的管理多人会话的方法、装置和系统,第二客户端通过接收服务器从第一客户端仅转发得到的请求消息,并根据该请求消息作相应动作,实现了基于客户端管理会话,从而降低了对服务器的配置的要求,解决了现有技术中基于服务器管理会话导致的当用户量较大时,对服务器的配置要求过高的问题。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种管理多人会话的方法的示意图;
图2为本发明实施例提供的另一种管理多人会话的方法的示意图;
图3为本发明实施例提供的一种实现创建会话业务的方法的示意图;
图4为本发明实施例提供的一种实现邀请新成员业务的方法的示意图;
图5为本发明实施例提供的一种实现踢出新成员业务的方法的示意图;
图6为本发明实施例提供的一种实现退出会话业务的方法的示意图;
图7为本发明实施例提供的一种实现聊天业务的方法的示意图;
图8为本发明实施例提供的另一种实现退出会话业务的方法的示意图;
图9为本发明实施例提供的一种管理多人会话的装置的结构示意图;
图10为本发明实施例提供的另一种管理多人会话的装置的结构示意图;
图11为本发明实施例提供的另一种管理多人会话的装置的结构示意图;
图12为本发明实施例提供的另一种管理多人会话的装置的结构示意图;
图13为本发明实施例提供的一种服务器的结构示意图;
图14为本发明实施例提供的另一种服务器的结构示意图;
图15为本发明实施例提供的另一种管理多人会话的方法的示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行示例性描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
一方面,参见图1,为本发明实施例提供的一种管理多人会话的方法,包括:
101、第二成员所登录的第二客户端接收请求消息,所述请求消息携带的信息包括:所述请求消息的消息类型、所述请求消息对应的会话组的标识和所述会话组内成员的标识;所述请求消息由第一成员所登录的第一客户端生成并发送至服务器后,由服务器根据所述会话组内成员的标识转发给所述第二客户端;
示例性的,多人会话可以为即时通信业务,或者短信、彩信等传统业务。
任一成员在使用某一多人会话客户端的业务之前,需要在该客户端进行注册,成员的注册信息可以存储在服务器中,该注册信息可以包括该成员的鉴权数据以及该成员的个人信息(profile)。一个已注册成员可以在多个安装有该客户端的用户设备上登陆该客户端,同一个用户设备上可以同时安装一个或者多个该客户端,同一个安装有该客户端的用户设备上可以同时被一个或者多个成员登陆。为了更清楚地说明该方法,在本发明实施例中,将发送该请求消息的客户端称为第一客户端,将接收该请求消息的客户端称为第二客户端。以下实施例均以一个用户设备对应一个客户端,一个客户端对应一个成员进行说明。
登陆该客户端的成员可以通过网络建立会话组,该会话组的所有成员可以共同管理该会话。多人会话业务可以包括:创建会话组、邀请新成员、踢出成员、退出会话、聊天等。会话组的每个成员在执行上述管理多人会话业务时,需要向服务器发送请求消息。
请求消息携带的信息可以包括:请求消息的消息类型、请求消息对应的会话组的标识和会话组内成员的标识等。创建会话业务和邀请新成员业务对应的请求消息的消息类型为邀请新成员;踢出成员业务对应的请求消息的消息类型为踢出成员;退出会话业务对应的请求消息的消息类型为退出会话;聊天业务对应的请求消息的消息类型为聊天。另外,当请求消息的消息类型为踢出成员时,该请求消息携带的信息还可以包括:消息类型的对象,该消息类型的对象为被踢出的成员的标识;当请求消息的消息类型为聊天时,该请求消息携带的信息还可以包括:聊天内容。
在具体实现时,请求消息携带的信息可以分布在特定字节上,例如,请求消息所占的字节数为32,则可以再第1个字节上标记该请求消息的消息类型,在第2、3个字节上标记会话组内成员的标识,在第4-16字节上标记会话组内成员的标识,其他的为空余字节,或者用于标记其他信息等。其中,空余字节可以作如下应用,例如,当请求信息的消息类型为踢出成员时,可在第18字节上标记踢出成员的标识;当请求信息的消息类型为聊天时,可在第19-32字节上标记聊天内容。
会话组的标识可以为该会话组的账号或者其他可以唯一标识该会话组的特征的信息;会话组内成员的标识可以为该成员注册时的账号或者其他可以唯一标识该成员的特征的信息。
102、所述第二客户端根据所述请求消息的消息类型、所述请求消息对应的会话组的标识和所述会话组内成员的标识,执行相应的动作。
可选的,在所述第二客户端未创建与所述请求消息对应的会话组的标识相匹配的会话组的情况下,该步骤102可以包括:
所述第二客户端根据所述请求信息对应的会话组的标识和所述会话组内成员的标识,创建针对所述会话组的会话列表。
可选的,在所述第二客户端已创建与所述请求消息对应的会话组的标识相匹配的会话组的情况下,该步骤102可以包括以下几种情况:
1)若所述请求消息的消息类型为邀请新成员,则所述第二客户端根据所述请求消息更新针对所述会话组的会话列表;
2)若所述请求消息的消息类型为踢出成员,所述请求消息携带的信息还包括被踢出成员的标识,则当所述第二成员为被踢出成员时,所述第二客户端根据所述请求消息删除针对所述会话组的会话列表和/或会话记录,或者,当所述第二成员为未被踢出的成员时,所述第二客户端根据所述请求消息更新针对所述会话组的会话列表;
3)若所述请求消息的消息类型为退出会话,则所述第二客户端根据所述请求消息更新针对所述会话组的会话列表;
4)若所述请求消息的消息类型为聊天,所述请求消息携带的信息还包括聊天内容,则所述第二客户端呈现所述第一成员的标识以及所述聊天内容。
示例性的,以上几种情况的具体说明可以参见图3-图7所示的实施例。
进一步地,所述请求消息携带的信息还包括:消息响应指示;在步骤102之后,该方法还可以包括:
所述第二客户端按照所述消息响应指示,向所述第一客户端发送响应消息,所述响应消息携带的信息包括:所述第二成员的标识,所述响应消息的消息内容为是否完成相应动作;
当所述响应消息的消息内容为没有完成相应动作时,所述第二客户端通过所述服务器接收所述第一客户端发送的二次请求消息,所述二次请求消息携带的信息包括:所述请求消息所携带的信息、所述二次请求消息的对象为所述第二成员的标识。
示例性的,当服务器将该请求消息发送给第二客户端时,第二客户端可能接收到了该请求消息,但是并没有执行相应动作。为了增加业务的可靠性,第一客户端在给第二客户端发送的请求消息可以携带该消息响应信息,使得每个第二客户端分别向第一客户端发送响应消息,从而使得第一客户端知晓每个第二客户端的执行结果,进而采取有针对性的补救措施。具体的,二次请求消息携带的信息包含请求消息携带的信息,第一客户端向第二客户端发送二次请求消息,第二客户端根据二次请求消息再一次执行请求消息所指示的动作。
需要说明的是,在实际实现过程中,会话组内包含多个成员的标识,第一客户端生成的请求消息经服务器转发给多个成员所登录的客户端,接收该请求消息的多个客户端分别向第一客户端反馈响应消息,该响应消息携带的信息包含在该客户端上登录的成员的标识;第一客户端可以根据该成员的标识确定向哪个客户端发送二次请求消息。具体的,当第二客户端反馈的响应消息的消息内容为否时,第一客户端向根据该响应信息携带的第二成员的标识,向该第二成员所登陆的第二客户端发送二次请求消息。
当然,在实际应用过程中,可以根据对每种业务的可靠性的要求预先设置是否在该请求消息中携带消息响应信息,例如,若请求消息的类型为邀请新成员,则该请求消息中携带消息响应信息;若请求消息的类型为聊天,则该请求消息中不携带消息响应信息等。
进一步地,实际应用过程中,可能存在以下情况:一个成员先在第三客户端上登陆,随后又在第二客户端上登陆,且第二客户端上还未存储与接收到的请求消息包含的会话组标识相同的会话组。本实施例还提供了此情况下管理多人会话的方法。
具体的,在所述第二客户端没有针对所述会话组的会话列表的情况下,步骤102具体包括:
1)当所述请求消息的消息类型为邀请新成员时,所述第二客户端根据所述请求消息创建会话列表;
2)当所述请求消息的消息类型为聊天时,所述第二客户端根据所述请求消息创建会话列表,并呈现所述第一成员的标识以及聊天内容。
3)当所述请求消息的消息类型为踢出成员或者退出会话时,所述第二客户端丢弃所述请求消息。
示例性的,所述第二客户端丢弃所述请求消息具体为:忽略该请求消息,即第二客户端不根据该请求消息作任何动作。
假设接收到的请求消息包含的会话组标识为会话组甲,若该成员在登陆第三客户端的过程中,已经加入会话组甲,则该第一用户设备已经存储有该会话组甲的会话列表;此情况下,第二客户端可能接收到消息类型为邀请新成员、聊天、踢出成员、退出会话任一种请求消息。其中,消息类型为邀请新成员对应的管理业务为邀请新成员业务,而非创建会话列表业务。若该成员在登陆第三客户端的过程中,未加入会话组甲,则该第一用户设备没有该会话组甲的会话列表;此情况下,第二客户端可能接收到消息类型为邀请新成员、聊天、踢出成员、退出会话任一种请求消息,其中,消息类型为邀请新成员对应的管理业务为创建会话列表业务,而非邀请新成员业务。
进一步地实际应用过程中,可能存在以下情况:一个成员先后或者同时在第二客户端和第三客户端上登陆,且第二客户端和第三客户端上均存储有与接收到的请求消息包含的会话组标识相同的会话组。本实施例还提供了此情况下的管理多人会话的方法。
具体的,如果所述第二客户端在预设时间内没有接收到针对所述会话组的请求消息,所述第二客户端删除针对所述会话组的会话列表及会话记录,或者当所述第二客户端的受限空间已满时,删除针对所述会话组的会话列表及会话记录;
或者,当再次接收到所述会话组内其他成员的所述请求消息时,所述第二客户端根据所述请求消息更新针对所述会话组的会话列表。
示例性的,预设时间可以根据预设的定时器实现;受限空间可以为预先设置的存储空间。
假设接收到的请求消息包含的会话组标识为会话组甲:
A、当第三客户端的会话列表及会话记录删除时,可能存在该成员被踢出成员或者主动退出会话两种情况,即该成员已经不在会话组甲的会话列表中,也就是说,会话组甲之后的任何更新操作均与该成员无关,即该成员所登陆的第二客户端不会接收到有关会话组甲的请求消息,为了与第三客户端同步,第二客户端可以根据预设的定时器或者当受限空间已满时,删除会话组甲的会话列表及会话记录;
B、当第三客户端的会话列表更新成功,且第二客户的所述客户端会话列表未更新成功时,为了与第三客户端同步,第二客户端可以在再次接收到会话组甲的会话列表中其他成员的请求消息时,根据该请求消息更新会话列表。
本发明实施例提供的管理多人会话的方法,第二客户端通过接收服务器从第一客户端转发得到的请求消息,并根据该请求消息作相应动作,实现了基于客户端管理会话,从而降低了对服务器的配置的要求,解决了现有技术中基于服务器管理会话导致的当用户量较大时,对服务器的配置要求过高的问题。
一方面,本发明实施例提供一种管理多人会话的方法,参见图2,包括:
201:服务器接收第一成员所登录的第一客户端发送的请求消息,所述请求消息携带的信息包括:所述请求消息的消息类型、所述请求消息对应的会话组的标识和所述会话组内成员的标识、所述请求消息的对象;
示例性的,所述请求消息的对象为第一客户端生成,用于指示服务器转发的请求信息的接收方,具体的,请求信息的对象可以为一个字符串,服务器根据该字符串读取会话组内成员的标识,并向除所述第一成员之外的其他成员所登录的客户端发送该请求信息。当请求消息的消息类型为邀请新成员、退出会话、踢出成员、聊天任一种时,请求消息的对象可以均为指示读取会话组内、除第一成员之外的其他成员的标识的字符串。
进一步地,所述请求消息的消息类型为邀请新成员或者退出会话;
或者,所述请求消息的消息类型为踢出成员,所述请求消息携带的信息还包括被踢出成员的标识;
或者,所述请求消息的消息类型为聊天,所述请求消息携带的信息还包括聊天内容。
202:根据所述请求消息的对象和所述会话组内成员的标识,将所述请求消息发送给所述请求消息的对象所指示的、除所述第一成员之外的其他成员所登录的客户端,以使得所述其他成员所登录的客户端根据所述请求消息的消息类型、所述请求消息对应的会话组的标识和所述会话组内成员的标识执行相应的动作。
示例性的,第二成员所登录的第二客户端为所述其他成员所登录的客户端中的其中一个客户端,第二客户端根据所述请求消息的消息类型、所述请求消息对应的会话组的标识和所述会话组内成员的标识执行相应的动作的具体实现方法可以参见上述实施例,此处不再赘述。
进一步地,所述请求消息携带的信息还包括:消息响应指示,所述方法还包括:
接收第二成员所登录的第二客户端发送的响应消息,所述响应消息携带的信息包括:所述第二成员的标识、所述响应消息的消息内容为是否完成相应动作;所述第二成员为所述会话组内除所述第一成员外的其他成员中的一个成员;
将所述响应消息发送给所述第一客户端。
示例性的,当服务器将该请求消息发送给第二客户端时,第二客户端可能接收到了该请求消息,但是并没有执行相应动作。为了增加业务的可靠性,第一客户端在给第二客户端发送的请求消息可以携带该消息响应信息,使得每个第二客户端分别向第一客户端发送响应消息,使得第一客户端知晓每个第二客户端的执行结果,进而采取有针对性的补救措施。
当然,在实际应用过程中,可以根据对每种业务的可靠性的要求预先设置是否在该请求消息中携带消息响应信息,例如,若请求消息的类型为邀请新成员,则该请求消息中携带消息响应信息;若请求消息的类型为聊天,则该请求消息中不携带消息响应信息等。
进一步地,当所述响应消息的消息内容为否时,所述方法还包括:
接收所述第一客户端发送的二次请求消息;所述二次请求消息携带的信息包括:所述请求消息所携带的信息、所述二次请求消息的对象为所述第二成员的标识;
根据所述二次请求消息的对象将所述二次请求消息发送给所述第二成员所登陆的第二客户端。
示例性的,在具体实现时,可以在二次请求消息所占的某些字节上标记该二次请求消息的对象。例如,请求消息所占的字节数为32,则可以再第1个字节上标记该请求消息的消息类型,在第2、3个字节上标记会话组的标识,在第4-16字节上标记会话组内成员的标识,在第17字节上标记二次请求消息的对象,其他的为空余字节,或者用于标记其他信息等。
当第二成员所登陆的第二客户端接收到二次请求消息后,根据该二次请求中所携带的信息执行相应的动作,即重新根据请求信息执行相应的动作,具体参见上述实施例。
本发明实施例提供的管理多人会话的方法,服务器通过将第一客户端的请求消息转发给第二客户端,使得第二客户端根据该请求消息作相应动作,实现了基于客户端管理会话,从而降低了对服务器的配置的要求,解决了现有技术中基于服务器管理会话导致的当用户量较大时,对服务器的配置要求过高的问题。
参见图15,为本发明实施例提供的一种管理多人会话的方法,包括:
301:第一成员所登陆的第一客户端向服务器发送请求信息;所述请求消息携带的信息包括:所述请求消息的消息类型、所述请求消息对应的会话组的标识、所述会话组内成员的标识、所述请求消息的对象;
302:所述服务器向第一客户端发送响应信息;
示例性的,第一客户端根据该响应信息执行相应的动作,具体可以参见图4-图7所示的实施例部分。
303:所述服务器根据所述请求消息的对象和会话组内成员的标识,向第二成员所登陆的第二客户端发送所述请求消息;其中,所述第二成员为:所述请求消息的对象所指示的、除所述第一成员之外的其他成员中的一成员;
304:第二客户端接收所述请求消息;
304:第二客户端判断是否存储有与所述请求消息对应的会话组的标识相匹配的会话组;
305:若否,则根据所述会话组的标识、所述会话组内成员的标识创建针对所述会话组的会话列表;
307:若是,则判断所述请求消息的消息类型;
示例性的,请求消息的消息类型包括:邀请新成员、退出会话、踢出成员、聊天等。当请求消息的消息类型为踢出成员时,请求消息携带的信息还包括踢出成员的标识;当请求消息的消息类型为聊天时,请求消息携带的信息还包括聊天内容。
308:当所述请求消息的消息类型为邀请新成员、退出会话时,更新针对所述会话组的会话列表;
309:当所述请求消息的消息类型为聊天时,呈现所述第一成员的标识和聊天内容;
310:当所述请求消息的消息类型为踢出成员时,判断第二成员是否为被踢出成员;
311:若是,则删除针对所述会话组的会话列表;
312:若否,则删除踢出成员的标识,并更新针对所述会话组的会话列表。
本发明实施例提供的管理多人会话的方法,服务器通过将第一客户端的请求消息转发给第二客户端,使得第二客户端根据该请求消息作相应动作,实现了基于客户端管理会话,从而降低了对服务器的配置的要求,解决了现有技术中基于服务器管理会话导致的当用户量较大时,对服务器的配置要求过高的问题。
下面通过几个具体的实施例对上述管理多人会话的方法进行详细说明:
需要说明的是,当一个成员登陆一个客户端时,服务器即可获取并存储该成员的标识与该客户端的标识的对应关系。
(一)创建会话列表业务
参见图3,为创建会话列表的示意图。成员A需要创建会话列表成员为成员B、C的会话组甲,那么,第一客户端为成员A登陆的a客户端,第二客户端为成员B登陆的b客户端以及成员C登陆的c客户端。
具体步骤解释如下:
1)成员A对应的用户选择成员B的标识、成员C的标识,并向a客户端发出邀请新成员的操作指令;
示例性的,此步骤中的两个动作的执行顺序此处不进行限定。
2)a客户端向服务器发送请求消息,该请求消息携带以下信息:消息类型为邀请新成员,会话组甲的标识,会话组甲内成员的标识为:成员A的标识、成员B的标识、成员C的标识,消息类型的对象;
示例性的,消息类型的对象为一个表示会话组甲的字符串,该请求消息可以携带请求消息的ID,该请求消息的ID由第一客户端产生,在全局范围内唯一,用于区别其他信息;例如,若该多人会话基于可扩展通讯和表示协议(XML Based Messaging And Presence Protocol,简称XMPP),其中,XML为可扩展标记语言(X Extensible MarkupLanguage)的简称,则该请求信息可以携带消息发送方(即成员A)的甲吧地址(Jabber Identifier,简称JID),也可以不携带,当不携带时,服务器默认使用成员A注册时生成的JID作为发送方地址。
3)服务器根据消息类型的对象读取会话组甲中的成员的标识(成员A的标识、成员B的标识、成员C的标识),并根据成员标识与客户端标识的对应关系分别向b客户端和c客户端发送该请求消息;
4)b客户端在确定本地没有与会话组甲的标识对应的会话组时,根据该请求消息创建会话列表;存储会话组甲的摘要信息以及会话列表成员数据,其中,该会话组的摘要信息可以包括:会话组的名称、会话组简介、创建人等;此外,还可以包括:b客户端所在的用户设备上显示“A邀请您、C加入会话甲”。同理,对于c客户端执行的动作与b客户端类似,此处不再赘述。
进一步地,服务器给a客户端反馈一个创建会话列表的信息,使得a客户端在本地存储会话组甲的摘要信息以及会话列表成员数据。
(二)邀请新成员业务
参见图4,为邀请新成员的示意图。成员A需要邀请新成员D加入已创建好的会话组甲中,那么,第一客户端为成员A登陆的a客户端,第二客户端为成员B登陆的b客户端、成员C登陆的c客户端以及成员D所登陆的客户端为客户端d。
具体步骤解释如下:
1)成员A对应的用户选择成员D的标识,并向a客户端发出邀请新成员的操作指令;
示例性的,此步骤中的两个动作的执行顺序此处不进行限定。
2)a客户端向服务器发送请求消息,该请求消息携带以下信息:消息类型为邀请新成员,会话组甲的标识,会话组甲内成员的标识为:成员A的标识、成员B的标识、成员C的标识、成员D的标识,消息类型的对象,其中,消息类型的对象为一个表示会话组甲的字符串;
3)服务器根据消息类型的对象读取会话组甲中的成员的标识(成员A的标识、成员B的标识、成员C的标识、成员D的标识),并根据成员标识与客户端标识的对应关系分别向b客户端、c客户端、d客户端发送该请求消息;
4)b客户端在确定本地有会话组甲时,根据该请求消息更新会话列表;存储更新后的会话列表成员数据;此外,还可以包括:b客户端所在的用户设备上显示“A邀请D加入会话甲”。同理,对于c客户端执行的动作与b客户端类似,此处不再赘述。对于d客户端,确定本地没有与会话组甲的标识对应的会话组时,执行与(一)中的步骤4)类似的动作。
进一步地,服务器向a客户端反馈一个响应信息,使得a客户端更新会话列表成员数据,并存储更新后的会话列表成员数据。
(三)踢出成员业务
参见图5,为踢出成员的示意图。成员A需要踢出成员B,那么,第一客户端为成员A登陆的a客户端,第二客户端为成员B登陆的b客户端以及成员C登陆的c客户端。
具体步骤解释如下:
1)成员A对应的用户选择成员B的标识,并向a客户端发出踢出成员的操作指令;
示例性的,此步骤中的两个动作的执行顺序此处不进行限定。
2)a客户端向服务器发送请求消息,该请求消息携带以下信息:消息类型为踢出成员,消息类型的对象为成员B的标识,会话组甲的标识、,会话组甲内成员的标识为:成员A的标识、成员B的标识、成员C的标识,消息类型的对象,其中,消息类型的对象为一个表示会话组甲的字符串,被踢出成员所在的字节标记为成员B的标识。
3)服务器根据消息类型的对象读取会话组甲中的成员的标识(成员A的标识、成员B的标识、成员C的标识),并根据成员标识与客户端标识的对应关系分别向b客户端和c客户端发送该请求消息;
4)b客户端判断并确定自己是被踢出对象,则删除会话列表和/或会话记录;此外,还可以包括:b客户端所在的用户设备上显示“A已将您踢出成员甲”。c客户端判断并确定自己不是被踢出对象,则删除成员B的标识,并更新会话列表;存储更新后的会话列表;此外,还可以包括:c客户端所在的用户设备上显示“A已将B踢出成员甲”。
示例性的,会话记录包括:聊天内容,当有会话记录时,b客户端删除会话列表和会话记录,当没有会话记录时,b客户端删除会话列表。
进一步地,服务器向a客户端反馈一个响应信息,使得a客户端更新会话列表成员数据,并存储更新后的会话列表成员数据。
(四)退出会话业务
参见图6,为退出会话的示意图。成员B需要退出会话甲,那么,第一客户端为成员B登陆的b客户端,第二客户端为成员A登陆的a客户端以及成员C登陆的c客户端。
具体步骤解释如下:
1)成员B对应的用户向b客户端发出退出会话的操作指令;
2)b客户端向服务器发送请求消息,该请求消息携带以下信息:消息类型为退出会话,会话组甲的标识,会话组甲内成员的标识为:成员A的标识、成员B的标识、成员C的标识,消息类型的对象,其中,消息类型的对象为一个表示会话组甲的字符串;
3)服务器根据消息类型的对象读取会话组甲中的成员的标识(成员A的标识、成员B的标识、成员C的标识),并根据成员标识与客户端标识的对应关系分别向a客户端和c客户端发送该请求消息;
4)c客户端根据该请求消息更新会话列表,并存储更新后的会话列表,此外,还可以包括:c客户端所在的用户设备上显示“B已退出会话甲”,a客户端执行与c客户端类似的动作。
此情景下,b客户端根据该请求消息删除会话列表和/或会话记录;此外,还可以包括:b客户端所在的用户设备上显示“您已退出会话甲”。
示例性的,会话记录包括:聊天内容,当有会话记录时,b客户端删除会话列表和会话记录,当没有会话记录时,b客户端删除会话列表。
(五)聊天业务
参见图7,为聊天的示意图。成员A发出聊天内容,那么,第一客户端为成员A登陆的a客户端,第二客户端为成员B登陆的b客户端以及成员C登陆的c客户端。
具体步骤解释如下:
1)成员A对应的用户向a客户端发出聊天的操作指令以及聊天内容;
示例性的,此步骤中的两个动作的执行顺序此处不进行限定。
2)a客户端向服务器发送请求消息,该请求消息携带以下信息:消息类型为聊天,会话组甲的标识,会话组甲内成员的标识为:成员A的标识、成员B的标识、成员C的标识,聊天内容,消息类型的对象,其中,消息类型的对象为一个表示会话组甲的字符串;
示例性的,该请求消息可以携带编码方法,例如,可以为字符传输格式(Unicode Transformation Format,简称UTF)编码,例如,UTF-8)编码,该编码方法支持最大长度为1000中/英文字符,当消息内容超过1000中/英文字符时,提示成员A对应的用户或者a客户端。
3)服务器根据消息类型的对象读取会话组甲中的成员的标识(成员A的标识、成员B的标识、成员C的标识),并根据成员标识与客户端标识的对应关系分别向b客户端和c客户端发送该请求消息;
4)b客户端根据该请求消息呈现成员的A标识以及聊天内容,并存储该聊天内容;同理,对于c客户端执行的动作与b客户端类似,此处不再赘述。
进一步地,a客户端也可以呈现成员的A标识以及聊天内容,并存储该聊天内容。
需要说明的是,对于上述图3-图7所示的任一种管理多人会话的方法,即使不是会话组的创建人,也可以设置管理权限从而实现邀请新成员、踢出成员、聊天等业务;当创建人选择退出会话组后,可以解散该会话组,也可以根据设置的管理权限使得该会话组继续存在;图4-图7所示的任一种方法均是基于图1创建会话列表的方法的,但是对于图4-图7任一种方法,在执行顺序上本发明不进行限定。
(六)业务报告
由于上述(一)-(五)任一实施例中的请求消息中均可以携带消息响应指示,因此本实施例仅以退出会话业务情况下的请求消息携带消息响应指示为例进行说明。
参见图8,为业务报告的示意图。成员B需要退出会话甲,那么,第一客户端为成员B登陆的b客户端,第二客户端为成员A登陆的a客户端以及成员C登陆的c客户端;c客户端接收到b客户端发送的请求消息,但是并没有执行更新会话列表的动作。
具体步骤解释如下:
1)成员B对应的用户向b客户端发出退出会话的操作指令;
2)b客户端向服务器发送请求消息,该请求消息携带以下信息:消息类型为退出会话,会话组甲的标识,会话组甲内成员的标识为:成员A的标识、成员B的标识、成员C的标识,消息类型的对象,消息响应指示;
示例性的,消息类型的对象为一个表示会话组甲的字符串,消息响应指示用于第二客户端(a客户端和c客户端)将是否完成相应动作的信息反馈给第一客户端(b客户端)。
3)服务器根据消息类型的对象读取会话组甲中的成员的标识(成员A的标识、成员B的标识、成员C的标识),并根据成员标识与客户端标识的对应关系分别向b客户端和c客户端发送该请求消息;
4)a客户端根据该请求消息更新会话列表,并存储更新后的会话列表,此外,还可以包括:a客户端所在的用户设备上显示“B已退出会话甲”,向b客户端发送响应消息,该响应消息包括:消息类型为业务报告,消息类型的对象为成员A的标识,消息内容为是。
c客户端接收到该请求消息,但是没有执行更新会话列表的动作,向b客户端发送响应消息,该响应消息包括:成员C的标识,消息内容为否。
5)b客户端接收到a客户端和c客户端的响应消息后,向服务器发送二次请求消息,该二次请求消息携带的信息包括:消息类型为退出会话,会话组甲的标识、会话组甲内成员的标识为:成员A的标识、成员B的标识、成员C的标识,二次请求消息的对象为成员C的标识;
6)服务器根据二次请求消息的对象,以及成员标识与客户端标识的对应关系向c客户端发送该二次请求消息;
7)c客户端根据二次请求消息更新会话列表。
示例性的,该方法还可以包括:b客户端接收到c客户端发送的消息内容为是的响应消息之后删除会话列表和/或会话记录,并在b客户端所在的用户设备上显示“您已退出会话甲”。或者,可以预先设置重新发送二次请求消息的次数,当达到该次数后,b客户端自动删除会话列表和/或会话记录并在b客户端所在的用户设备上显示“您已退出会话甲”。
本发明实施例提供的管理多人会话的方法,第二客户端通过接收服务器从第一客户端仅转发得到的请求消息,并根据该请求消息作相应动作,实现了基于客户端管理会话,从而降低了对服务器的配置的要求,解决了现有技术中基于服务器管理会话导致的当用户量较大时,对服务器的配置要求过高的问题。
一方面,参见图9,为本发明实施例提供的一种管理多人会话的装置90,用以执行图1所示的管理多人会话的方法,所述装置90包括:
接收单元901,用于接收请求消息,所述请求消息携带的信息包括:所述请求消息的消息类型、所述请求消息对应的会话组的标识和所述会话组内成员的标识;所述请求消息由第一成员所登录的第一客户端生成并发送至服务器后,由服务器根据所述会话组内成员的标识转发给所述接收单元;
处理单元902,用于根据所述接收单元901传输的所述请求消息的消息类型、所述请求消息对应的会话组的标识和所述会话组内成员的标识,执行相应的动作。
示例性的,该装置90可以包括第二客户端,在该装置90上登陆的成员可以为在该第二客户端上登陆的第二成员。需要说明的是,该第二客户端可以为上述方法实施例中所描述的第二客户端,该第二成员与上述方法实施例中所描述的第二成员。
进一步地,在所述装置90未创建与所述请求消息对应的会话组的标识相匹配的会话组的情况下,所述处理单元902可以具体可以用于,
根据所述请求信息对应的会话组的标识和所述会话组内成员的标识,创建针对所述会话组的会话列表。
在所述装置90已创建与所述请求消息对应的会话组的标识相匹配的会话组的情况下,所述处理单元902可以具体可以用于,
若所述请求消息的消息类型为邀请新成员,则根据所述请求消息更新针对所述会话组的会话列表;
或者,若所述请求消息的消息类型为踢出成员,所述请求消息携带的信息还包括被踢出成员的标识,则当在所述装置上登陆的第二成员为被踢出成员时,根据所述请求消息删除针对所述会话组的会话列表和/或会话记录,或者,当所述第二成员为未被踢出的成员时,根据所述请求消息更新针对所述会话组的会话列表;
或者,若所述请求消息的消息类型为退出会话,则根据所述请求消息更新针对所述会话组的会话列表;
或者,若所述请求消息的消息类型为聊天,所述请求消息携带的信息还包括聊天内容,则呈现所述第一成员的标识以及所述聊天内容。
进一步地,所述请求消息携带的信息还可以包括:消息响应指示;参见图10,所述装置90还可以包括:
发送单元903,用于按照所述消息响应指示,向所述第一客户端发送响应消息,所述响应消息携带的信息包括:在所述装置90上登陆的第二成员的标识,所述响应消息的消息内容为是否完成相应动作;
所述接收单元901还可以用于,当所述响应消息的消息内容为没有完成相应动作时,通过所述服务器接收所述第一客户端发送的二次请求消息,所述二次请求消息携带的信息包括:所述请求消息所携带的信息、二次请求消息的对象为所述第二成员的标识。
示例性的,当服务器将该请求消息发送给装置90时,装置90可能接收到了该请求消息,但是并没有执行相应动作。为了增加业务的可靠性,第一客户端在给装置90发送的请求消息可以携带该消息响应信息,使得该装置90向第一客户端发送响应消息,从而使得第一客户端知晓该装置90的执行结果,进而采取有针对性的补救措施。具体的,二次请求消息携带的信息包含请求消息携带的信息,第一客户端向该装置90发送二次请求消息,该接收单元901接收到二次请求消息,并传输给处理单元902;处理单元902根据二次请求消息再一次执行请求消息所指示的动作。
当然,在实际应用过程中,可以根据对每种业务的可靠性的要求预先设置是否在该请求消息中携带消息响应信息,例如,若请求消息的类型为邀请新成员,则该请求消息中携带消息响应信息;若请求消息的类型为聊天,则该请求消息中不携带消息响应信息等。
进一步地,实际应用过程中,可能存在以下情况:一个成员先在第三客户端上登陆,随后又在该装置90上登陆,且所述装置90上没有针对所述会话组的会话列表。本实施例还提供了此情况下该管理多人会话的装置90的具体执行步骤:
所述处理单元902具体可以用于,
当所述请求消息的消息类型为邀请新成员时,所述第二客户端根据所述请求消息创建会话列表;
或者,当所述请求消息的消息类型为聊天时,所述第二客户端根据所述请求消息创建会话列表,并呈现所述第一成员的标识以及聊天内容;
或者,当所述请求消息的消息类型为踢出成员或者退出会话时,丢弃所述请求消息。
进一步地,实际应用过程中,可能存在以下情况:一个成员先后或者同时在第二客户端和第三客户端上登陆,且第二客户端和第三客户端上均存储有与接收到的请求消息包含的会话组标识相同的会话组。本实施例还提供了此情况下该管理多人会话的装置的具体执行步骤。
具体的,如果所述接收单元901在预设时间内没有接收到针对所述会话组的请求消息,所述处理单元902还可以用于,删除针对所述会话组的会话列表及会话记录,或者所述装置的受限空间已满时,删除针对所述会话组的会话列表及会话记录;
或者,当所述接收单元901再次接收到所述会话组内其他成员的所述请求消息时,所述处理单元902还可以用于,根据所述请求消息更新针对所述会话组的会话列表。
示例性的,上述所有动作的执行主体可以均为第二客户端。
本发明实施例提供的管理多人会话的装置,该装置包括第二客户端,通过接收服务器从第一客户端转发得到的请求消息,并根据该请求消息作相应动作,实现了基于客户端管理会话,从而降低了对服务器的配置的要求,解决了现有技术中基于服务器管理会话导致的当用户量较大时,对服务器的配置要求过高的问题。
一方面,参见图11,为本发明实施例提供的一种管理多人会话的装置90,用以执行图1所示的管理多人会话的方法,所述装置90包括:接收器1101、存储器1102、与接收器1101和存储器1102相连的处理器1103;其中,
接收器1101,用于接收请求消息,所述请求消息携带的信息包括:所述请求消息的消息类型、所述请求消息对应的会话组的标识和所述会话组内成员的标识;所述请求消息由第一成员所登录的第一客户端生成并发送至服务器后,由服务器根据所述会话组内成员的标识转发给所述接收器1101;
存储器1102,用于存储一组代码,该代码用于控制处理器1103根据所述请求消息的消息类型、所述请求消息对应的会话组的标识和所述会话组内成员的标识,执行相应的动作。
示例性的,该装置90可以包括第二客户端,在该装置90上登陆的成员可以为在该第二客户端上登陆的第二成员。需要说明的是,该第二客户端可以为上述方法实施例中所描述的第二客户端,该第二成员与上述方法实施例中所描述的第二成员。
进一步地,在所述存储器1102上未存储与所述请求消息对应的会话组的标识相匹配的会话组的情况下,所述处理器1103具体可以用于,
根据所述请求信息对应的会话组的标识和所述会话组内成员的标识,创建针对所述会话组的会话列表。
在所述存储器1102上存储有与所述请求消息对应的会话组的标识相匹配的会话组的情况下,所述处理器1103具体可以用于,
若所述请求消息的消息类型为邀请新成员,则根据所述请求消息更新针对所述会话组的会话列表;
或者,若所述请求消息的消息类型为踢出成员,所述请求消息携带的信息还包括被踢出成员的标识,则当在所述装置上登陆的第二成员为被踢出成员时,根据所述请求消息删除针对所述会话组的会话列表和/或会话记录,或者,当所述第二成员为未被踢出的成员时,根据所述请求消息更新针对所述会话组的会话列表;
或者,若所述请求消息的消息类型为退出会话,则根据所述请求消息更新针对所述会话组的会话列表;
或者,若所述请求消息的消息类型为聊天,所述请求消息携带的信息还包括聊天内容,则呈现所述第一成员的标识以及所述聊天内容。
进一步地,所述请求消息还可以包括:消息响应指示;参见图12,所述装置90还可以包括:
发送器1104,用于按照所述消息响应指示,向所述第一客户端发送响应消息,所述响应消息携带的信息包括:在所述装置上登陆的第二成员的标识,所述响应消息的消息内容为是否完成相应动作;
接收器1101还可以用于,当所述响应消息的消息内容为没有完成相应动作时,通过所述服务器接收所述第一客户端发送的二次请求消息,所述二次请求消息携带的信息包括:所述请求消息所携带的信息、二次请求消息的对象为所述第二成员的标识。
进一步地,实际应用过程中,可能存在以下情况:一个成员先在第三客户端上登陆,随后又在该装置90上登陆,且所述装置90上没有针对所述会话组的会话列表,所述处理器1103具体可以用于,
当所述请求消息的消息类型为邀请新成员时,所述第二客户端根据所述请求消息创建会话列表;
或者,当所述请求消息的消息类型为聊天时,所述第二客户端根据所述请求消息创建会话列表,并呈现所述第一成员的标识以及聊天内容;
或者,当所述请求消息的消息类型为踢出成员或者退出会话时,丢弃所述请求消息。
进一步地,实际应用过程中,可能存在以下情况:一个成员先后或者同时在第二客户端和第三客户端上登陆,且第二客户端和第三客户端上均存储有与接收到的请求消息包含的会话组标识相同的会话组。本实施例还提供了此情况下该管理多人会话的装置的具体执行步骤。
具体的,如果所述接收器1101在预设时间内没有接收到针对所述会话组的请求消息,所述处理器1103还可以用于,删除针对所述会话组的会话列表及会话记录,或者所述装置的受限空间已满时,删除针对所述会话组的会话列表及会话记录;
或者,当所述接收器1101再次接收到所述会话组内其他成员的所述请求消息时,所述处理器1103还可以用于,根据所述请求消息更新针对所述会话组的会话列表。
示例性的,上述所有动作的执行主体可以均为第二客户端。
本发明实施例提供的管理多人会话的装置,该装置包括第二客户端,第二客户端通过接收服务器从第一客户端仅转发得到的请求消息,并根据该请求消息作相应动作,实现了基于客户端管理会话,从而降低了对服务器的配置的要求,解决了现有技术中基于服务器管理会话导致的当用户量较大时,对服务器的配置要求过高的问题。
一方面,参见图13,为本发明实施例提供的一种服务器130,用以执行图2所示的管理多人会话的方法,该服务器130包括:
接收单元1301,用于接收第一成员所登录的第一客户端发送的请求消息,所述请求消息携带的信息包括:所述请求消息的消息类型、所述请求消息对应的会话组的标识和所述会话组内成员的标识、所述请求消息的对象;
发送单元1302,用于根据所述接收单元1301传输的所述请求消息的对象和所述会话组内成员的标识,将所述请求消息发送给所述请求消息的对象所指示的、除所述第一成员之外的其他成员所登录的客户端,以使得所述其他成员所登录的客户端根据所述请求消息的消息类型、所述请求消息对应的会话组的标识和所述会话组内成员的标识执行相应的动作。
进一步地,所述请求消息的消息类型为邀请新成员或者退出会话;
或者,所述请求消息的消息类型为踢出成员,所述请求消息携带的信息还可以包括所述请求消息的对象为被踢出成员的标识;
或者,所述请求消息的消息类型为聊天,所述请求消息携带的信息还可以包括聊天内容。
进一步地,所述请求消息携带的信息还包括:消息响应指示,
所述接收单元1301还可以用于,接收第二成员所登录的第二客户端发送的响应消息,所述响应消息携带的信息包括:所述第二成员的标识、所述响应消息的消息内容为是否完成相应动作;所述第二成员为所述会话组内除所述第一成员外的其他成员中的一个成员;
所述发送单元1302还可以用于,将所述响应消息发送给所述第一客户端。
进一步地,当所述响应消息的消息内容为否时,所述接收单元1301还可以用于,
接收所述第一客户端发送的二次请求消息;所述二次请求消息携带的信息包括:所述请求消息所携带的信息、所述二次请求消息的对象为所述第二成员的标识;
所述发送单元1302还可以用于,根据所述二次请求消息的对象将所述二次请求消息发送给所述第二成员所登陆的第二客户端。
示例性的,当服务器将该请求消息发送给第二客户端时,第二客户端可能接收到了该请求消息,但是并没有执行相应动作。为了增加业务的可靠性,第一客户端在给第二客户端发送的请求消息可以携带该消息响应信息,使得每个第二客户端分别向第一客户端发送响应消息,使得第一客户端知晓每个第二客户端的执行结果,进而采取有针对性的补救措施。
当然,在实际应用过程中,可以根据对每种业务的可靠性的要求预先设置是否在该请求消息中携带消息响应信息,例如,若请求消息的类型为邀请新成员,则该请求消息中携带消息响应信息;若请求消息的类型为聊天,则该请求消息中不携带消息响应信息等。
本发明实施例提供的服务器,通过将第一客户端的请求消息仅转发给第二客户端,使得第二客户端根据该请求消息作相应动作,实现了基于客户端管理会话,从而降低了对服务器的配置的要求,解决了现有技术中基于服务器管理会话导致的当用户量较大时,对服务器的配置要求过高的问题。
一方面,参见图14,为本发明实施例提供的一种服务器130,用以执行图2所示的管理多人会话的方法,该服务器130包括:
接收器1401,用于接收第一成员所登录的第一客户端发送的请求消息,所述请求消息携带的信息包括:所述请求消息的消息类型、所述请求消息对应的会话组的标识和所述会话组内成员的标识、所述请求消息的对象用于接收第一成员所登录的第一客户端发送的请求消息,所述请求消息携带的信息包括:所述请求消息的消息类型、所述请求消息对应的会话组的标识和所述会话组内成员的标识;
发送器1402,用于根据所述请求消息的对象和所述会话组内成员的标识,将所述请求消息发送给所述请求消息的对象所指示的、除所述第一成员之外的其他成员所登录的客户端,以使得所述其他成员所登录的客户端根据所述请求消息的消息类型、所述请求消息对应的会话组的标识和所述会话组内成员的标识执行相应的动作。
进一步地,所述请求消息的消息类型为邀请新成员或者退出会话;
或者,所述请求消息的消息类型为踢出成员,所述请求消息携带的信息还可以包括所述请求消息的对象为被踢出成员的标识;
或者,所述请求消息的消息类型为聊天,所述请求消息携带的信息还可以包括聊天内容。
进一步地,所述请求消息携带的信息还可以包括:消息响应指示,
所述接收器1401还可以用于,接收第二成员所登录的第二客户端发送的响应消息,所述响应消息携带的信息包括:所述第二成员的标识、所述响应消息的消息内容为是否完成相应动作;所述第二成员为所述会话组内除所述第一成员外的其他成员中的一个成员;
所述发送器1402还可以用于,将所述响应消息发送给所述第一客户端。
进一步地,当所述响应消息的消息内容为否时,所述接收器1401还可以用于,接收所述第一客户端发送的二次请求消息;所述二次请求消息携带的信息包括:所述请求消息所携带的信息、所述二次请求消息的对象为所述第二成员的标识;
所述发送器140还可以用于,根据所述二次请求消息的对象将所述二次请求消息发送给所述第二成员所登陆的第二客户端。
本发明实施例提供的服务器,通过将第一客户端的请求消息仅转发给第二客户端,使得第二客户端根据该请求消息作相应动作,实现了基于客户端管理会话,从而降低了对服务器的配置的要求,解决了现有技术中基于服务器管理会话导致的当用户量较大时,对服务器的配置要求过高的问题。
一方面,本发明实施例还提供一种管理多人会话的系统,包括:上述实施例提供的任一种管理多人会话的装置90和/或上述实施例提供的任一种服务器130,其中,装置90包括第二成员登陆的第二客户端;其中,
服务器130用于执行以下动作:
用于接收第一成员所登录的第一客户端发送的请求消息,所述请求消息携带的信息包括:所述请求消息的消息类型、所述请求消息对应的会话组的标识和所述会话组内成员的标识、所述请求消息的对象;
根据所述请求消息的对象和所述会话组内成员的标识,将所述请求消息发送给所述请求消息的对象所指示的、除所述第一成员之外的其他成员所登录的客户端;第二成员为所述会话组中、除所述第一成员之外的其他成员中的一成员,第二成员登陆安装有第二客户端的装置90上。
装置90用于执行以下动作:
第二客户端接收所述请求消息;
根据所述请求消息的消息类型、所述请求消息对应的会话组的标识和所述会话组内成员的标识,执行相应的动作。
进一步地,装置90具体可以用于执行以下动作:
在所述第二客户端未创建与所述请求消息对应的会话组的标识相匹配的会话组的情况下,所述第二客户端根据所述请求信息对应的会话组的标识和所述会话组内成员的标识,创建针对所述会话组的会话列表。
在所述第二客户端已创建与所述请求消息对应的会话组的标识相匹配的会话组的情况下:
若所述请求消息的消息类型为邀请新成员,则所述第二客户端根据所述请求消息更新针对所述会话组的会话列表;
或者,若所述请求消息的消息类型为踢出成员,所述请求消息携带的信息还包括被踢出成员的标识,则当所述第二成员为被踢出成员时,所述第二客户端根据所述请求消息删除针对所述会话组的会话列表和/或会话记录,或者,当所述第二成员为未被踢出的成员时,所述第二客户端根据所述请求消息更新针对所述会话组的会话列表;
或者,若所述请求消息的消息类型为退出会话,则所述第二客户端根据所述请求消息更新针对所述会话组的会话列表;
或者,若所述请求消息的消息类型为聊天,所述请求消息携带的信息还包括聊天内容,则所述第二客户端呈现所述第一成员的标识以及所述聊天内容。
进一步地,所述请求消息携带的信息还包括:消息响应指示;在所述第二客户端根据所述请求消息的消息类型、所述请求消息对应的会话组的标识和所述会话组内成员的标识,执行相应的动作之后,还包括:
所述第二客户端按照所述消息响应指示,向所述第一客户端发送响应消息,所述响应消息携带的信息包括:所述第二成员的标识,所述响应消息的消息内容为是否完成相应动作;
当所述响应消息的消息内容为没有完成相应动作时,所述第二客户端通过所述服务器130接收所述第一客户端发送的二次请求消息,所述二次请求消息携带的信息包括:所述请求消息所携带的信息、所述二次请求消息的对象为所述第二成员的标识。
示例性的,当服务器将该请求消息发送给第二客户端时,第二客户端可能接收到了该请求消息,但是并没有执行相应动作。为了增加业务的可靠性,第一客户端在给第二客户端发送的请求消息可以携带该消息响应信息,使得每个第二客户端分别向第一客户端发送响应消息,从而使得第一客户端知晓每个第二客户端的执行结果,进而采取有针对性的补救措施。具体的,二次请求消息携带的信息包含请求消息携带的信息,第一客户端向第二客户端发送二次请求消息,以使得第二客户端根据二次请求消息再一次执行请求消息所指示的动作。
当然,在实际应用过程中,可以根据对每种业务的可靠性的要求预先设置是否在该请求消息中携带消息响应信息,例如,若请求消息的类型为邀请新成员,则该请求消息中携带消息响应信息;若请求消息的类型为聊天,则该请求消息中不携带消息响应信息等。
进一步地,实际应用过程中,可能存在以下情况:一个成员先在第三客户端上登陆,随后又在第二客户端上登陆,且第二客户端上还未存储与接收到的请求消息包含的会话组标识相同的会话组。本实施例还提供了此情况下的装置90的具体执行动作:
当所述请求消息的消息类型为邀请新成员时,所述第二客户端根据所述请求消息创建会话列表;
或者,当所述请求消息的消息类型为聊天时,所述第二客户端根据所述请求消息创建会话列表,并呈现所述第一成员的标识以及聊天内容。
或者,当所述请求消息的消息类型为踢出成员或者退出会话时,所述第二客户端丢弃所述请求消息。
进一步地,实际应用过程中,可能存在以下情况:一个成员先后或者同时在第二客户端和第三客户端上登陆,且第二客户端和第三客户端上均存储有与接收到的请求消息包含的会话组标识相同的会话组。本实施例还提供了此情况下装置90的具体执行步骤。
如果所述第二客户端在预设时间内没有接收到针对所述会话组的请求消息,所述第二客户端删除针对所述会话组的会话列表及会话记录,或者当所述第二客户端的受限空间已满时,删除针对所述会话组的会话列表及会话记录;
或者,当再次接收到所述会话组内其他成员的所述请求消息时,所述第二客户端根据所述请求消息更新针对所述会话组的会话列表。
本发明实施例提供的管理多人会话的系统,服务器将第一客户端发送的请求消息转发给第二客户端,第二客户端根据该请求消息作相应动作,实现了基于客户端管理会话,从而降低了对服务器的配置的要求,解决了现有技术中基于服务器管理会话导致的当用户量较大时,对服务器的配置要求过高的问题。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理包括,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(Random Access Memory,简称RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (19)
1.一种管理多人会话的方法,其特征在于,包括:
第二成员所登录的第二客户端接收请求消息,所述请求消息携带的信息包括:所述请求消息的消息类型、所述请求消息对应的会话组的组标识和所述会话组内成员的成员标识;所述请求消息由第一成员所登录的第一客户端生成并发送至服务器后,由服务器根据所述会话组内成员的成员标识转发给所述第二客户端;其中,所述第一客户端和所述第二客户端是不同的多人会话客户端;
所述第二客户端根据所述请求消息的消息类型、所述请求消息对应的会话组的组标识和所述会话组内成员的成员标识,执行相应的动作;
在所述第二客户端未创建与所述请求消息对应的会话组的组标识相匹配的会话组的情况下,所述第二客户端根据所述请求消息的消息类型、所述请求消息对应的会话组的组标识和所述会话组内成员的成员标识,执行相应的动作,包括:
所述第二客户端根据所述请求信息对应的会话组的组标识和所述会话组内成员的成员标识,创建针对所述会话组的会话列表。
2.根据权利要求1所述的方法,其特征在于,
在所述第二客户端已创建与所述请求消息对应的会话组的组标识相匹配的会话组的情况下,所述第二客户端根据所述请求消息的消息类型、所述请求消息对应的会话组的组标识和所述会话组内成员的成员标识,执行相应的动作,包括:
若所述请求消息的消息类型为邀请新成员,则所述第二客户端根据所述请求消息更新针对所述会话组的会话列表;
或者,若所述请求消息的消息类型为踢出成员,所述请求消息携带的信息还包括被踢出成员的标识,则当所述第二成员为被踢出成员时,所述第二客户端根据所述请求消息删除针对所述会话组的会话列表和/或会话记录,或者,当所述第二成员为未被踢出的成员时,所述第二客户端根据所述请求消息更新针对所述会话组的会话列表;
或者,若所述请求消息的消息类型为退出会话,则所述第二客户端根据所述请求消息更新针对所述会话组的会话列表;
或者,若所述请求消息的消息类型为聊天,所述请求消息携带的信息还包括聊天内容,则所述第二客户端呈现所述第一成员的标识以及所述聊天内容。
3.根据权利要求1所述的方法,其特征在于,所述请求消息携带的信息还包括:消息响应指示;在所述第二客户端根据所述请求消息的消息类型、所述请求消息对应的会话组的组标识和所述会话组内成员的成员标识,执行相应的动作之后,所述方法还包括:
所述第二客户端按照所述消息响应指示,向所述第一客户端发送响应消息,所述响应消息携带的信息包括:所述第二成员的标识,所述响应消息的消息内容为是否完成相应动作;
当所述响应消息的消息内容为没有完成相应动作时,所述第二客户端通过所述服务器接收所述第一客户端发送的二次请求消息,所述二次请求消息携带的信息包括:所述请求消息所携带的信息、所述二次请求消息的对象为所述第二成员的标识。
4.根据权利要求1-3任一项所述的方法,其特征在于,在所述第二客户端没有针对所述会话组的会话列表的情况下,所述第二客户端根据所述请求消息的消息类型、所述请求消息对应的会话组的组标识和所述会话组内成员的成员标识,执行相应的动作,还包括:
当所述请求消息的消息类型为踢出成员或者退出会话时,所述第二客户端丢弃所述请求消息。
5.根据权利要求1-3任一项所述的方法,其特征在于,在所述第二客户端有针对所述会话组的会话列表的情况下,所述方法还包括:
如果所述第二客户端在预设时间内没有接收到针对所述会话组的请求消息,所述第二客户端删除针对所述会话组的会话列表及会话记录,或者当所述第二客户端的受限空间已满时,删除针对所述会话组的会话列表及会话记录;
或者,当再次接收到所述会话组内其他成员的所述请求消息时,所述第二客户端根据所述请求消息更新针对所述会话组的会话列表。
6.一种管理多人会话的方法,其特征在于,包括:
服务器接收第一成员所登录的第一客户端发送的请求消息,所述请求消息携带的信息包括:所述请求消息的消息类型、所述请求消息对应的会话组的组标识和所述会话组内成员的成员标识、所述请求消息的对象;
根据所述请求消息的对象和所述会话组内成员的成员标识,将所述请求消息发送给所述请求消息的对象所指示的、除所述第一成员之外的其他成员所登录的客户端,以使得所述其他成员所登录的客户端根据所述请求消息的消息类型、所述请求消息对应的会话组的组标识和所述会话组内成员的成员标识执行相应的动作;
所述其他成员所登录的客户端包括第二客户端;其中,所述第一客户端和所述第二客户端是不同的多人会话客户端;
在所述第二客户端未创建与所述请求消息对应的会话组的组标识相匹配的会话组的情况下,所述第二客户端根据所述请求消息的消息类型、所述请求消息对应的会话组的组标识和所述会话组内成员的成员标识,执行相应的动作,包括:
所述第二客户端根据所述请求信息对应的会话组的组标识和所述会话组内成员的成员标识,创建针对所述会话组的会话列表。
7.根据权利要求6所述的方法,其特征在于,
所述请求消息的消息类型为邀请新成员或者退出会话;
或者,所述请求消息的消息类型为踢出成员,所述请求消息携带的信息还包括所述请求消息的对象为被踢出成员的标识;
或者,所述请求消息的消息类型为聊天,所述请求消息携带的信息还包括聊天内容。
8.根据权利要求6或7所述的方法,其特征在于,所述请求消息携带的信息还包括:消息响应指示,所述方法还包括:
接收第二成员所登录的所述第二客户端发送的响应消息,所述响应消息携带的信息包括:所述第二成员的标识、所述响应消息的消息内容为是否完成相应动作;所述第二成员为所述会话组内除所述第一成员外的其他成员中的一个成员;
将所述响应消息发送给所述第一客户端。
9.根据权利要求8所述的方法,其特征在于,当所述响应消息的消息内容为否时,所述方法还包括:
接收所述第一客户端发送的二次请求消息;所述二次请求消息携带的信息包括:所述请求消息所携带的信息、所述二次请求消息的对象为所述第二成员的标识;
根据所述二次请求消息的对象将所述二次请求消息发送给所述第二成员所登陆的第二客户端。
10.一种管理多人会话的装置,其特征在于,包括:
接收单元,用于接收请求消息,所述请求消息携带的信息包括:所述请求消息的消息类型、所述请求消息对应的会话组的组标识和所述会话组内成员的成员标识;所述请求消息由第一成员所登录的第一客户端生成并发送至服务器后,由服务器根据所述会话组内成员的成员标识转发给所述接收单元;其中,所述第一客户端是多人会话客户端;
处理单元,用于根据所述接收单元传输的所述请求消息的消息类型、所述请求消息对应的会话组的组标识和所述会话组内成员的成员标识,执行相应的动作;
在所述装置未创建与所述请求消息对应的会话组的组标识相匹配的会话组的情况下,所述处理单元具体用于,
根据所述请求信息对应的会话组的组标识和所述会话组内成员的成员标识,创建针对所述会话组的会话列表。
11.根据权利要求10所述的装置,其特征在于,在所述装置已创建与所述请求消息对应的会话组的组标识相匹配的会话组的情况下,所述处理单元具体用于,
若所述请求消息的消息类型为邀请新成员,则根据所述请求消息更新针对所述会话组的会话列表;
或者,若所述请求消息的消息类型为踢出成员,所述请求消息携带的信息还包括被踢出成员的标识,则当在所述装置上登陆的第二成员为被踢出成员时,根据所述请求消息删除针对所述会话组的会话列表和/或会话记录,或者,当所述第二成员为未被踢出的成员时,根据所述请求消息更新针对所述会话组的会话列表;
或者,若所述请求消息的消息类型为退出会话,则根据所述请求消息更新针对所述会话组的会话列表;
或者,若所述请求消息的消息类型为聊天,所述请求消息携带的信息还包括聊天内容,则呈现所述第一成员的标识以及所述聊天内容。
12.根据权利要求10所述的装置,其特征在于,所述请求消息携带的信息还包括:消息响应指示;所述装置还包括:
发送单元,用于按照所述消息响应指示,向所述第一客户端发送响应消息,所述响应消息携带的信息包括:在所述装置上登陆的第二成员的标识,所述响应消息的消息内容为是否完成相应动作;
所述接收单元还用于,当所述响应消息的消息内容为没有完成相应动作时,通过所述服务器接收所述第一客户端发送的二次请求消息,所述二次请求消息携带的信息包括:所述请求消息所携带的信息、二次请求消息的对象为所述第二成员的标识。
13.根据权利要求10-12任一项所述的装置,其特征在于,在所述装置没有针对所述会话组的会话列表的情况下,所述处理单元具体用于,
当所述请求消息的消息类型为踢出成员或者退出会话时,丢弃所述请求消息。
14.根据权利要求10-12任一项所述的装置,其特征在于,在所述装置有针对所述会话组的会话列表的情况下,
如果所述接收单元在预设时间内没有接收到针对所述会话组的请求消息,所述处理单元还用于,删除针对所述会话组的会话列表及会话记录,或者所述装置的受限空间已满时,删除针对所述会话组的会话列表及会话记录;
或者,当所述接收单元再次接收到所述会话组内其他成员的所述请求消息时,所述处理单元还用于,根据所述请求消息更新针对所述会话组的会话列表。
15.一种服务器,其特征在于,包括:
接收单元,用于接收第一成员所登录的第一客户端发送的请求消息,所述请求消息携带的信息包括:所述请求消息的消息类型、所述请求消息对应的会话组的组标识和所述会话组内成员的成员标识、所述请求消息的对象;
发送单元,用于根据所述接收单元传输的所述请求消息的对象和所述会话组内成员的成员标识,将所述请求消息发送给所述请求消息的对象所指示的、除所述第一成员之外的其他成员所登录的客户端,以使得所述其他成员所登录的客户端根据所述请求消息的消息类型、所述请求消息对应的会话组的组标识和所述会话组内成员的成员标识执行相应的动作;
所述其他成员所登录的客户端包括第二客户端,其中,所述第一客户端和所述第二客户端是不同的多人会话客户端;
在所述第二客户端未创建与所述请求消息对应的会话组的组标识相匹配的会话组的情况下,所述第二客户端根据所述请求消息的消息类型、所述请求消息对应的会话组的组标识和所述会话组内成员的成员标识,执行相应的动作,包括:
所述第二客户端根据所述请求信息对应的会话组的组标识和所述会话组内成员的成员标识,创建针对所述会话组的会话列表。
16.根据权利要求15所述的服务器,其特征在于,
所述请求消息的消息类型为邀请新成员或者退出会话;
或者,所述请求消息的消息类型为踢出成员,所述请求消息携带的信息还包括所述请求消息的对象为被踢出成员的标识;
或者,所述请求消息的消息类型为聊天,所述请求消息携带的信息还包括聊天内容。
17.根据权利要求15或16所述的服务器,其特征在于,所述请求消息携带的信息还包括:消息响应指示,
所述接收单元还用于,接收第二成员所登录的第二客户端发送的响应消息,所述响应消息携带的信息包括:所述第二成员的标识、所述响应消息的消息内容为是否完成相应动作;所述第二成员为所述会话组内除所述第一成员外的其他成员中的一个成员;
所述发送单元还用于,将所述响应消息发送给所述第一客户端。
18.根据权利要求17所述的服务器,其特征在于,当所述响应消息的消息内容为否时,所述接收单元还用于,
接收所述第一客户端发送的二次请求消息;所述二次请求消息携带的信息包括:所述请求消息所携带的信息、所述二次请求消息的对象为所述第二成员的标识;
所述发送单元还用于,根据所述二次请求消息的对象将所述二次请求消息发送给所述第二成员所登陆的第二客户端。
19.一种管理多人会话的系统,其特征在于,包括:权利要求10-14任一项所述的管理多人会话的装置和/或权利要求15-18任一项所述的服务器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310178962.1A CN103259715B (zh) | 2013-05-14 | 2013-05-14 | 一种管理多人会话的方法、装置及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310178962.1A CN103259715B (zh) | 2013-05-14 | 2013-05-14 | 一种管理多人会话的方法、装置及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103259715A CN103259715A (zh) | 2013-08-21 |
CN103259715B true CN103259715B (zh) | 2016-11-02 |
Family
ID=48963427
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310178962.1A Active CN103259715B (zh) | 2013-05-14 | 2013-05-14 | 一种管理多人会话的方法、装置及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103259715B (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2537587B (en) | 2015-02-27 | 2019-01-02 | Novastone Media Ltd | Asymmetric permissions in a communications system |
CN104901872A (zh) * | 2015-06-25 | 2015-09-09 | 携程计算机技术(上海)有限公司 | 基于xmpp协议的群组聊天方法及系统 |
CN105099728B (zh) * | 2015-08-31 | 2019-03-12 | 海信集团有限公司 | 一种消息处理方法和系统、及智能电视终端 |
CN105262750B (zh) * | 2015-10-21 | 2020-01-10 | 腾讯科技(深圳)有限公司 | 一种自动发起会话的方法和设备 |
CN107046496B (zh) * | 2016-02-05 | 2020-02-14 | 李盈 | 一种基于角色进行即时会话的方法、服务器和系统 |
CN109147803B (zh) * | 2017-06-28 | 2020-10-23 | 武汉斗鱼网络科技有限公司 | 多人语音通信方法、存储介质、电子设备及系统 |
CN108388407B (zh) * | 2018-02-10 | 2020-12-25 | 深圳壹账通智能科技有限公司 | 消息的处理方法、装置、计算机设备及存储介质 |
CN109587036A (zh) * | 2018-11-01 | 2019-04-05 | 广东黾车新能源汽车产业有限公司 | 一种工作组群自动建立方法 |
CN111585774B (zh) * | 2020-03-24 | 2022-02-01 | 福建天泉教育科技有限公司 | 会话更新的方法、存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101079823A (zh) * | 2006-06-09 | 2007-11-28 | 腾讯科技(深圳)有限公司 | 一种发起与组建虚拟讨论组的方法及系统 |
CN101242588A (zh) * | 2007-02-09 | 2008-08-13 | 华为技术有限公司 | 会话邀请的控制方法与多方通信系统及其服务器、发起端 |
CN101316179A (zh) * | 2007-06-01 | 2008-12-03 | 华为技术有限公司 | 设置会话角色的方法、服务器与终端 |
-
2013
- 2013-05-14 CN CN201310178962.1A patent/CN103259715B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101079823A (zh) * | 2006-06-09 | 2007-11-28 | 腾讯科技(深圳)有限公司 | 一种发起与组建虚拟讨论组的方法及系统 |
CN101242588A (zh) * | 2007-02-09 | 2008-08-13 | 华为技术有限公司 | 会话邀请的控制方法与多方通信系统及其服务器、发起端 |
CN101316179A (zh) * | 2007-06-01 | 2008-12-03 | 华为技术有限公司 | 设置会话角色的方法、服务器与终端 |
Also Published As
Publication number | Publication date |
---|---|
CN103259715A (zh) | 2013-08-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103259715B (zh) | 一种管理多人会话的方法、装置及系统 | |
US11172068B2 (en) | Social networking-based teleconferencing system and method | |
US8751572B1 (en) | Multi-user chat search and access to chat archive | |
US7664816B2 (en) | Multi-participant online activities | |
CN100555972C (zh) | 在网络聊天室中多成员聚集交流的方法、服务器 | |
US9621958B2 (en) | Deferred, on-demand loading of user presence within a real-time collaborative service | |
CN105847988A (zh) | 视频分享方法和装置 | |
KR20100072201A (ko) | 동적 인스턴트 코멘트 | |
US20180234371A1 (en) | Method, system and computer program product for providing interactive elements in messages | |
CN103918290A (zh) | 提供即时通讯服务和从即时通讯服务中被扩展的多个服务的方法 | |
CN103346953B (zh) | 一种群组通讯数据交互的方法、装置及系统 | |
US20150341432A1 (en) | Grouping method, client, server, and system | |
US20140237034A1 (en) | Method, apparatus, system and computer readable storage medium of adding instant message contact | |
US20220201341A1 (en) | Method, apparatus and device for game live-streaming | |
CN102821056A (zh) | 一种即时通信消息的传输方法及设备 | |
CN107135145A (zh) | 消息推送控制方法及装置 | |
CN105207885B (zh) | 在会话界面中展示用户信息的方法及装置 | |
KR20180118732A (ko) | 비동기 메시징 시스템에서의 단일 계정에 대한 다수 프로파일의 관리 | |
CN103995872A (zh) | 一种在应用中基于场景展开讨论与聊天的方法与系统 | |
CN103703767A (zh) | 一种视讯会议的实现方法、业务管理设备及视讯会议系统 | |
CN109905629A (zh) | 音视频会议时实现文档共享的方法、装置、介质和设备 | |
CN105812229A (zh) | 一种终端通信方法、系统及相关装置 | |
CN106161201A (zh) | 一种以邮箱账号为标识参与群聊的方法、设备及系统 | |
CN110224924B (zh) | 状态更新方法和装置、存储介质及电子装置 | |
KR101545663B1 (ko) | 다중-사용자 관계 체인을 변경하는 기기, 시스템 및 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20200213 Address after: 518129 Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen Patentee after: HUAWEI TECHNOLOGIES Co.,Ltd. Address before: 210012 HUAWEI Nanjing base, 101 software Avenue, Yuhuatai District, Jiangsu, Nanjing Patentee before: Huawei Technologies Co.,Ltd. |
|
TR01 | Transfer of patent right |