一种同步通信方法、终端及服务器与流程

文档序号:17049267发布日期:2019-03-05 19:52阅读:145来源:国知局
一种同步通信方法、终端及服务器与流程

本发明涉及电子应用领域中的社交应用通信技术,尤其涉及一种同步通信方法、终端及服务器。



背景技术:

随着科学技术的不断发展,电子技术也得到了飞速的发展,电子产品的种类也越来越多,人们也享受到了科技发展带来的各种便利。现在人们可以通过各种类型的电子设备或终端,以及安装在终端上的各种功能的应用享受随着科技发展带来的舒适生活。例如,采用终端上的社交应用可以通过网络与远方的亲朋好友进行即时通讯(im,instantmessaging)等。

在即时通讯应用中,实时聊天通话是中一种非常重要的通讯方式,比文本、图片等之类的通讯方式更加地直接和实时。目前主流的im应用大都支持音视频方式的实时通话,但实时通话的建立过程都比较复杂,需要发起方呼叫,并且接收方接听才能建立通话,这样的通话建立和实时通话的应用是被动的,人机交互性能是受限制的。



技术实现要素:

为解决上述技术问题,本发明实施例期望提供一种同步通信方法、终端及服务器,能够灵活的进行同步通信的建立和同步通信的实现,提高了人机的交互性能。

本发明的技术方案是这样实现的:

本发明实施例提供了一种同步通信方法,应用于第一终端中,包括:

根据启动触控指令开启应用界面,在所述应用界面显示对应第一通信对象,及历史记录中由对应第二通信对象构成的虚拟人物群组;

接收通信指令,根据所述通信指令触发语音通信请求,以将所述第一通信对象加入所述历史记录中的任意一个通信会话中;

当所述语音通信请求被允许时,在所述应用界面完成所述第一通信对象和所述第二通信对象的第一通信会话的建立;

在所述应用界面的所述第一通信会话中触发开启语音功能,在所述语音功能开启时,将由所述第一通信对象触发的第一语音数据发送给第二终端,在所述第一通信对象和所述第二通信对象所在的所述应用界面中同步显示所建立的通信会话当前所处的语音状态和语音广播标识。

本发明实施例提供了一种同步通信方法,应用在服务器中,包括:

接收所述第一终端发送的对第一通信会话的语音通信请求消息,所述语音通信请求消息中携带有所述第一通信会话的标识,所述第一通信会话为所述第一通信对象加入的所述历史记录中的任意一个通信会话;

当未查找到所述第一通信会话的标识对应的应用界面时,响应所述语音通信请求消息,建立与所述第一通信会话的标识对应的应用界面,并生成语音界面建立完成消息;

将所述语音界面建立完成消息发送给所述第一终端;

接收所述第一终端发送的建立实时数据通道消息,根据所述建立实时数据通道消息,建立与所述第一终端的实时数据通道;

当所述实时数据通道建立完成时,发送允许通信消息至所述第一终端。

本发明实施例提供了一种第一终端,包括:

显示单元,用于根据启动触控指令开启应用界面,在所述应用界面显示对应第一通信对象,及历史记录中的由对应第二通信对象构成的虚拟人物群组;

第一接收单元,用于接收通信指令,根据所述通信指令触发语音通信请求,以将所述第一通信对象加入所述历史记录中的任意一个通信会话中;

通信单元,用于当所述语音通信请求被允许时,在所述应用界面完成所述第一通信对象和所述第二通信对象的第一通信会话的建立;

启动单元,用于在所述应用界面的所述第一通信会话中触发开启语音功能,

第一发送单元,用于在所述语音功能开启时,将由所述第一通信对象触发的第一语音数据发送给第二终端,

所述显示单元,还用于在所述第一通信对象和所述第二通信对象所在的所述应用界面中同步显示所建立的通信会话当前所处的语音状态和语音广播标识。

本发明实施例提供了一种服务器,包括:

第二接收单元,用于接收所述第一终端发送的对第一通信会话的语音通信请求消息,所述语音通信请求消息中携带有所述第一通信会话的标识,所述第一通信会话为所述第一通信对象加入的所述历史记录中的任意一个通信会话;

建立单元,用于当未查找到所述第一通信会话的标识对应的应用界面时,根据所述语音通信请求消息,建立与所述第一通信会话的标识对应的应用界面,

生成单元,用于生成语音界面建立完成消息;

第二发送单元,用于将所述语音界面建立完成消息发送给所述第一终端;

所述第二接收单元,还用于接收所述第一终端发送的建立实时数据通道消息,根据所述建立实时数据通道消息,建立与所述第一终端的实时数据通道;

所述第二发送单元,还用于当所述实时数据通道建立完成时,发送允许通信消息至所述第一终端。

本发明实施例提供了一种第一计算机可读存储介质,所述第一计算机可读存储介质中存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个第一处理器执行所述终端侧的同步通信方法。

本发明实施例提供了一种第二计算机可读存储介质,其特征在于,所述第二计算机可读存储介质中存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个第二处理器执行所述服务器侧的同步通信方法。

本发明实施例提供了一种同步通信方法、终端及服务器,通过根据启动触控指令开启应用界面,在应用界面显示对应第一通信对象,及历史记录中由对应第二通信对象构成的虚拟人物群组;接收通信指令,根据通信指令触发语音通信请求,以将第一通信对象加入历史记录中的任意一个通信会话中;当语音通信请求被允许时,在应用界面完成第一通信对象和第二通信对象的第一通信会话的建立;在应用界面的第一通信会话中触发开启语音功能,在语音功能开启时,将由第一通信对象触发的第一语音数据发送给第二终端,在第一通信对象和第二通信对象所在的应用界面中同步显示所建立的通信会话当前所处的语音状态和语音广播标识。采用上述技术实现方案,由于在应用界面中可以选择对历史记录中的任意一个通信会话进行通信,并且通过发送语音通信请求消息给服务器,来建立第一终端和服务器之间的通信连接,在通信连接完成即第一终端接收到允许通信消息的时候,该第一终端就可以进入应用界面中了,并可以看到哪些通信对象在该应用通信界面中,这样在第一终端或第一通信对象对应的语音功能打开的时候,对其他通信对象进行语音通话,并且第一终端通过同步了第一通信会话的语音广播标识和语音状态至第二通信对象所在的第二终端的应用界面中,以便第二终端上可以显示出哪个通信会话中有语音通信正在进行,这样,第一终端提供了自主选择与第二终端建立通信连接,也提供了自主进行语音通话的机制,能够灵活的进行同步通信的建立和同步通信的实现,因此,提高了人机的交互性能。

附图说明

图1为本发明实施例中进行同步通信系统中的各种硬件实体的示意图;

图2为本发明实施例中的第一终端(终端)与服务器之间的交互架构图;

图3为本发明实施例提供的一种同步通信方法的流程图一;

图4为本发明实施例提供的示例性的当前通信界面的示意图;

图5为本发明实施例提供的示例性的语音通信界面的示意图一;

图6为本发明实施例提供的一种同步通信方法的流程图二;

图7为本发明实施例提供的示例性的语音通信界面的示意图二;

图8为本发明实施例提供的示例性的语音通信界面的示意图三;

图9为本发明实施例提供的示例性的语音通信界面的示意图四;

图10为本发明实施例提供的一种同步通信方法的流程图三;

图11为本发明实施例提供的示例性的语音通信界面的示意图五;

图12为本发明实施例还提供的一种同步通信的流程图;

图13为本发明实施例提供的一种同步通信的交互图;

图14为本发明实施例提供的一种第一终端的结构示意图一;

图15为本发明实施例提供的一种第一终端的结构示意图二;

图16为本发明实施例提供的一种服务器的结构示意图一;

图17为本发明实施例提供的一种第一终端的结构示意图三;

图18为本发明实施例提供的一种服务器的结构示意图二。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。

图1为本发明实施例中进行同步通信系统中的各种硬件实体的示意图,图1中包括:一个或多个服务器2、终端1-1至1-5及网络3,网络3中包括路由器,网关等等网络实体,图中并未体现。终端1-1至1-5通过有线网络或者无线网络与服务器进行信息交互,以便从终端1-1至1-5采集身份识别结果传输至服务器。终端的类型如图1所示,包括手机(终端1-3)、平板电脑或pda(终端1-5)、台式机(终端1-2)、pc机(终端1-4)、一体机(终端1-1)等类型。其中,终端中安装有各种用户所需的应用,比如具备娱乐功能的应用(如视频应用,音频播放应用,游戏应用,阅读软件),又如具备服务功能的应用(如地图导航应用、团购应用、拍摄应用、理财应用和通信应用等)。

本发明实施例中是以安装有通信应用的终端(例如第一终端和第二终端等)以及通信应用对应的服务器为例进行说明的。下面以第一终端和服务器为例说明下本发明实施例中的同步通信系统中的模块的连接结构。

具体的,如图2所示,服务器包括实时通信数据模块、实时通信信令模块和状态中心,第一终端中的通信应用的客户端中可以包括:实时通信界面模块。其中,

实时通信信令模块,用于实现实时通信相关的房间管理(建立语音通信界面)、音频等的设备管理(语音功能的打开或启动等)、通信对象的状态管理(通信对象的在线情况等的列表)以及与终端的信令管理等。

实时通信数据模块,用于实现实时通信相关的语音数据、人脸特征信息、功能对象等数据类型的实时传输。

实时通信界面,用于实现实时通信时的虚拟人物的排布、界面显示等。

状态中心,用于存储实时信令和实时数据。

需要说明的是,第一终端与服务器的交互既有实时数据的交互,也是实时信令的交互,其中,实时信令的交互是第一终端通过实时信令通道与服务器的实时通信信令模块交互实现的,实时数据的交互是第一终端通过实时数据通道与服务器的实时通信数据模块交互实现的。

在本发明实施例中,实时信令通道可以为传输控制协议(tcp,transmissioncontrolprotocol)通道,实时数据通道可以为用户数据报协议(udp,userdatagramprotocol)通道,具体的本发明实施例可以不作限制。

实施例一

本发明实施例提供了一种同步通信方法,应用于第一终端侧,如图3所示,该同步通信方法可以包括:

s101、根据启动触控指令开启应用界面,在应用界面显示对应第一通信对象,及历史记录中由对应第二通信对象构成的虚拟人物群组。

本发明实施例提供的一种同步通信方法可以适用于即使通讯的使用场景中,通信应用可以为进行实时通信的社交应用,例如,实时聊天通话的聊天软件。本发明实施例不作限制。

本发明实施例中的第一终端可以为安装有通信应用的电子设备,例如,智能手机、平板等。本发明实施例不作限制。

在本发明实施例中,当第一用户想要使用通信应用时,该第一用户触控该通信应用的图标,则第一终端就接收到了对通信应用的启动触控指令,该启动触控指令用于启动通信应用。其中,第一用户可以为使用第一终端上的通信应用的用户。

示例性的,第一用户点击“通信应用1”的图标去启动该通信应用1。

需要说明的是,在本发明实施例中,第一用户触控通信应用,实现该通信应用的启动的触控操作可以是点击、双击或是特殊手势等,本发明实施例不作限制。

第一终端在接收到了启动触控指令之后,该第一终端响应启动触控指令,加载通信应用的当前通信界面(此时的应用界面为当前通信界面),并在当前通信界面显示已登录通信应用的第一通信对象(该第一通信对象的表现形式为第一虚拟人物),以及历史记录中的第二通信对象的虚拟人物群组。

第一终端在接收到对通信应用的启动触控指令之后,响应该启动触控指令,开始启动该通信应用,开始加载该通信应用的当前通信界面,加载完成后,显示该当前通信界面,并在当前通信界面上显示已经登录了该通信应用的第一通信对象的第一虚拟任务,以及历史记录中的第二通信对象构成的虚拟人物群组。其中,历史记录为与上述第一通信对象进行过通信会话的历史信息。其中,第一通信对象可以表征已经登录了通信应用的第一用户。

需要说明的是,在本发明实施例中,通信应用中的通信对象的展示形式是可以以虚拟人物为主要形象的,每个虚拟人物具有一个自己的标识(即用户的标识,也就是通信对象的标识等)。具体的虚拟人物的表现形式本发明实施例不作限制。

优选的,本发明实施例中的虚拟人物可以为三维立体的虚拟人物,具体的实现过程本发明实施例不作限制。

进一步地,在本发明实施例中,通信应用在首次被触发的时候,该第一终端上可以显示登录该通信应用时的登录界面,第一用户可以在该登录界面上进行第一通信对象的相关信息的注册和设置,登录之后就可以通过加好友等功能与其他通信对象进行通信了,而在第一用户不退出登录的情况下,第一用户在关闭了已登录过的通信应用之后,该第一用户再次触控该通信应用时,该通信应用接收到了对通信应用的启动触控指令之后,由于该第一终端上已经有第一通信对象登录了,因此,这时该第一终端的登录显示就可以直接显示出第一通信对象的登录后的通信界面了,即该第一终端响应启动触控指令,加载通信应用的当前通信界面,并在当前通信界面显示已登录通信应用的第一通信对象以及与第一通信对象之前进行过通信的历史记录了。由于本发明实施例中的通信对象的展示形式可以为虚拟人物,因此,第一终端在当前通信界面显示已登录通信应用的第一通信对象以及历史记录的界面展示出来的是第一虚拟人物,以及历史记录中的与第一通信对象进行过通信的第二通信对象构成的虚拟人物群组。

需要说明的是,在本发明实施例中,通信对象表征可以进行相互通信的不同用户,其表现形式为可相互通信的虚拟人物的标识。其中,通信对象的虚拟人物及其标识等都是在通信对象表征的用户登录的时候进行设置的。

在本发明实施例中,通信应用中设置有虚拟人物的设置模板,用户可以通过在登录过程中的虚拟人物的设置模板来设置自己的虚拟人物,具体的用户可以自主选择自己对应的通信对象的人物角色,虚拟人物的穿着、虚拟人物的昵称(即标识)等多种信息,本发明实施例不作限制。其中,虚拟人物的设置模板是设计人员事先设计好的虚拟人物的形象和相关信息,供用户在登录的时候设置自己的虚拟人物时使用。

在本发明实施例中,第一通信对象展示的形象为第一虚拟人物,历史记录中的第二通信对象的展示形象表现为虚拟人物群组。

需要说明的是,在本发明实施例中,与第一通信对象进行过通信的第二通信对象可以有至少一个,因此,历史记录中的通信对象的个数可以是一个,也可以是多个,这样,虚拟人物群组代表的一个统称。其中,在本发明实施例中,历史记录中的通信对象的虚拟人物群组之间是可以通过滑动来滚动显示的,当前的通信界面的显示有限,具体的滑动操作等触发方式本发明实施例不作限制。

对于本发明实施例中提及的“虚拟人物群组”而言,本发明实施例中有两种应用场景。第一、在第一通信对象为呼叫通信的一方(即通信双方的呼叫主体)的场景中,第二通信对象构成的虚拟人物群组可以称为是第二虚拟人物群组,表征与第一通信对象进行通信的第二通信对象所组成的群体的统称;第二、当第二通信对象中的某个通信对象作为呼叫主体与第一通信对象进行通信的场景中,该某个通信对象中的历史记录中的通信对象(包括第一通信对象在内)就构成第一虚拟人物群组。也就是说,虚拟人物群组,是构成呼叫通信的通信对象被3d虚拟化后得到虚拟人物所组成群体的统称。

示例性的,如图4所示,当已登录通信应用(第二世界)的第一通信对象a启动该通信应用之后,当前通信界面上显示出了a的第一虚拟人物的头像,以及历史记录中的第二通信对象,如群聊中的通信对象、李磊以及小秘书等的虚拟人物群组。其中,历史记录中可能包含了群聊,因此,在当前界面的群聊中也会显示第一通信对象a的虚拟人物。

s102、接收通信指令,根据通信指令触发语音通信请求,以将第一通信对象加入历史记录中的任意一个通信会话中。

第一终端根据启动触控指令开启应用界面,在应用界面显示对应第一通信对象,及历史记录中由对应第二通信对象构成的虚拟人物群组(即第二虚拟人物群组)之后,由于该第一终端已经显示出了之前已经通信过的第二通信对象的通信会话了,因此,第一终端的使用者第一用户可以从当前显示的历史记录中直接选择自己想要进行通信的第一通信会话,即第一用户触控选择历史记录中的任意一个通信会话(第一通信会话),于是,该第一终端都接收了对第一通信会话的通信指令,第一终端根据通信指令触发语音通信请求的,以将第一通信对象加入第一通信会话中,具体为第一终端响应通信指令,发送语音通信请求消息至服务器,并接收服务器响应语音通信请求消息的允许通信消息,根据允许通信消息实现第一通信对象加入第一通信会话中。

需要说明的是,第一终端在接收对第一通信会话的通信指令之后,该第一终端就可以响应该通信指令了,由于该通信指令用于指示第一通信对象加入第一通信会话,于是,该第一终端就可以进行加入第一通信会话的过程了。具体的,第一终端需要去服务器进行语音通信请求消息,其中,语音通信请求消息用于请求与第一通信会话进行通信连接,因此,第一终端发送语音通信请求消息至服务器,该服务器响应该语音通信请求,发送了允许通信消息至第一终端,允许该第一终端加入第一通信会话进行语音通信。其中,允许通信消息用于表征该第一终端已经与服务器建立好了通信连接,可以进行通信数据的交互了。

需要说明的是,在本发明实施例中,服务器为通信应用对应的应用服务器。第一终端在使用通信应用的时候,是需要与该通信应用对应的服务器进行通信连接的信息交互的,具体的交互过程将在后面实施例和后续实施例中进行详细的描述。

在本发明实施例中,语音通信请求消息中是携带有第一通信会话的标识的,以便于服务器可以通过第一通信会话的标识来进行与第一终端的通信连接。

需要说明的是,在本发明实施例中,通信对象之间的主要通信方法可以为语音通信,而且通信对象之间的形象展示为虚拟人物,但是其他的文字、图片或表情等方式的通信也可以进行辅助通信,本发明实施例不作限制。

具体的,s102的具体实现过程可以包括:第一终端响应通信指令,发送语音通信请求消息至服务器;接收服务器响应通信指令反馈的语音界面建立完成消息;根据语音界面建立完成消息,发送建立实时数据通道消息至服务器;接收服务器响应实时数据通道消息反馈的允许通信消息,该允许通信消息用于表征语音通信请求被允许。具体的过程将在后续实施例中进行说明。

需要说明的是,在本发明实施例中,第一用户还可以通过通信应用中的通讯录选择一个新的通信对象进行通信会话,或者,第一用户通过新添加一个通信对象进行通信会话等,具体第一用户通过哪种形式触发通信会话的选择本发明实施例不作限制。但是,不论第一用户通过哪种方式都可以触发一个通信会话,对于第一终端而言,该第一终端都接收了对通信会话的通信指令,这时通信会话就是第一用户触发的通信会话,即上面的第一通信会话的角色。

s103、当语音通信请求被允许时,在应用界面完成第一通信对象和第二通信对象的第一通信会话的建立。

第一终端根据通信指令触发语音通信请求给服务器后,该第一终端在接收服务器响应语音通信请求消息的允许通信消息之后,由于允许通信消息表征了服务器允许第一终端加入第一通信会话,即语音通信请求被允许,也就是说,允许通信消息用于表征该第一终端已经与服务器建立好了通信连接,可以进行通信数据的交互了,这样,该第一终端就表征在当前的应用界面上完成了第一通信对象和第二通信对象的第一通信会话的建立了。

s104、在应用界面的第一通信会话中触发开启语音功能,在语音功能开启时,将由第一通信对象触发的第一语音数据发送给第二终端,在第一通信对象和第二通信对象所在的应用界面中同步显示所建立的通信会话当前所处的语音状态和语音广播标识。

第一终端在应用界面(即语音通信界面)完成所述第一通信对象和所述第二通信对象的第一通信会话的建立之后,该第一终端已经与服务器建立好了通信连接,可以通过服务器与第二终端进行通信数据的交互了。第一终端在应用界面的第一通信会话中触发开启语音功能,在语音功能开启时,将由第一通信对象触发的第一语音数据发送给第二终端,在第一通信对象和第二通信对象所在的应用界面中同步显示所建立的通信会话当前所处的语音状态和语音广播标识。其中,此时的语音状态为第一虚拟人物的语音状态,此时的语音广播标识为第一通信会话的语音广播标识。

由于在语音通信界面已经可以显示第一虚拟人物和第二虚拟人物,该第一终端已登录的第一通信对象就可以和语音通信界面中的第二通信对象进行语音通信了。在本发明实施例中,上述语音通信界面中可设置有语音功能,当这个语音功能被打开时(在语音通信界面的第一通信会话中触发开启语音功能),即启动时,表征此时第一通信对象可以利用第一终端上的语音通信界面进行实时语音通信了,于是,第一通信对象对应的第一用户就可以说话了,这样,第一终端就接收到了第一通信对象的第一语音数据了,还可以将由第一通信对象触发的第一语音数据发送给第二终端。由于语音通信界面中显示的都是第一通信对象和第二通信对象,也就是说当前的语音通信界面中的通信对象不止一个,因此,在其中一个通信对象讲话时,即第一终端接收到一个通信对象的语音数据时,该第一终端可以同步显示是哪个通信对象正在讲话。即在第一终端接收第一通信对象的第一语音数据,并且该第一终端可以同步显示第一虚拟人物的语音状态。由于第一虚拟人物为第一通信对象的展示形式,因此,语音通信界面上的第一虚拟人物的语音状态为正在通话时,表征第一通信对象正在讲话。同时,第一终端上还会同步显示第一通信会话的语音广播标识,并通过服务器将语音广播标识和语音状态同步至第二终端,以便该第二终端同步显示该第一通信会话的语音广播标识和语音状态,这样,第二终端对应的用户就可以获知哪个通信会话中正在进行语音通话以及正在进行语音通话中的哪个通信正在说话了,便于后续用户选择语音通信的选择。其中,第二终端为第一通信会话中的在线的第二通信对象对应的终端设备。

在本发明实施例中,当语音功能打开的时候,当第一通信对象不在说话时,可能存在在线的第二通信对象进行语音通话的状态,于是登录了该在线的第二通信对象的第二终端就可以将第二语音数据实时发送给服务器,该服务器就将第二语音数据实时的转发给第一终端,使得第一终端在当前的语音通信界面可以接收到第二通信对象的语音数据并播放出来,实现了实时语音通信。

需要说明的是,在本发明实施例中,第一虚拟人物的语音状态和第一通信会话的语音广播标识也是通过服务器同步在第二终端上的。

可选的,在本发明实施例中,每个虚拟人物的语音状态的表现形式可以为声波形状的通话标识,也可以为文字提示等,本发明实施例不限制其语音状态的表现形式。语音状态的表现形式的显示位置也可以在虚拟人物的标识的附近,这样可以便于辨识虚拟人物的表征的身份,但是本发明实施例不作限制。

示例性的,如图5所示的第一通信会话对应的语音通信界面中,第一通信对象的第一虚拟人物为陈晓波,当第一用户点击了第一终端显示的语音通信界面上的语音功能按键,即被点亮时,此时第一用户就可以进行语音通话了(即已开启实时聊天),这样,第一终端就接收到了表征第一用户的第一通信对象的第一语音数据了,并同步显示该第一通信对象的虚拟人物的标识旁边的语音状态为正在通话,即显示出了一个声波形状的通话标识。

进一步地,第一终端显示的语音通信界面中还可以设置有添加通信好友等其他功能,以便在语音通信中可以再邀请其他的通信对象进行实时通信,如图5所示语音通信界面中的按键就可以作为添加通信好友等其他功能的功能键使用。

进一步地,当语音功能打开,或者语音通信界面中有通信对象的语音功能打开时,第一通信会话的显示区域会显示语音广播标识,表征该第一通信会话中有人正在语音,这样可以让未在线的通信对象(对应的第二终端)可以直接通过自己的当前通信界面的历史记录中看到有第一通信会话中有人正在通信,这样,其他通信对象对应的用户就可以通过打开该第一通信会话来加入到语音通信中。并且,第二终端上的第一通信会话的显示区域也会同步显示语音广播标识,第二终端中语音广播标识的显示与图4所示的显示区域上的语音广播标识一致。

示例性的,如图4和图5所示,当第一通信会话第一通信会话的标识(小伙伴)的旁边显示了语音广播标识

进一步地,第一终端同步显示第一虚拟人物的语音状态之后,该第一终端还需要将第一通信对象的第一语音数据发送给服务器,这样该服务器就可以将语音数据实时的传送给第二通信对象对应的第二终端了,以使得已在线的第二通信对象可以实时的听到第一通信对象的语音,实现了通信对象间的实时通信。

可以理解的是,由于在当前通信界面中可以选择对历史记录中的第一通信会话进行通信,并且通过发送语音通信请求消息给服务器,来建立第一终端和服务器之间的通信连接,在通信连接完成即第一终端接收到允许通信消息的时候,该第一终端就可以进入语音通信界面中了,并可以看到哪些通信对象在该语音通信界面中,这样在第一终端或第一通信对象对应的语音功能打开的时候,对其他通信对象进行语音通话,并且第一终端通过服务器同步了第一通信会话的语音广播标识至第二终端,以便第二终端上可以显示出哪个通信会话中有语音通信正在进行,这样,第一终端提供了自主选择与服务器建立通信连接,也提供了自主进行语音通话的机制,能够灵活的进行同步通信的建立和同步通信的实现,并且在语音通信界面中提供了虚拟人物表征通信对象身份的新的实现形式,因此,提高了人机的交互性能。

进一步地,在s103之后,如图6所示,本发明实施例提供的一种同步通信方法还可以包括:s105-s108。如下:

s105、在应用界面显示第一通信对象对应的第一虚拟人物和虚拟人物群组。

在本发明实施例中,第一终端在根据所述通信指令触发语音通信请求之后,该第一终端根据该允许通信消息(即当语音通信请求被允许时),加载了语音通信的界面(即此时的应用界面),即在应用界面完成第一通信对象和第二通信对象的第一通信会话的建立之后,该第一终端可以在语音通信的界面显示第一通信对象对应的第一虚拟人物和第二虚拟人物群组。

需要说明的是,由于本发明实施例中的通信对象的形象展示为虚拟人物,通信方式主要的是语音通信,因此,在本发明实施例中,语音通信界面上显示的是当前第一通信会话中的通信对象的虚拟人物,并且第一通信对象也加入了第一通信会话,因此,第一终端的语音通信界面显示出了第一虚拟人物和第二虚拟人物群组中的第二虚拟人物,其中,第二虚拟人物为第二虚拟人物群组中与第二通信对象对应的虚拟人物,第二通信对象为第一通信会话中与第一通信对象不同的通信对象。

需要说明的是,在本发明实施例中,第一终端响应允许通信消息,进入了语音通信界面的时候,由于第一用户选择的第一通信会话可能是群聊会话,那么在这样的情况下,群聊中已经包括了第一通信对象了,于是,上述语音通信界面上显示的是第一通信会话的全部的通信对象的虚拟人物,即第一虚拟人物和第二虚拟人物;而当第一用户选择的第一通信会话为单个通信对象时,这样的第一通信会话中的第二通信对象本来就是与第一通信对象不同的通信对象,因此,这时第一终端进入第一通信对象与第二通信对象的语音通信界面,显示的就是第一虚拟人物和第二虚拟人物了。

在本发明实施例中,虚拟人物的对应区域都有表征该虚拟人物的标识(即通信对象的标识),以便进行多个虚拟人物在同一个语音通信界面时的通信对象的身份。

需要说明的是,本发明实施例中的虚拟人物的标识所在的区域中还可以设置有在线状态提示标识,例如,在线提示灯。这样,就可以通过在线状态提示标识来判断当前第一通信会话对应的语音通信界面中哪些通信对象是在线的,在线的意思为通信对象此刻登录了通信应用,并且进入了第一通信会话的语音通信界面了。具体的在线状态提示标识的实现形式可以为颜色标识的不同,文字提示等,本发明实施例不作限制。

具体的,服务器通过实时信令管理来维持当前实时房间(语音通信界面)的所有聊天成员列表(在线通信对象的列表),当有通信对象加入(即有通信对象打开了自己终端上的第一通信会话,也就是上线)或退出房间(即关闭自己终端上的第一通信会话,也就是下线)时,会实时更新这个聊天成员列表,然后同步当前在实时房间中的其他成员,使得语音通信界面上可以同步显示每个通信对象的在线状态,即实时更新每个通信对象的在线状态提示标识。

示例性的,如图7所示,假设第一通信对象第一通信会话(“小伙伴”)中的第二通信对象可以为猫和李磊,第一通信对象可以为陈晓波,这样的话,在第一用户选择了“小伙伴”这个通信会话的时,进入了“小伙伴”的语音通信界面,该语音通信界面上显示了猫、李磊以及陈晓波各自对应的虚拟人物了及其标识,并且在猫、李磊以及陈晓波各自对应的虚拟人物的前面有在线提示灯,在线提示灯被点亮则表征在线,在线提示灯熄灭则表征不在线,如图7中,虚拟人物中的猫和陈晓波前面的在线提示灯被点亮,表征了猫和陈晓波此时进入了语音通信界面中的,也就是说,猫和陈晓波可以进行实时语音通信;而李磊则不在线,也就是没有进入此时的语音通信界面中。

在本发明实施例中,语音通信界面也可以表征为通信对象进入的实时语音通信的语音房间,具体的形式本发明实施例不作限制。

s106、接收通信功能触控指令,并响应通信功能触控指令,在应用界面的第二显示区域调出功能选择界面。

第一终端在语音通信界面显示第一虚拟人物和虚拟人物群组之后,本发明实施例中的显示的语音通信界面(应用界面)上可以设置有通信功能触控按键,该通信功能触控按键是可以实现与其他通信对象进行其他形式的通信的功能按键。也就是说,在本发明实施例中,通信方式除了语音之外,语音通信界面中还可以设置其他的通信功能触控按键让第一通信对象与第二通信对象进行其他形式的通信。这样的话,当第一用户在触发了通信功能触控按键时,该第一终端接收到了通信功能触控指令,于是,该第一终端响应该通信功能触控指令,在当前的语音通信界面中与第二通信对象进行通信了,具体的,第一终端可以响应通信功能触控指令,在语音通信界面的第二显示区域调出对应的功能选择界面,在功能选择界面上选择具体的功能对象,从而实现该功能对象表征的通信功能。其中,第二显示区域为当前的语音通信界面中的一部分区域。可选的,在本发明实施例中,第二显示区域可以为语音通信界面的最下方的一个区域。

这里,在本发明实施例中,语音功能按键,添加通信好友功能按键以及通信功能触控按键等触控按键都可以显示在该第二显示区域内,也就是对触控按键进行统一区域的设置和管理,便于用户的使用和操作。当然,本发明实施例不限制各个触控按键的设置区域。

示例性的,如图5中的语音通信界面中,语音功能按键,添加通信好友功能按键以及通信功能触控按键等触控按键都显示在显示区域1(第二显示区域)内,这时,本发明实施例中的第一终端上的通信功能触控按键可以为表情功能按键,例如,等,也可以是文字输入等,本发明实施例不限制通信功能触控按键的功能种类。

需要说明的是,在本发明实施例中,通信功能触控按键可以设置有多个不同的功能对应的按键,也可以在一个通信功能触控按键中设置有不同表现形式的相同功能的功能对象,具体的设置或实现方式本发明实施例不作限制。

s107、在功能选择界面上接收选择指令,并响应选择指令,将选择指令选择出的功能对象与第一虚拟人物对应显示在语音通信界面上。

第一终端在接收通信功能触控指令,并响应通信功能触控指令,在语音通信界面的第二显示区域调出功能选择界面之后,由于通信功能触控按键被触控时,该通信功能触控按键对应的通信功能的实现方式可以有多个,因此,在功能选择界面上可能会显示出与上述通信功能的多种功能对象,这样就需要在功能选择界面上的多个功能对象中选择出想要实现的一种,即第一终端在功能选择界面上接收到了选择指令,响应该选择指令,将该选择指令选择出来的功能对象在语音通信界面上与第一虚拟人物对应显示。

在本发明实施例中,通信功能触控按键可以为表情功能按键等个性化功能按键,表情功能按键的表现形式可以为预设的表情图标,也可以为预设肢体人物图标等,具体的本发明实施例不作限制。其中,功能对象就为预设的表情图标中被选中的一个表情图标,或者为预设肢体人物图标中被选中的一个肢体人物图标。

在本发明实施例中,第一用户在功能选择界面上从多个功能对象中选择一个功能对象,即第一终端接收了选择指令,当第一用户选择了预设的表情图标中的一个时,该选择指令为表情选择指令,这时的功能对象为肢体对象;当第一用户选择了预设肢体人物图标中的一个时,该选择指令为肢体选择指令,这时的功能对象为表情对象。

具体的,当选择指令为肢体选择指令时,第一终端响应选择指令,将选择指令选择出的肢体对象同步映射至第一虚拟人物后,显示第一虚拟人物。当选择指令为表情选择指令时,响应选择指令,在语音通信界面上调出与第一虚拟人物对应的功能显示区域,显示选中的表情对象。

需要说明的是,在本发明实施例中,当第一用户选择了肢体对象后,第一终端就可以将选择出来的肢体对象同步映射在第一虚拟人物上,即第一虚拟人物就可以实现被选中的肢体对象的动作了;而当第一用户选择了表情对象后,第一终端就可以将选择出来的表情对象显示在第一虚拟人物的相应区域,以变现第一虚拟人物此时表达的心情。这样的通信功能的实现可以更形象的表现出通信对象之间的通信的丰富性和互动的趣味性。

示例性的,当选择指令为表情选择指令时,如图8所示的在语音通信界面上的显示区域1上的功能选择界面,显示了多个表情对象,第一终端根据选择指令选择了多个表情对象中的一个,例如,那么,该第一终端上的第一虚拟人物(陈晓波)对应的功能显示区域显示出了一个

在本发明实施例中的功能显示区域可以是在对应的虚拟人物附近的一个显示区域,本发明实施例不作限制,合理布局即可。

示例性的,当选择指令为肢体选择指令时,如图9所示的在语音通信界面上的显示区域1上的功能选择界面,显示了多个肢体对象,第一终端根据选择指令选择了多个肢体对象中的一个,例如,“鼓掌”,那么,该第一终端上的第一虚拟人物(陈晓波)就可以同步映射出鼓掌的动作了。

进一步地,在本发明实施例中,也可以将预设的表情图标设置成表情功能按键的表现形式,而将预设肢体人物图标设置成肢体功能按键的表现形式,而表情功能按键和肢体功能按键是两个通信功能触控按键,就是采用两个通信功能触控按键实现。

s108、发送功能对象至服务器。

第一终端在功能选择界面上接收选择指令,并响应选择指令,将选择指令选择出的功能对象与第一虚拟人物对应显示在语音通信界面上之后,由于本发明实施例提供的一种同步通信方法中,在第一终端上登录的第一通信对象是需要和第二通信对象进行实时通信的,因此,在第一用户对第一通信对象发出了表情或肢体等通信方式时,第一终端需要将这些功能对象发送给服务器,使得该服务器可以转发功能对象给与第一通信对象通信的第二通信对象对应的第二终端上,以实现二者之间的实时通信。具体的实现方式将在后面的实施例和后续实施例中进行详细地说明。

在本发明实施例中,预设的表情图标主要包括微笑、愤怒等;或者预设肢体人物图标,主要包括拥抱、跳舞等。当某个通信对象发送表情图标或肢体人物图标时,是将图标转化成表情数据或肢体数据发送给服务器的,在服务器转发给其他通信对象的终端时,会将表情数据或肢体数据再还原出相应表情或肢体动画作用于对应的虚拟人物身上。

进一步地,如图10所示,在s103之后,s105之前,本发明实施例提供的一种同步通信方法还可以包括:s109-s112。如下:

s109、实时采集第一通信对象的人脸图像,在应用界面的第一显示区域显示人脸图像。

本发明实施例中的第一终端在使用通信应用的时候,具有实时人脸表情同步的功能,这样,第一终端在根据所述通信指令触发语音通信请求,响应允许通信消息,加载语音通信界面(应用界面),即在应用界面完成第一通信对象和第二通信对象的第一通信会话的建立之后,就开启了第一终端的前置摄像头或者前置影像采集装置,开始实时采集第一通信对象表征的第一用户的人脸图像,并在该语音通信界面(应用界面)的第一显示区域显示该人脸图像。

需要说明的是,在本发明实施例中,实时人脸表情同步的功能是将实际的人的表情或五官特征等的变化同步映射在其对应的虚拟人物的人脸上的功能。

在本发明实施例中,第一显示区域可以为语音通信界面的右上方的区域,在第一通信对象在与第二通信对象进行实时通信的时候,在第一显示区域就实时显示与第一通信对象对应的第一用户的人脸图像。

s110、识别人脸图像的人脸特征信息。

s111、将人脸特征信息映射至第一虚拟人物的面部特征上。

第一终端在采集第一通信对象的人脸图像之后,该第一终端可以对人脸图像进行人脸识别,得到人脸特征信息,由于第一终端是可以实时采集第一通信对象对应的人脸图像的,这样,第一终端将识别出的人脸特征信息映射至第一虚拟人物的面部特征上,也就是说,第一用户在实际中的面部或人脸表情或特征是可以实时的在其对应的第一通信对象的第一虚拟人物的面部特征上。

本发明实施例中采用的人脸特征信息是用于描述人脸特征的参数,也称为特征描述子;本发明实施例可以通过提取人脸关键点的定位方式进行人脸特征信息的提取。基于不同的需求和侧重,本发明实施例可以相应选取,为了提稳定性可以组合使用,具体如下:第一终端对人脸图像的人脸特征信息可以采用初始关键点位置提取尺度不变特征变换(sift,scale-invariantfeaturetransform)特征、方向梯度直方图(hog,histogramoforientedgradient)特征或者加速稳健特征(surf,speededuprobustfeatures)中的至少一项。

其中,本发明实施例中,人脸关键点的定位是指通过算法精确找出人脸关键点的位置。其中,人脸关键点是脸部一些表征能力强的关键点,比如眼睛、鼻子、嘴巴和脸部轮廓等。

需要说明的是,本发明实施例中的第一终端支持人脸识别定位技术,在进行人脸关键点的定位时,首先要采集到待识别的目标对象(即第一通信对象对应的人脸图像),当终端检测检测出该目标对象为人脸图像后,该终端可以按照预设配置在人脸图像上生成用于人脸识别定位的目标检测区域并进行标注,使得标注过后的目标检测区域显示在人脸图像上,实现进行人脸关键点的定位。

可选的,目标检测区域为进行目标对象检测而设定的监测区域,例如,人脸检测框等,该人脸检测框可以为矩形、圆形或椭圆等形状,本发明实施例可以根据实际应用设计目标检测区域,并不限制该目标检测区域的形式或形状。

下面将以人脸特征信息为hog特征值(也称为hog数据特征)进行举例,在本发明实施例中,使用到的hog特征原理:hog的核心思想是所检测的局部物体外形能够被光强梯度或边缘方向的分布所描述。通过将整幅图像分割成小的连接区域(称为cells),每个cell生成一个方向梯度直方图或者cell中pixel的边缘方向,这些直方图的组合可表示出(所检测目标对象)描述子。为改善准确率,局部直方图可以通过计算图像中一个较大区域(称为block)的光强作为measure被对比标准化,然后用这个值(measure)归一化这个block中的所有cells。这个归一化过程完成了更好的照射/阴影不变性。

与其他描述子相比,hog得到的描述子保持了几何和光学转化不变性(除非物体方向改变)。因此,hog描述子尤其适合人脸的检测。

具体的,hog特征提取方法就是将一个image进行了下面的过程:

1、灰度化(将图像看做一个x,y,z(灰度)的三维图像);

2、划分成小cells(2*2);

3、计算每个cell中每个pixel的gradient(即orientation);

4、统计每个cell的梯度直方图(不同梯度的个数),即可形成每个cell的descriptor。

需要说明的是,在本发明实施例中,可以通过梯度下降法计算权重偏差量。总之,对给定的人脸关键点位置,在这些人脸关键点位置上计算一些信息罗列成为一个向量,即为提取人脸特征信息,然后将人脸特征信息进行回归,即对向量的每一个数值进行组合,最后得到人脸关键点距离真解的第一偏移量。其中,提取人脸特征信息的方法有很多,包括:随机森林,sift等,用这些提取出的人脸特征信息可以表达出人脸在当前关键点位置的特点。

示例性的,如图11b所示,第一终端采集到第一通信对象对应的人脸图像,并在显示区域2(第一显示区域)上显示出来,并且第一终端通过人脸识别技术将人脸图像上的人脸特征信息提取出来了,即如图11b中的虚线框(即目标检测区域)所示的人脸特征点。这样,第一终端在语音通信界面上的陈晓波(第一虚拟人物)的面部特征上进行了同步映射。这样,陈晓波的虚拟人物的变化为从图11a变成了图11b。

可以理解的是,由于第一终端可以将实际人物的人脸特征映射在其对应的虚拟人物的面部特征上,这样可以实时的表现出实际通信用户即第一用户的实际变现,体现了实时通信的趣味性、个性化和通信效果。

s112、发送人脸特征信息至服务器。

在第一终端识别出人脸图像的人脸特征信息之后,该第一终端可以将该人脸特征信息发送给服务器,以便服务器可以将人脸特征信息转发给第二通信对象对应的第二终端上,以使得在该第二终端上可以同步显示出来第一虚拟人物对应的面部特征,实现了实时通信的效果。

需要说明的是,人脸特征信息可以理解为人脸表情数据,它是通过开启终端上的前置摄像头,采集人脸的面部图像,识别人脸的当前表情,比如闭眼、张嘴等,并用一串特征数据来表示当前表情的。在本发明实施例中,当第一通信对象加入语音通信界面成功后,如果语音通信界面中的通信对象数目大于2人,则自动开启人脸表情的识别(即实时人脸表情同步的功能),同时还实时传输人脸表情数据给其他通信对象,其他通信对象再根据这个人脸表情数据还原第一通信对象的第一虚拟人物的表情。

实施例二

基于实施例一实现的基础上,本发明实施例提供了一种同步通信方法,应用于服务器侧,如图12所示,该同步通信方法中服务器与第一终端进行通信连接的建立过程可以包括:

s201、接收第一终端发送的对第一通信会话的语音通信请求消息,语音通信请求消息中携带有第一通信会话的标识,第一通信会话为第一通信对象加入的历史记录中的任意一个通信会话。

s202、当未查找到第一通信会话的标识对应的应用界面时,根据语音通信请求消息,建立与第一通信会话的标识对应的应用界面,并生成语音界面建立完成消息。

s203、将语音界面建立完成消息发送给第一终端。

s204、接收第一终端发送的建立实时数据通道消息,根据建立实时数据通道消息,建立与第一终端的实时数据通道。

s205、当实时数据通道建立完成时,发送允许通信消息至第一终端。

在本发明实施例中,第一终端中登录的第一通信对象想要与第一通信会话中的第二通信对象进行实时通信时,需要已登录第一通信对象的第一终端在接收到了第一用户触控生成了第一通信会话的通信指令之后,响应该通信指令,首先需要与通信应用对应的服务器建立通信连接,于是,第一终端发送语音通信请求消息至服务器(即服务器的实时通信信令模块接收第一终端发送的对第一通信会话的语音通信请求消息),其中,第一通信会话为第一通信对象加入的历史记录中的任意一个通信会话,该语音通信请求消息中携带有第一通信会话的标识,以便服务器去查看是否已经存在了第一通信会话对应的语音通信界面了(即应用界面,也可以认为是语音通信房间),当服务器未查询到有第一通信会话对应的语音通信界面已经存在时,该服务器的实时通信信令模块就使用该第一通信会话的标识建立其对应的语音通信界面,并生成为第一通信会话对应的接入信息(接入ip),去实时通信数据模块申请数据资源,当实时通信数据模块返回分配的实时数据资源给实时通信信令模块后,该实时通信信令模块接收到实时数据资源之后,就生成语音界面建立完成消息,并返回给第一终端语音界面建立完成消息给第一终端,也就是说,服务器将语音界面建立完成消息发送给第一终端,即第一终端接收服务器响应通信指令反馈的语音界面建立完成消息。这时,第一终端在接收到语音界面建立完成消息之后,第一终端就可以根据语音界面建立完成消息开始与服务器建立实时数据通道,即第一终端根据语音界面建立完成消息,发送建立实时数据通道消息至服务器。于是,服务器接收第一终端发送的建立实时数据通道消息,根据建立实时数据通道消息,建立与第一终端的实时数据通道,这样,服务器就与第一终端的第一通信对象建立完成了实时数据通道,当实时数据通道建立完成时,服务器返回允许通信消息给第一终端,即第一终端接收服务器响应实时数据通道消息反馈的允许通信消息,这样,该第一终端就可以在语音通信界面中与第一通信会话中的第二通信对象进行实时通信了。

需要说明的是,在本发明实施例中,已登录第二通信对象的第二终端也可以按照第一终端的方式与服务器建立实时数据通道的连接,这样第一终端和第二终端就处于同一个实时数据的语音通信界面中了,该第一终端和第二终端就可以通过各自的实时数据通道与服务器进行数据交换,再通过服务器转发给对方,从而实现了实时通信。

进一步地,在本发明实施例中,第一终端发送语音通信请求消息至服务器,该语音通信请求消息中携带有第一通信会话的标识,以便服务器去查看是否已经存在了第一通信会话对应的语音通信界面了(即语音通信房间)之后,当服务器已查询到有第一通信会话对应的语音通信界面已经存在时,表征已经有第一通信会话中的成员在通信了,于是,该服务器就是直接返回给第一终端语音界面建立完成消息,即第一终端接收服务器响应通信指令反馈的语音界面建立完成消息。这时,第一终端在接收到语音界面建立完成消息之后,该第一终端需要开始进行实时数据通道的建立就可以了,即发送建立实时数据通道消息至服务器,来进行实时数据通道的建立。

进一步地,本发明实施例提供了一种同步通信方法中,在s205之后,服务器就可以与第一终端,第二终端进行数据交互了。具体的可以包括:s206-s208。如下:

s206、接收第一终端发送的第一语音数据,将第一语音数据转发至第二终端,第二终端为第一通信会话中的在线的第二通信对象对应的终端设备,第二通信对象为历史记录中的通信对象。

s207、接收第一终端发送的人脸特征信息,将人脸特征信息转发至第二终端。

s208、接收第一终端发送的功能对象,将功能对象转发至第二终端。

服务器在与第一终端建立好了实时数据通道之后,该服务器就可以与第一终端进行数据交互了,服务器可以将第一通信对象进行的第一语音数据,或者,第一虚拟人物的人脸特征,或者功能对象等多种实时数据都实时的发送给服务器,该服务器就可以将上述实时数据转发给与第一通信对象在同一个语音通信界面中的其他通信对象对应的第二终端上了,其中,第二通信对象为历史记录中的通信对象,这样,第二终端在接收到了服务器发送的第一语音数据进行实时播放,或者第二终端在接收到了服务器发送的第一虚拟人物的人脸特征同步映射在第一虚拟人物上,或者第二终端在接收到了服务器发送来的第一终端的功能对象时,该功能对象是与第一虚拟人物对应的功能对象,因此,该第二终端可以将功能对象对应显示或响应在第一虚拟人物上,具体的实现过程与第一终端实现功能对象的过程一致。这样,当第一终端上的第一通信对象进行语音,或者进行实时表情同步,或者发表情图标等的时候,通过服务器的转发,该第二终端上的表征第一通信对象的第一虚拟人物也会相应的广播语音,或者进行实时表情同步,或者发表情图标等,这样就实现了第一终端与第二终端上对应的通信对象之间的实时通信了。

需要说明的是,在本发明实施例中,一个第二通信对象对应的第二终端也可以发出第二语音数据等与第一通信对象相同或响应的通信方式或者表情,这时,服务器也会转发这个第二终端产生的实时数据给第一终端以及其他第二通信对象对应的其他第二终端中,以便将上述一个第二通信对象的实时通信方式同步给其他第二通信对象和第一通信对象看到,从而完成第一通信会话中的通信对象之间的实时通信。

进一步地,服务器还需要同步转发第一虚拟人物的语音状态和第一通信会话的语音广播标识等给第二终端,以便在第二终端上进行同步显示。

可以理解的是,在本发明实施例中,由于服务器可以为第一终端和第二终端提供实时通信的建立以及通信数据的转发功能,从而可以让第一终端和第二终端自主的进行通信会话的加入和语音数据等实时数据的收发,能够灵活的进行同步通信的建立和同步通信的实现,提高了人机的交互性能。

实施例三

本发明实施例提供了一种同步通信方法,如图13所示,以属于第一通信会话的通信对象对应的第一终端和第二终端进行语音通信为例进行说明,通信应用假设为第二世界,该方法可以包括:

s301、第一终端上的第二世界被打开(接收对通信应用的启动触控指令)时,该第一终端加载第二世界的当前通信界面,在当前通信界面显示了已登录通信应用的第一通信对象的第一虚拟人物,以及历史记录中的通信对象构成的虚拟人物群组。

s302、第一终端在当前通信界面上接收到了将所述第一通信对象加入第一通信会话的通信指令。

s303、第一终端响应通信指令,发送语音通信请求消息至服务器,语音通信请求消息中携带有第一通信会话的标识。

s304、当服务器未查找到第一通信会话的标识对应的语音通信界面时,服务器根据语音通信请求消息,建立与第一通信会话的标识对应的语音通信界面,并生成语音界面建立完成消息。

s305、服务器将语音界面建立完成消息发送给第一终端。

s306、第一终端根据语音界面建立完成消息,发送建立实时数据通道消息至服务器。

s307、服务器根据建立实时数据通道消息,建立与第一终端的实时数据通道。

s308、当实时数据通道建立完成时,服务器发送允许通信消息至第一终端。

s309、第一终端响应允许通信消息,加载语音通信界面,并在语音通信界面显示第一虚拟人物和虚拟人物群组。

s310、在语音通信界面的第一通信会话中触发开启语音功能,当语音功能开启时,第一终端接收第一通信对象的第一语音数据,以及同步显示第一虚拟人物的语音状态和第一通信会话的语音广播标识。

s311、第一终端发送第一语音数据、语音广播标识和语音状态至服务器。

s312、服务器转发第一语音数据、语音广播标识和语音状态至第二终端。

s313、第二终端同步显示语音广播标识和语音状态。

需要说明的是,第一终端与第二终端之间的通信形式还可以为表情或肢体等实时通信方式,这也与语音数据的实时接收和发送的过程和原理一致,此处不再赘述。

实施例四

基于实施例一至实施例三的实现基础上,如图14所示,本发明实施例提供了一种第一终端1,对应于第一终端侧的同步通信方法,该第一终端1包括:

显示单元10,用于根据启动触控指令开启应用界面,在所述应用界面显示对应第一通信对象,及历史记录中的由对应第二通信对象构成的虚拟人物群组;

第一接收单元11,用于接收通信指令,根据所述通信指令触发语音通信请求,以将所述第一通信对象加入所述历史记录中的任意一个通信会话中;

通信单元12,用于当所述语音通信请求被允许时,在所述应用界面完成所述第一通信对象和所述第二通信对象的第一通信会话的建立;

启动单元13,用于在所述应用界面的所述第一通信会话中触发开启语音功能,

第一发送单元14,用于在所述语音功能开启时,将由所述第一通信对象触发的第一语音数据发送给第二终端,

所述显示单元10,还用于在所述第一通信对象和所述第二通信对象所在的所述应用界面中同步显示所建立的通信会话当前所处的语音状态和语音广播标识。

可选的,所述显示单元10,还用于所述在所述应用界面完成所述第一通信对象和所述第二通信对象的第一通信会话的建立之后,在应用界面显示所述第一通信对象对应的第一虚拟人物和所述虚拟人物群组。

可选的,基于图14,如图15所示,所述第一终端1还包括:采集单元15、识别单元16和映射单元17;

所述采集单元15,用于所述在所述应用界面完成所述第一通信对象和所述第二通信对象的第一通信会话的建立之后,且在所述应用界面显示所述第一通信对象对应的第一虚拟人物和所述虚拟人物群组之前,实时采集所述第一通信对象的人脸图像,

所述显示单元10,还用于在所述应用界面的第一显示区域显示所述人脸图像;

所述识别单元16,用于识别所述人脸图像的人脸特征信息;

所述映射单元17,用于将所述人脸特征信息映射至所述第一虚拟人物的面部特征上;

所述第一发送单元14,还用于发送所述人脸特征信息至所述服务器。

可选的,所述第一接收单元11,用于所述在应用界面显示所述第一通信对象对应的第一虚拟人物和虚拟人物群组之后,接收通信功能触控指令,

所述显示单元10,还用于响应所述通信功能触控指令,在所述语音通信界面的第二显示区域调出功能选择界面;

所述第一接收单元11,还用于在所述功能选择界面上接收选择指令,

所述显示单元10,还用于响应所述选择指令,将所述选择指令选择出的功能对象与所述第一虚拟人物对应显示在所述语音通信界面上;

所述第一发送单元14,还用于发送所述功能对象至所述服务器。

可选的,所述显示单元10,具体用于当所述选择指令为肢体选择指令时,响应所述选择指令,将所述选择指令选择出的肢体对象同步映射至所述第一虚拟人物后,显示所述第一虚拟人物。

可选的,所述显示单元10,具体用于当所述选择指令为表情选择指令时,响应所述选择指令,在所述语音通信界面上调出与所述第一虚拟人物对应的功能显示区域,显示选中的表情对象。

可选的,所述第一发送单元14,具体用于响应所述通信指令,发送所述语音通信请求消息至所述服务器;

所述第一接收单元11,具体用于接收所述服务器响应所述通信指令反馈的语音界面建立完成消息;

所述第一发送单元14,还具体用于根据语音界面建立完成消息,发送建立实时数据通道消息至所述服务器;

所述第一接收单元11,还具体用于接收所述服务器响应所述实时数据通道消息反馈的所述允许通信消息,所述允许通信消息用于表征所述语音通信请求被允许。

可以理解的是,由于在当前通信界面中可以选择对历史记录中的第一通信会话进行通信,并且通过发送语音通信请求消息给服务器,来建立第一终端和服务器之间的通信连接,在通信连接完成即第一终端接收到允许通信消息的时候,该第一终端就可以进入语音通信界面中了,并可以看到哪些通信对象在该语音通信界面中,这样在第一终端或第一通信对象对应的语音功能打开的时候,对其他通信对象进行语音通话,并且第一终端通过服务器同步了第一通信会话的语音广播标识至第二终端,以便第二终端上可以显示出哪个通信会话中有语音通信正在进行,这样,第一终端提供了自主选择与服务器建立通信连接,也提供了自主进行语音通话的机制,能够灵活的进行同步通信的建立和同步通信的实现,并且在语音通信界面中提供了虚拟人物表征通信对象身份的新的实现形式,因此,提高了人机的交互性能。

如图16所示,本发明实施例提供了一种服务器2,该服务器2可以包括:

第二接收单元20,用于接收所述第一终端发送的对第一通信会话的语音通信请求消息,所述语音通信请求消息中携带有所述第一通信会话的标识,所述第一通信会话为所述第一通信对象加入的所述历史记录中的任意一个通信会话;

建立单元21,用于当未查找到所述第一通信会话的标识对应的应用界面时,根据所述语音通信请求消息,建立与所述第一通信会话的标识对应的应用界面,

生成单元22,用于生成语音界面建立完成消息;

第二发送单元23,用于将所述语音界面建立完成消息发送给所述第一终端;

所述第二接收单元20,还用于接收所述第一终端发送的建立实时数据通道消息,根据所述建立实时数据通道消息,建立与所述第一终端的实时数据通道;

所述第二发送单元23,还用于当所述实时数据通道建立完成时,发送允许通信消息至所述第一终端。

可选的,所述第二接收单元20,还用于所述发送允许通信消息至所述第一终端之后,接收所述第一终端发送的第一语音数据,

所述第二发送单元23,还用于将所述第一语音数据转发至第二终端,所述第二终端为所述第一通信会话中的在线的第二通信对象对应的终端设备,所述第二通信对象为历史记录中的通信对象;

所述第二接收单元20,还用于所述发送允许通信消息至所述第一终端之后,接收所述第一终端发送的人脸特征信息,

所述第二发送单元23,还用于将所述人脸特征信息转发至所述第二终端;

所述第二接收单元20,还用于所述发送允许通信消息至所述第一终端之后,接收所述第一终端发送的功能对象,

所述第二发送单元23,还用于将所述功能对象转发至所述第二终端。

可以理解的是,在本发明实施例中,由于服务器可以为第一终端和第二终端提供实时通信的建立以及通信数据的转发功能,从而可以让第一终端和第二终端自主的进行通信会话的加入和语音数据等实时数据的收发,能够灵活的进行同步通信的建立和同步通信的实现,提高了人机的交互性能。

实施例五

基于实施例一至实施例三的同一发明构思下,如图17所示,本发明实施例提供了一种第一终端,对应于第一终端侧的同步通信方法,该第一终端包括:第一接收器17、第一发送器18、第一存储器19、第一处理器110、显示器111、摄像头112、播放器114及第一通信总线113,所述第一接收器17、所述第一发送器18、所述第一存储器19、所述显示器111、所述摄像头112、所述播放器114及所述第一处理器110通过所述第一通信总线113连接;

所述显示器111,用于根据启动触控指令开启应用界面,在所述应用界面显示对应第一通信对象,及历史记录中的由对应第二通信对象构成的虚拟人物群组;

所述第一接收器17,用于接收通信指令,根据所述通信指令触发语音通信请求,以将所述第一通信对象加入所述历史记录中的任意一个通信会话中;

所述第一处理器110,调用所述第一存储器19存储的同步通信相关程序,执行:当所述语音通信请求被允许时,在所述应用界面完成所述第一通信对象和所述第二通信对象的第一通信会话的建立;在所述应用界面的所述第一通信会话中触发开启语音功能,

所述第一发送器18,用于在所述语音功能开启时,将由所述第一通信对象触发的第一语音数据发送给第二终端,

所述显示器111,还用于在所述第一通信对象和所述第二通信对象所在的所述应用界面中同步显示所建立的通信会话当前所处的语音状态和语音广播标识;

所述播放器114,用于同步播放所述第一语音数据。

可选的,所述显示器111,还用于所述在所述应用界面完成所述第一通信对象和所述第二通信对象的第一通信会话的建立之后,在应用界面显示所述第一通信对象对应的第一虚拟人物和所述虚拟人物群组。

可选的,所述摄像头112,用于所述在所述应用界面完成所述第一通信对象和所述第二通信对象的第一通信会话的建立之后,且在所述应用界面显示所述第一通信对象对应的第一虚拟人物和所述虚拟人物群组之前,实时采集所述第一通信对象的人脸图像,

所述显示器111,还用于在所述语音通信界面的第一显示区域显示所述人脸图像;

所述第一处理器110,还用于识别所述人脸图像的人脸特征信息;及将所述人脸特征信息映射至所述第一虚拟人物的面部特征上;

所述第一发送器18,还用于发送所述人脸特征信息至所述服务器。

可选的,所述第一接收器17,用于所述在应用界面显示所述第一通信对象对应的第一虚拟人物和虚拟人物群组之后,接收通信功能触控指令,

所述显示器111,还用于响应所述通信功能触控指令,在所述应用界面的第二显示区域调出功能选择界面;

所述第一接收器17,还用于在所述功能选择界面上接收选择指令,

所述显示器111,还用于响应所述选择指令,将所述选择指令选择出的功能对象与所述第一虚拟人物对应显示在所述语音通信界面上;

所述第一发送器18,还用于发送所述功能对象至所述服务器。

可选的,所述显示器111,具体用于当所述选择指令为肢体选择指令时,响应所述选择指令,将所述选择指令选择出的肢体对象同步映射至所述第一虚拟人物后,显示所述第一虚拟人物。

可选的,所述显示器111,具体用于当所述选择指令为表情选择指令时,响应所述选择指令,在所述语音通信界面上调出与所述第一虚拟人物对应的功能显示区域,显示选中的表情对象。

可选的,所述第一发送器18,具体用于响应所述通信指令,发送所述语音通信请求消息至所述服务器;

所述第一接收器17,具体用于接收所述服务器响应所述通信指令反馈的语音界面建立完成消息;

所述第一发送器18,还具体用于根据语音界面建立完成消息,发送建立实时数据通道消息至所述服务器;

所述第一接收器17,还具体用于接收所述服务器响应所述实时数据通道消息反馈的所述允许通信消息,所述允许通信消息用于表征所述语音通信请求被允许。

可以理解的是,由于在当前通信界面中可以选择对历史记录中的第一通信会话进行通信,并且通过发送语音通信请求消息给服务器,来建立第一终端和服务器之间的通信连接,在通信连接完成即第一终端接收到允许通信消息的时候,该第一终端就可以进入语音通信界面中了,并可以看到哪些通信对象在该语音通信界面中,这样在第一终端或第一通信对象对应的语音功能打开的时候,对其他通信对象进行语音通话,并且第一终端通过服务器同步了第一通信会话的语音广播标识至第二终端,以便第二终端上可以显示出哪个通信会话中有语音通信正在进行,这样,第一终端提供了自主选择与服务器建立通信连接,也提供了自主进行语音通话的机制,能够灵活的进行同步通信的建立和同步通信的实现,并且在语音通信界面中提供了虚拟人物表征通信对象身份的新的实现形式,因此,提高了人机的交互性能。

如图18所示,本发明实施例提供了一种服务器,对应于服务器侧的同步通信方法,该服务器可以包括:第二接收器24、第二发送器25、第二处理器26、第二存储器27及第二通信总线28,所述第二接收器24、所述第二发送器25、所述第二存储器27及所述第二处理器26通过所述第二通信总线28连接;所述第二处理器26,用于调用所述第二存储器27存储的同步通信相关程序。

所述第二接收器24,用于接收所述第一终端发送的对第一通信会话的语音通信请求消息,所述语音通信请求消息中携带有所述第一通信会话的标识,所述第一通信会话为所述第一通信对象加入的所述历史记录中的任意一个通信会话;

所述第二处理器26,用于当未查找到所述第一通信会话的标识对应的应用界面时,根据所述语音通信请求消息,建立与所述第一通信会话的标识对应的应用界面,及生成语音界面建立完成消息;

所述第二发送器25,用于将所述语音界面建立完成消息发送给所述第一终端;

所述第二接收器24,还用于接收所述第一终端发送的建立实时数据通道消息,根据所述建立实时数据通道消息,建立与所述第一终端的实时数据通道;

所述第二发送器25,还用于当所述实时数据通道建立完成时,发送允许通信消息至所述第一终端。

可选的,所述第二接收器24,还用于所述发送允许通信消息至所述第一终端之后,接收所述第一终端发送的第一语音数据,

所述第二发送器25,还用于将所述第一语音数据转发至第二终端,所述第二终端为所述第一通信会话中的在线的第二通信对象对应的终端设备,所述第二通信对象为历史记录中的通信对象;

所述第二接收器24,还用于所述发送允许通信消息至所述第一终端之后,接收所述第一终端发送的人脸特征信息,

所述第二发送器25,还用于将所述人脸特征信息转发至所述第二终端;

所述第二接收器24,还用于所述发送允许通信消息至所述第一终端之后,接收所述第一终端发送的功能对象,

所述第二发送器25,还用于将所述功能对象转发至所述第二终端。

可以理解的是,在本发明实施例中,由于服务器可以为第一终端和第二终端提供实时通信的建立以及通信数据的转发功能,从而可以让第一终端和第二终端自主的进行通信会话的加入和语音数据等实时数据的收发,能够灵活的进行同步通信的建立和同步通信的实现,提高了人机的交互性能。

在实际应用中,上述的存储器可以是易失性存储器(volatilememory),例如随机存取存储器(ram,random-accessmemory);或者非易失性存储器(non-volatilememory),例如只读存储器(rom,read-onlymemory),快闪存储器(flashmemory),硬盘(hdd,harddiskdrive)或固态硬盘(ssd,solid-statedrive);或者上述种类的存储器的组合,并向处理器提供指令和数据。

上述处理器可以为特定用途集成电路(asic,applicationspecificintegratedcircuit)、数字信号处理器(dsp,digitalsignalprocessor)、数字信号处理装置(dspd,digitalsignalprocessingdevice)、可编程逻辑装置(pld,programmablelogicdevice)、现场可编程门阵列(fpga,fieldprogrammablegatearray)、中央处理器(cpu,centralprocessingunit)、控制器、微控制器、微处理器中的至少一种。可以理解地,对于不同的设备,用于实现上述处理器功能的电子器件还可以为其它,本发明实施例不作具体限定。

实施例六

在本实施例中的各功能模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。

所述集成的单元如果以软件功能模块的形式实现并非作为独立的产品进行销售或使用时,可以存储在一个计算机可读取存储介质中,基于这样的理解,本实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个计算机可读存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或processor(处理器)执行本实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,readonlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

本发明实施例中提供了一种第一计算机可读存储介质,应用于第一终端中,所述第一计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个第一处理器执行,以实现实施例一和实施例三的方法。

本发明实施例中提供了一种第二计算机可读存储介质,应用于服务器中,所述第二计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个第二处理器执行,以实现实施例一和实施例三的方法。

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用硬件实施例、软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1