CN105471704B - 一种实现多人通话的方法、装置及*** - Google Patents

一种实现多人通话的方法、装置及*** Download PDF

Info

Publication number
CN105471704B
CN105471704B CN201410431492.XA CN201410431492A CN105471704B CN 105471704 B CN105471704 B CN 105471704B CN 201410431492 A CN201410431492 A CN 201410431492A CN 105471704 B CN105471704 B CN 105471704B
Authority
CN
China
Prior art keywords
room
call
server
session
request
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
Application number
CN201410431492.XA
Other languages
English (en)
Other versions
CN105471704A (zh
Inventor
王金杰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Tencent Cloud Computing Beijing Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201410431492.XA priority Critical patent/CN105471704B/zh
Publication of CN105471704A publication Critical patent/CN105471704A/zh
Application granted granted Critical
Publication of CN105471704B publication Critical patent/CN105471704B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Telephonic Communication Services (AREA)

Abstract

本发明公开了一种实现多人通话的方法、装置及***,用于对多人通话中的会话进行调度与处理,该方法包括:接收到用户触发的多人通话请求后创建会话,向服务器发送创建通话房间请求,使会话状态处于通话请求中;在接收到服务器发送的创建通话房间确认信息,且当前会话状态为通话请求中时,根据创建房间确认信息触发服务器创建通话房间,将会话状态变更为通话已请求,创建房间确认信息包括服务器的接口地址;在接收到服务器发送的创建通话房间成功信息,且当前会话状态为通话已请求时,进入通话房间并开启音频引擎,向其他用户发送多人通话邀请信息,将会话状态变更为进入通话房间。

Description

一种实现多人通话的方法、装置及***
技术领域
本发明涉及互联网技术领域,具体涉及一种实现多人通话的方法、装置及***。
背景技术
随着互联网技术的发展,互联网中的各类应用已经广泛深入人们的日常生活以及工作当中。目前,为了更方便快捷地进行沟通交流,用户在使用一些网络应用的过程中存在进行多人语音通话的需求。例如,用户使用即时通话应用中的讨论组功能时,希望不仅局限于通过文字的方式进行交流,还有使用语音进行多人通话的需求。
但是,在应用中进行多人通话过程涉及与服务器之间的多次交互,容易发生例如乱序、重发等会话逻辑异常情况,在现有技术中尚不存在一种成熟技术实现对多人通话的会话逻辑进行调度与处理。
发明内容
有鉴于此,本发明提供一种实现多人通话的方法、装置及***,以解决现有技术中多人会话过程中易发生会话逻辑异常情况的技术问题。
为解决上述问题,本发明提供的技术方案如下:
一种实现多人通话的方法,所述方法包括:
接收到用户触发的多人通话请求后创建会话,向服务器发送创建通话房间请求,使会话状态处于通话请求中;
在接收到所述服务器发送的创建通话房间确认信息,且当前所述会话状态为通话请求中时,根据所述创建房间确认信息触发所述服务器创建通话房间,将所述会话状态变更为通话已请求,所述创建房间确认信息包括所述服务器的接口地址;
在接收到所述服务器发送的创建通话房间成功信息,且当前所述会话状态为通话已请求时,进入所述通话房间并开启音频引擎,向其他用户发送多人通话邀请信息,将所述会话状态变更为进入通话房间。
一种实现多人通话的方法,所述方法包括:
接收到多人通话邀请信息后创建会话,使会话状态处于接收邀请;
在接收到用户触发的接受邀请信息,且当前所述会话状态为接收邀请时,向服务器发送进入通话房间请求,将所述会话状态变更为进入房间请求中;
在接收到所述服务器发送的进入通话房间确认信息,且当前所述会话状态为进入房间请求中时,根据所述进入通话房间确认信息进入服务器中的通话房间,将所述会话状态变更为进入房间已请求,所述进入通话房间确认信息包括服务器的接口地址以及通话房间号;
在接收到所述服务器发送的进入通话房间成功信息,且当前所述会话状态为进入房间已请求,开启音频引擎,将所述会话状态变更为进入通话房间。
一种实现多人通话的方法,所述方法包括:
接收客户端发送的创建通话房间请求,所述客户端的会话状态处于通话请求中;
向所述客户端发送创建通话房间确认信息,所述创建房间确认信息包括所述服务器的接口地址,并根据所述客户端的触发创建通话房间,使所述客户端的会话状态由通话请求中变更为通话已请求;
向所述客户端发送创建通话房间成功信息,使所述客户端进入所述通话房间,所述客户端的会话状态由通话已请求变更为进入通话房间;
在所述客户端的会话状态处于接收邀请时,接收所述客户端发送的进入通话房间请求,使所述客户端的会话状态由接收邀请变更为进入房间请求中;
向所述客户端发送进入通话房间确认信息,所述进入通话房间确认信息包括服务器的接口地址以及通话房间号,使所述客户端进入所述通话房间,所述客户端的会话状态由进入房间请求中变更为进入房间已请求;
向所述客户端发送进入通话房间成功信息,使所述客户端的会话状态由进入房间已请求变更为进入通话房间。
一种实现多人通话的装置,所述装置包括:
第一状态单元,用于接收到用户触发的多人通话请求后创建会话,向服务器发送创建通话房间请求,使会话状态处于通话请求中;
第二状态单元,用于在接收到所述服务器发送的创建通话房间确认信息,且当前所述会话状态为通话请求中时,根据所述创建房间确认信息触发服务器创建通话房间,将所述会话状态变更为通话已请求,所述创建房间确认信息包括服务器的接口地址;
第三状态单元,用于在接收到所述服务器发送的创建通话房间成功信息,且当前所述会话状态为通话已请求时,进入所述通话房间并开启音频引擎,向其他用户发送多人通话邀请信息,将所述会话状态变更为进入通话房间。
一种实现多人通话的装置,所述装置包括:
第一状态单元,用于接收到多人通话邀请信息后创建会话,使会话状态处于接收邀请;
第二状态单元,用于在接收到用户触发的接受邀请信息,且当前所述会话状态为接收邀请时,向服务器发送进入通话房间请求,将所述会话状态变更为进入房间请求中;
第三状态单元,用于在接收到所述服务器发送的进入通话房间确认信息,且当前所述会话状态为进入房间请求中时,根据所述进入通话房间确认信息进入服务器中的通话房间,将所述会话状态变更为进入房间已请求,所述进入通话房间确认信息包括服务器的接口地址以及通话房间号;
第四状态单元,用于在接收到所述服务器发送的进入通话房间成功信息,且当前所述会话状态为进入房间已请求,开启音频引擎,将所述会话状态变更为进入通话房间。
一种实现多人通话的装置,所述装置包括:
第一接收单元,用于接收客户端发送的创建通话房间请求,所述客户端的会话状态处于通话请求中;
第一发送单元,用于向所述客户端发送创建通话房间确认信息,所述创建房间确认信息包括所述服务器的接口地址,并根据所述客户端的触发创建通话房间,使所述客户端的会话状态由通话请求中变更为通话已请求;
第二发送单元,用于向所述客户端发送创建通话房间成功信息,使所述客户端进入所述通话房间,所述客户端的会话状态由通话已请求变更为进入通话房间;
第二接收单元,用于在所述客户端的会话状态处于接收邀请时,接收所述客户端发送的进入通话房间请求,使所述客户端的会话状态由接收邀请变更为进入房间请求中;
第三发送单元,用于向所述客户端发送进入通话房间确认信息,所述进入通话房间确认信息包括服务器的接口地址以及通话房间号,使所述客户端进入所述通话房间,所述客户端的会话状态由进入房间请求中变更为进入房间已请求;
第四发送单元,用于向所述客户端发送进入通话房间成功信息,使所述客户端的会话状态由进入房间已请求变更为进入通话房间。
一种实现多人通话的***,所述***包括:
第一终端、第二终端以及服务器;
所述第一终端,是上述第一种所述的实现多人通话的装置;
所述第二终端,是上述第二种所述的实现多人通话的装置;
所述服务器,是上述第三种所述的实现多人通话的装置。
由此可见,本发明实施例具有如下有益效果:
本发明实施例在接收到用户使用应用触发的多人通话请求后或者接收到多人通话邀请信息后创建会话,并记录会话状态,根据与服务器之间的交互结果以及状态机记录的会话状态,确定当前所应该执行的操作,从而实现利用状态机对多人通话中涉及的创建会话、进入会话、退出会话等各类会话逻辑进行调度与处理,可以保证多人通话会话逻辑的正常进行。
附图说明
图1为本发明实施例的硬件环境示意图;
图2为本发明实施例中提供的终端实施例的示意图;
图3为本发明实施例中提供的服务器实施例的示意图;
图4为本发明实施例中提供的实现多人通话的方法实施例一的流程图;
图5为本发明实施例中提供的实现多人通话的方法实施例二的状态示意图;
图6为本发明实施例中提供的实现多人通话的方法实施例三的流程图;
图7为本发明实施例中提供的实现多人通话的方法实施例四的状态示意图;
图8为本发明实施例中提供的实现多人通话的方法实施例五的状态示意图;
图9为本发明实施例中提供的实现多人通话的装置实施例一的示意图;
图10为本发明实施例中提供的实现多人通话的装置实施例二的示意图;
图11为本发明实施例中提供的实现多人通话的装置实施例三的示意图;
图12为本发明实施例中提供的实现多人通话的装置实施例四的示意图;
图13为本发明实施例中提供的实现多人通话的装置实施例五的示意图;
图14为本发明实施例中提供的实现多人通话的***实施例的示意图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明实施例作进一步详细的说明。
本发明实施例中提供的实现多人通话的方法、装置及***,是针对现有技术中无法实现在应用中进行多人语音通话的技术问题,提出基于会话中的状态机实现对创建多人通话、邀请其他用户加入通话、收到多人通话邀请、加入多人通话、退出多人通话等各类多人通话中涉及的会话逻辑进行调度与处理,从而实现在应用中进行多人语音通话。
参见图1所示,是本发明实施例中提供的硬件应用环境,其中,第一终端、第二终端分别与服务器通过网络建立数据连接,第一终端与第二终端通过该服务器建立多人通话。第一终端可以理解为发起多人通话的终端,第二终端可以理解为接受多人通话的终端,服务器可以用于响应第一终端或第二终端的多人通话请求。本发明后续实施例中提供的实现多人通话的方法实施例将从第一终端以及第二终端以及服务器的角度分别进行说明。
参见图2所示,是本发明实施例中提供的第一终端或第二终端实施例的示意图,该终端可以包括射频(RF,Radio Frequency)电路201、包括有一个或一个以上计算机可读存储介质的存储器202、输入单元203、显示单元204、传感器205、音频电路206、无线保真(WiFi,Wireless Fidelity)模块207、包括有一个或者一个以上处理核心的处理器208、以及电源209等部件。本领域技术人员可以理解,图2中示出的终端结构并不构成对终端的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
RF电路201可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,交由一个或者一个以上处理器208处理;另外,将涉及上行的数据发送给基站。通常,RF电路201包括但不限于天线、至少一个放大器、调谐器、一个或多个振荡器、用户身份模块(SIM,Subscriber Identity Module)卡、收发信机、耦合器、低噪声放大器(LNA,Low Noise Amplifier)、双工器等。此外,RF电路201还可以通过无线通信与网络和其他设备通信。所述无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯***(GSM,Global System of Mobile communication)、通用分组无线服务(GPRS,GeneralPacket Radio Service)、码分多址(CDMA,Code Division Multiple Access)、宽带码分多址(WCDMA,Wideband Code Division Multiple Access)、长期演进(LTE,Long TermEvolution)、电子邮件、短消息服务(SMS,Short Messaging Service)等。
存储器202可用于存储软件程序以及模块,处理器208通过运行存储在存储器202的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器202可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作***、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据终端的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器202可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器202还可以包括存储器控制器,以提供处理器208和输入单元203对存储器202的访问。
输入单元203可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。具体地,在一个具体的实施例中,输入单元203可包括触敏表面以及其他输入设备。触敏表面,也称为触摸显示屏或者触控板,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触敏表面上或在触敏表面附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触敏表面可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器208,并能接收处理器208发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触敏表面。除了触敏表面,输入单元203还可以包括其他输入设备。具体地,其他输入设备可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
显示单元204可用于显示由用户输入的信息或提供给用户的信息以及终端的各种图形用户接口,这些图形用户接口可以由图形、文本、图标、视频和其任意组合来构成。显示单元204可包括显示面板,可选的,可以采用液晶显示器(LCD,Liquid Crystal Display)、有机发光二极管(OLED,Organic Light-Emitting Diode)等形式来配置显示面板。进一步的,触敏表面可覆盖显示面板,当触敏表面检测到在其上或附近的触摸操作后,传送给处理器208以确定触摸事件的类型,随后处理器208根据触摸事件的类型在显示面板上提供相应的视觉输出。虽然在图2中,触敏表面与显示面板是作为两个独立的部件来实现输入和输入功能,但是在某些实施例中,可以将触敏表面与显示面板集成而实现输入和输出功能。
终端还可包括至少一种传感器205,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板的亮度,接近传感器可在终端移动到耳边时,关闭显示面板和/或背光。作为运动传感器的一种,重力加速度传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于终端还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
音频电路206、扬声器,传声器可提供用户与终端之间的音频接口。音频电路206可将接收到的音频数据转换后的电信号,传输到扬声器,由扬声器转换为声音信号输出;另一方面,传声器将收集的声音信号转换为电信号,由音频电路206接收后转换为音频数据,再将音频数据输出处理器208处理后,经RF电路201以发送给比如另一终端,或者将音频数据输出至存储器202以便进一步处理。音频电路206还可能包括耳塞插孔,以提供外设耳机与终端的通信。
WiFi属于短距离无线传输技术,终端通过WiFi模块207可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图2示出了WiFi模块207,但是可以理解的是,其并不属于终端的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。
处理器208是终端的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器202内的软件程序和/或模块,以及调用存储在存储器202内的数据,执行终端的各种功能和处理数据,从而对手机进行整体监控。可选的,处理器208可包括一个或多个处理核心;优选的,处理器208可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作***、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器208中。
终端还包括给各个部件供电的电源209(比如电池),优选的,电源可以通过电源管理***与处理器208逻辑相连,从而通过电源管理***实现管理充电、放电、以及功耗管理等功能。电源209还可以包括一个或一个以上的直流或交流电源、再充电***、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
尽管未示出,终端还可以包括摄像头、蓝牙模块等,在此不再赘述。具体在本实施例中,终端中的处理器208会按照如下的指令,将一个或一个以上的应用程序的进程对应的可执行文件加载到存储器202中,并由处理器208来运行存储在存储器202中的应用程序,从而实现各种功能。
参见图3所示,本发明实施例还提供一种服务器实施例,可以包括:
处理器301、存储器302、输入装置303和输出装置304。服务器中的处理器301的数量可以一个或多个,图3中以一个处理器为例。在本发明的一些实施例中,处理器301、存储器302、输入装置303和输出装置304可通过总线或其它方式连接,其中,图3中以通过总线连接为例。
存储器302可用于存储软件程序以及模块,处理器301通过运行存储在存储器302的软件程序以及模块,从而执行服务器的各种功能应用以及数据处理。存储器302可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作***、至少一个功能所需的应用程序等。此外,存储器302可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。输入装置303可用于接收输入的数字或字符信息,以及产生与服务器的用户设置以及功能控制有关的键信号输入。
具体在本实施例中,处理器301会按照如下的指令,将一个或一个以上的应用程序的进程对应的可执行文件加载到存储器302中,并由处理器301来运行存储在存储器302中的应用程序,从而实现各种功能。
以下本发明实施例将从实现多人通话的装置角度进行描述,该实现多人通话的装置具体可以集成在客户端中,该客户端可以装载在终端中,该终端具体可以为智能手机、平板电脑、电子书阅读器、MP3(Moving Picture Experts Group Audio Layer III,动态影像专家压缩标准音频层面3)播放器、MP4(Moving Picture Experts Group Audio Layer IV,动态影像专家压缩标准音频层面3)播放器、膝上型便携计算机和台式计算机等等。
参见图4所示,是本发明实施例中提供的实现多人通话的方法实施例一,可以包括以下步骤:
步骤401:接收到用户触发的多人通话请求后创建会话,向服务器发送创建通话房间请求,使会话状态变更处于通话请求中。
本发明实施例可以由发起多人通话的用户客户端执行,用户在需要发起多人通话时可以在应用客户端中点击多人通话按钮,客户端在接收到用户触发的多人通话请求后首先创建一个用于多人通话的会话,每一会话中可以有一状态机,由状态机保存该会话的会话状态,新建会话的会话状态为空。
服务器在实际应用中可以包括策略服务器以及接口机服务器,策略服务器可以理解为管理接口机服务器的服务器,可以为终端中的客户端分配多人通话所需使用的接口机服务器,在接口机服务器中建立多人通话房间。
则在客户端创建会话后可以向策略服务器发送创建通话房间请求,在向策略服务器发送创建通话房间请求后,将当前会话状态由空变更为通话请求中,代表此时多人通话正在请求,需要等待策略服务器的响应。
在本发明的一些实施例中,在接收用户触发的多人通话请求后,创建会话之前,还可以判断当前是否已经存在会话,如果是,删除已经存在会话,再执行创建会话步骤,如果否,直接执行创建会话步骤。
在退出一次多人通话后,可以再次发起或加入多人通话,但是由于网络错误等原因,之前的多人通话所使用的会话请求可能未被正常删除,因此在发起多人通话请求后,需要先判断是否有异常存在的会话,在删除了异常会话后,重新建立新的会话,相当于对会话进行初始化的过程,可以保证后续会话状态的正确性。
步骤402:在接收到服务器发送的创建通话房间确认信息,且当前会话状态为通话请求中时,根据创建房间确认信息触发服务器创建通话房间,将会话状态变更为通话已请求,创建房间确认信息包括服务器的接口地址。
具体的,服务器的接口地址包括接口机服务器地址,客户端在接收到策略服务器根据创建通话房间请求返回的创建通话房间确认信息,且会话状态为通话请求中,说明可以根据创建房间确认信息中的接口机服务器地址在对应的接口机服务器中创建通话房间,此时需要将会话状态由通话请求中变更为通话已请求。
在本发明的一些实施例中,创建房间确认信息可以包括接口机服务器地址以及房间密码;则可以根据接口机服务器地址连接到对应的接口机服务器,触发接口机服务器利用房间密码创建加密的通话房间,以保证多人通话的安全性。
步骤403:在接收到服务器发送的创建通话房间成功信息,且当前会话状态为通话已请求时,进入通话房间并开启音频引擎,向其他用户发送多人通话邀请信息,将会话状态变更为进入通话房间。
在实际应用中,客户端在接收到接口机服务器返回的创建通话房间成功信息,且会话状态为通话已请求,则说明接口机服务器创建通话房间成功,可以通知用户已经进入该通话房间并邀请其他用户加入本次多人通话,进入通话房间后可以开启音频引擎,进行音频的采集和播放,此时需要将会话状态由通话已请求变更为进入通话房间,完成发起多人通话的用户客户端在服务器中创建通话房间并连接进入该通话房间的过程。
在本发明的一些实施例中,本发明实施例中提供的实现多人通话的方法还可以包括:
在接收到用户触发的退出信号,且当前会话状态为进入通话房间时,向服务器发送退出通话房间请求,将会话状态变更为退出房间请求中;
在接收到服务器发送的退出通话房间成功信息,且当前会话状态为退出房间请求中时,关闭音频引擎,删除会话。
也即用户可以在应用中点击退出按钮,客户端在接收到用户触发的退出信号,且会话状态为进入通话房间时,则需要向接口机服务器请求从通话房间中退出,并将会话状态从进入通话房间变更为退出房间请求中。当客户端接收到接口机服务器返回的退出通话房间成功信息,且会话状态为退出房间请求中,则代表退出通话房间成功,则需要关闭音频引擎,同时删除会话,以便于下次可以再发起或加入多人通话。
在本发明的一些实施例中,本发明实施例中提供的实现多人通话的方法还可以包括:
在接收到用户触发的退出信号,且当前会话状态为通话请求中或者通话已请求时,删除会话。
而当会话状态为通话请求中或者通话已请求时,客户端在接收到用户触发的退出信号,由于还未进入通话房间,则可以直接删除对话进行退出,以便于下次可以再发起或加入多人通话。
参见图5所示,是本发明实施例中提供的实现多人通话的方法实施例二,对状态机的会话状态转移进行说明,在发起多人通话请求客户端,所包含的状态机中的会话状态包括以下几种:通话请求中、通话已请求、进入通话房间、退出房间请求中以及退出。
具体的,通话请求中:在客户端接收到用户触发的多人通话请求后创建会话,向策略服务器发送创建通话房间请求,则会话状态处于通话请求中。
通话已请求:前一个会话状态为通话请求中,在客户端接收到策略服务器发送的创建通话房间确认信息,且会话状态为通话请求中时,可以根据创建房间确认信息触发接口机服务器创建通话房间,则会话状态被变更为通话已请求。
进入通话房间:前一个会话状态为通话已请求,在客户端接收到接口机服务器发送的创建通话房间成功信息,且会话状态为通话已请求时,可以进入通话房间、同时可以保存通话房间号,并通知用户可以向其他用户发送多人通话邀请信息,开启音频引擎,进行音频的采集和播放,则会话状态被变更为进入通话房间。
退出房间请求中:前一个会话状态为进入通话房间,在客户端接收到用户触发的退出信号,且会话状态为进入通话房间时,可以向接口机服务器发送退出通话房间请求,则会话状态被变更为退出房间请求中。
退出:前一个会话状态为退出房间请求中或者通话请求中或者通话已请求,在客户端接收到接口机服务器发送的退出通话房间成功信息,且会话状态为退出房间请求中时,可以关闭音频引擎,删除会话进行退出;在客户端接收到用户触发的退出信号,且会话状态为通话请求中或者通话已请求时,可以删除会话进行退出。
这样,本发明实施例在接收到用户使用应用触发的多人通话请求后创建会话,并利用会话中的状态机记录会话状态,根据与服务器之间的交互结果以及状态机记录的会话状态,确定当前所应该执行的操作,从而实现利用状态机对多人通话中涉及的创建会话、进入会话、退出会话等各类会话逻辑进行调度与处理,保证了多人通话会话逻辑的正常进行。
参见图6所示,是本发明实施例中提供的实现多人通话的方法实施例三,可以包括以下步骤:
步骤601:接收到多人通话邀请信息后创建会话,使会话状态处于接收邀请。
本发明实施例可以由接收多人通话邀请的用户客户端执行,用户接收到多人通话邀请信息后创建一个用于多人通话的会话,每一会话中可以有一状态机,由状态机保存该会话的会话状态,新建会话的会话状态为空。在本实施例中在创建会话后可以使会话状态处于接收邀请,并通知用户存在一个多人通话邀请。
多人通话邀请信息可以由策略服务器发送,即发起多人通话的用户客户端向其他用户发送多人通话邀请信息可以通过策略服务器进行转发,多人通话邀请信息中可以包括已经创建的通话房间号。
在本发明的一些实施例中,接收到多人通话邀请信息后,创建会话之前,还可以判断当前是否已经存在会话,如果是,删除已经存在会话,再执行创建会话步骤,如果否,直接执行创建会话步骤。
在退出一次多人通话后,可以再次发起或加入多人通话,但是由于网络错误等原因,之前的多人通话所使用的会话请求可能未被正常删除,因此在接收到多人通话邀请信息后,需要先判断是否有异常存在的会话,在删除了异常会话后,重新建立新的会话,相当于对会话进行初始化的过程,可以保证后续会话状态的正确性。
步骤602:在接收到用户触发的接受邀请信息,且当前会话状态为接收邀请时,向服务器发送进入通话房间请求,将会话状态变更为进入房间请求中。
用户在接受多人通话邀请时可以在应用中点击接受邀请按钮,客户端在接收到用户触发的接受邀请信息,且前会话状态为接收邀请时,说明可以进一步向策略服务器发送进入通话房间请求,此时将会话状态由接收邀请变更为进入房间请求中。
步骤603:在接收到服务器发送的进入通话房间确认信息,且当前会话状态为进入房间请求中时,根据进入通话房间确认信息进入服务器中的通话房间,将会话状态变更为进入房间已请求,进入通话房间确认信息包括服务器的接口地址以及通话房间号。
服务器的接口地址包括接口机服务器地址,客户端在接收到策略服务器根据进入通话房间请求返回的进入通话房间确认信息,且会话状态为进入房间请求中,说明可以进入接口机服务器中创建的通话房间,此时将会话状态由进入房间请求中变更为进入房间已请求。
在本发明的一些实施例中,创建房间确认信息可以包括接口机服务器地址、通话房间号以及房间密码;则可以根据接口机服务器地址以及通话房间号连接到接口机服务器中的通话房间,利用房间密码进入加密的通话房间,以保证多人通话的安全性。
步骤604:在接收到服务器发送的进入通话房间成功信息,且当前会话状态为进入房间已请求,开启音频引擎,将会话状态变更为进入通话房间。
具体的,客户端在接收到接口机服务器返回的进入通话房间成功信息,且会话状态为进入房间已请求,则说明已经确认进入通话房间,开启音频引擎进行音频的采集和播放,此时需要将会话状态由进入房间已请求变更为进入通话房间,完成接受多人通话邀请的用户客户端进入通话房间的过程,实现多人通话。
在本发明的一些实施例中,本发明实施例中提供的实现多人通话的方法还可以包括:
在接收到用户触发的退出信号,且当前会话状态为进入通话房间时,向服务器发送退出通话房间请求,将会话状态变更为退出房间请求中;
在接收到服务器发送的退出通话房间成功信息,且当前会话状态为退出房间请求中时,关闭音频引擎,删除会话。
也即用户可以在应用中点击退出按钮,客户端在接收到用户触发的退出信号,且会话状态为进入通话房间时,则需要向接口机服务器请求从通话房间中退出,并将会话状态从进入通话房间变更为退出房间请求中。当客户端接收到接口机服务器返回的退出通话房间成功信息,且会话状态为退出房间请求中,则代表退出通话房间成功,则需要关闭音频引擎,同时删除会话,以便于下次可以再发起或加入多人通话。
参见图7所示,是本发明实施例中提供的实现多人通话的方法实施例四,对状态机的会话状态转移进行说明,在接收多人通话邀请客户端,所包含的状态机中的会话状态包括以下几种:接收邀请、进入房间请求中、进入房间已请求、进入通话房间、退出房间请求中以及退出。
具体的,接收邀请:客户端在接收到多人通话邀请信息后创建会话,则会话状态处于接收邀请。
进入房间请求中:前一个会话状态为接收邀请,在客户端接收到用户触发的接受邀请信息,且会话状态为接收邀请时,可以向策略服务器发送进入通话房间请求,则会话状态被变更为进入房间请求中。
进入房间已请求:前一个会话状态为进入房间请求中,在客户端接收到策略服务器发送的进入通话房间确认信息,且会话状态为进入房间请求中时,可以根据进入通话房间确认信息进入接口机服务器中的通话房间,则会话状态被变更为进入房间已请求。
进入通话房间:前一个会话状态为进入房间已请求,在客户端接收到接口机服务器发送的进入通话房间成功信息,且会话状态为进入房间已请求,可以开启音频引擎,则会话状态被变更为进入通话房间。
退出房间请求中:前一个会话状态为进入通话房间,在客户端接收到用户触发的退出信号,且会话状态为进入通话房间时,可以向接口机服务器发送退出通话房间请求,则会话状态被变更为退出房间请求中。
退出:前一个会话状态为退出房间请求中,在客户端接收到接口机服务器发送的退出通话房间成功信息,且会话状态为退出房间请求中时,可以关闭音频引擎,删除会话进行退出。
这样,本发明实施例在接收到多人通话邀请信息后创建会话,并利用会话中的状态机记录会话状态,根据与服务器之间的交互结果以及状态机记录的会话状态,确定当前所应该执行的操作,从而实现利用状态机对多人通话中涉及的进入会话、退出会话等各类会话逻辑进行调度与处理,保证了多人通话会话逻辑的正常进行。
可以理解的是,同一终端即可以作为多人通话的发起端,也可以作为多人通话邀请的接收端,例如,用户使用即时通讯应用,可以在讨论组中发起一次多人通话,也可以加入已经存在的多人通话。
以下本发明实施例将从实现多人通话的装置角度进行描述,该实现多人通话的装置具体可以集成在服务器中。
参见图8所示,是本发明实施例中提供的实现多人通话的方法实施例五,对多人通话会话中完整的状态机各会话状态转移情况进行说明,多人通话会话的状态机可以包括以下几种会话状态:通话请求中、通话已请求、接收邀请、进入房间请求中、进入房间已请求、进入通话房间、退出房间请求中以及退出。
通话请求中:在客户端接收到用户触发的多人通话请求后创建会话,向服务器包括的策略服务器发送创建通话房间请求后,服务器包括的策略服务器接收客户端发送的创建通话房间请求,则客户端的会话状态处于通话请求中。
通话已请求:前一个会话状态为通话请求中,服务器包括的策略服务器向客户端发送创建通话房间确认信息,创建房间确认信息包括服务器的接口地址即接口机服务器地址,以使客户端接收到策略服务器发送的创建通话房间确认信息,且会话状态为通话请求中时,可以根据创建房间确认信息触发接口机服务器创建通话房间,服务器包括的接口机服务器根据所述客户端的触发创建通话房间,则客户端的会话状态由通话请求中变更为通话已请求。
接收邀请:在客户端接收到多人通话邀请信息后创建会话,则客户端的会话状态处于接收邀请。
进入房间请求中:前一个会话状态为接收邀请,在客户端接收到用户触发的接受邀请信息,且会话状态为接收邀请时,可以向策略服务器发送进入通话房间请求,服务器包括的策略服务器接收客户端发送的进入通话房间请求,则客户端的会话状态由接收邀请变更为进入房间请求中。
进入房间已请求:前一个会话状态为进入房间请求中,服务器包括的策略服务器向客户端发送进入通话房间确认信息,进入通话房间确认信息包括服务器的接口地址(即接口机服务器地址)以及通话房间号,客户端接收到策略服务器发送的进入通话房间确认信息,且会话状态为进入房间请求中时,可以根据进入通话房间确认信息进入接口机服务器中的通话房间,则客户端的会话状态由进入房间请求中变更为进入房间已请求。
进入通话房间:前一个会话状态为通话已请求或者进入房间已请求,服务器包括的接口机服务器向所述客户端发送创建通话房间成功信息,客户端接收到接口机服务器发送的创建通话房间成功信息,且会话状态为通话已请求时,可以进入通话房间、同时可以保存通话房间号,并通知用户可以向其他用户发送多人通话邀请信息,开启音频引擎,则客户端的会话状态由通话已请求变更为进入通话房间;服务器包括的接口机服务器向所述客户端发送创建通话房间成功信息,客户端接收到接口机服务器发送的进入通话房间成功信息,且会话状态为进入房间已请求,可以开启音频引擎,则会话状态由进入房间已请求变更为进入通话房间。
退出房间请求中:前一个会话状态为进入通话房间,客户端在接收到用户触发的退出信号,且会话状态为进入通话房间时,向接口机服务器发送退出通话房间请求,服务器包括的接口机服务器接收客户端发送的退出通话房间请求,则客户端的会话状态由进入通话房间变更为退出房间请求中。
退出:前一个会话状态为退出房间请求中或者通话请求中或者通话已请求,服务器包括的接口机服务器向客户端发送退出通话房间成功信息,客户端接收到接口机服务器发送的退出通话房间成功信息,且会话状态为退出房间请求中时,可以关闭音频引擎,删除会话进行退出;在客户端接收到用户触发的退出信号,且会话状态为通话请求中或者通话已请求时,可以删除会话进行退出。
这样,本发明实施例在接收到用户使用应用触发的多人通话请求后或者接收到多人通话邀请信息后创建会话,并利用会话中的状态机记录会话状态,根据与服务器之间的交互结果以及状态机记录的会话状态,确定当前所应该执行的操作,从而实现利用状态机对多人通话中涉及的创建会话、进入会话、退出会话等各类会话逻辑进行调度与处理,保证了多人通话会话逻辑的正常进行。
相应的,参见图9所示,是本发明实施例中提供的实现多人通话的装置实施例一,可以包括:
第一状态单元901,可以用于接收到用户触发的多人通话请求后创建会话,向服务器发送创建通话房间请求,使会话状态处于通话请求中。
在本发明的一些实施例中,第一状态单元901可以具体用于:接收到用户触发的多人通话请求后判断当前是否已经存在会话,如果是,删除已经存在会话,创建会话,如果否,直接创建会话;向服务器发送创建通话房间请求,使会话状态处于通话请求中。
第二状态单元902,可以用于在接收到服务器发送的创建通话房间确认信息,且当前会话状态为通话请求中时,根据创建房间确认信息触发服务器创建通话房间,将会话状态变更为通话已请求,创建房间确认信息包括服务器的接口地址。
在本发明的一些实施例中,服务器可以包括接口机服务器,则服务器的接口地址包括接口机服务器地址,创建房间确认信息还可以包括房间密码;则第二状态单元902可以具体用于:在接收到服务器发送的创建通话房间确认信息,且当前会话状态为通话请求中时,根据机服务器地址连接到对应的接口机服务器,触发接口机服务器利用房间密码创建加密的通话房间,将会话状态变更为通话已请求。
第三状态单元903,可以用于在接收到服务器发送的创建通话房间成功信息,且当前会话状态为通话已请求时,进入通话房间并开启音频引擎,向其他用户发送多人通话邀请信息,将会话状态变更为进入通话房间。
参见图10所示,是本发明实施例中提供的实现多人通话的装置实施例二,在上述实现多人通话的装置实施例一的基础上,还可以包括:
第四状态单元1001,可以用于在接收到用户触发的退出信号,且当前会话状态为进入通话房间时,向服务器发送退出通话房间请求,将会话状态变更为退出房间请求中。
第一删除单元1002,可以用于在接收到服务器发送的退出通话房间成功信息,且当前会话状态为退出房间请求中时,关闭音频引擎,删除会话。
第二删除单元1003,可以用于在接收到用户触发的退出信号,且当前会话状态为通话请求中或者通话已请求时,删除会话。
这样,本发明实施例在接收到用户使用应用触发的多人通话请求后创建会话,并利用会话中的状态机记录会话状态,根据与服务器之间的交互结果以及状态机记录的会话状态,确定当前所应该执行的操作,从而实现利用状态机对多人通话中涉及的创建会话、进入会话、退出会话等各类会话逻辑进行调度与处理,保证多人通话会话逻辑的正常进行。
参见图11所示,本发明实施例中提供的实现多人通话的装置实施例三,可以包括:
第一状态单元1101,可以用于接收到多人通话邀请信息后创建会话,使会话状态处于接收邀请。
在本发明的一些实施例中,第一状态单元1101可以具体用于:接收到多人通话邀请信息后判断当前是否已经存在会话,如果是,删除已经存在会话,创建会话,如果否,直接创建会话,使会话状态处于接收邀请。
第二状态单元1102,可以用于在接收到用户触发的接受邀请信息,且当前会话状态为接收邀请时,向服务器发送进入通话房间请求,将会话状态变更为进入房间请求中。
第三状态单元1103,可以用于在接收到服务器发送的进入通话房间确认信息,且当前会话状态为进入房间请求中时,根据进入通话房间确认信息进入服务器中的通话房间,将会话状态变更为进入房间已请求,进入通话房间确认信息包括服务器的接口地址以及通话房间号。
在本发明的一些实施例中,服务器可以包括接口机服务器,服务器的接口地址可以包括接口机服务器地址;创建房间确认信息还可以包括房间密码;则第三状态单元1103可以具体用于:在接收到服务器发送的进入通话房间确认信息,且当前会话状态为进入房间请求中时,根据接口机服务器地址以及通话房间号连接到接口机服务器中的通话房间,利用房间密码进入加密的通话房间,将会话状态变更为进入房间已请求。
第四状态单元1104,可以用于在接收到服务器发送的进入通话房间成功信息,且当前会话状态为进入房间已请求,开启音频引擎,将会话状态变更为进入通话房间。
参见图12所示,是本发明实施例中提供的实现多人通话的装置实施例四,在上述实现多人通话的装置实施例三的基础上,还可以包括:
第五状态单元1201,可以用于在接收到用户触发的退出信号,且当前会话状态为进入通话房间时,向服务器发送退出通话房间请求,将会话状态变更为退出房间请求中。
删除单元1202,可以用于在接收到服务器发送的退出通话房间成功信息,且当前会话状态为退出房间请求中时,关闭音频引擎,删除会话。
这样,本发明实施例在接收到多人通话邀请信息后创建会话,并利用会话中的状态机记录会话状态,根据与服务器之间的交互结果以及状态机记录的会话状态,确定当前所应该执行的操作,从而实现利用状态机对多人通话中涉及的进入会话、退出会话等各类会话逻辑进行调度与处理,保证多人通话会话逻辑的正常进行。
参见图13所示,本发明实施例中提供的实现多人通话的装置实施例五,可以包括:
第一接收单元1301,用于接收客户端发送的创建通话房间请求,所述客户端的会话状态处于通话请求中。
第一发送单元1302,用于向所述客户端发送创建通话房间确认信息,所述创建房间确认信息包括所述服务器的接口地址,并根据所述客户端的触发创建通话房间,使所述客户端的会话状态由通话请求中变更为通话已请求。
第二发送单元1303,用于向所述客户端发送创建通话房间成功信息,使所述客户端进入所述通话房间,所述客户端的会话状态由通话已请求变更为进入通话房间。
第二接收单元1304,用于在所述客户端的会话状态处于接收邀请时,接收所述客户端发送的进入通话房间请求,使所述客户端的会话状态由接收邀请变更为进入房间请求中。
第三发送单元1305,用于向所述客户端发送进入通话房间确认信息,所述进入通话房间确认信息包括服务器的接口地址以及通话房间号,使所述客户端进入所述通话房间,所述客户端的会话状态由进入房间请求中变更为进入房间已请求。
第四发送单元1306,用于向所述客户端发送进入通话房间成功信息,使所述客户端的会话状态由进入房间已请求变更为进入通话房间。
在本发明的一些实施例中,本发明实施例中提供的实现多人通话的装置实施例五还可以包括:
第三接收单元,用于接收所述客户端发送的退出通话房间请求,使所述客户端的会话状态由进入通话房间变更为退出房间请求中;
第五发送单元,用于向所述客户端发送退出通话房间成功信息,使所述客户端删除会话。
这样,本发明实施例在接收到多人通话邀请信息后创建会话,并利用会话中的状态机记录会话状态,根据与服务器之间的交互结果以及状态机记录的会话状态,确定当前所应该执行的操作,从而实现利用状态机对多人通话中涉及的进入会话、退出会话等各类会话逻辑进行调度与处理,保证多人通话会话逻辑的正常进行。
相应的,参见图14所示,是本发明实施例中提供的实现多人通话的***实施例,可以包括:
第一终端1401、第二终端1402以及服务器1403。
第一终端1401,可以是上述实施例中提供的实现多人通话的装置实施例一或实现多人通话的装置实施例二。
第二终端1402,可以是上述实施例中提供的实现多人通话的装置实施例三或实现多人通话的装置实施例四。
服务器1403,可以是上述实施例中提供的实现多人通话的装置实施例五。
这样,本发明实施例在接收到用户使用应用触发的多人通话请求后或者接收到多人通话邀请信息后创建会话,并利用会话中的状态机记录会话状态,根据与服务器之间的交互结果以及状态机记录的会话状态,确定当前所应该执行的操作,从而实现利用状态机对多人通话中涉及的创建会话、进入会话、退出会话等各类会话逻辑进行调度与处理,保证多人通话会话逻辑的正常进行。
需要说明的是,本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的***或装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

Claims (23)

1.一种实现多人通话的方法,其特征在于,所述方法包括:
接收到用户触发的多人通话请求后创建会话,向服务器发送创建通话房间请求,使会话状态处于通话请求中;
在接收到所述服务器发送的创建通话房间确认信息,且当前所述会话状态为通话请求中时,根据所述创建房间确认信息触发所述服务器创建通话房间,将所述会话状态变更为通话已请求,所述创建房间确认信息包括所述服务器的接口地址;
在接收到所述服务器发送的创建通话房间成功信息,且当前所述会话状态为通话已请求时,进入所述通话房间并开启音频引擎,向其他用户发送多人通话邀请信息,将所述会话状态变更为进入通话房间。
2.根据权利要求1所述的方法,其特征在于,在接收用户触发的多人通话请求后,创建会话之前,所述方法还包括:
判断当前是否已经存在会话,如果是,删除已经存在会话,再执行创建会话步骤,如果否,直接执行创建会话步骤。
3.根据权利要求1所述的方法,其特征在于,所述创建房间确认信息还包括房间密码;所述服务器包括接口机服务器,所述服务器的接口地址包括所述接口机服务器地址;
所述根据所述创建房间确认信息触发所述服务器创建通话房间,包括:
根据所述接口机服务器地址连接到对应的接口机服务器,触发所述接口机服务器利用所述房间密码创建加密的通话房间。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在接收到用户触发的退出信号,且当前所述会话状态为进入通话房间时,向所述服务器发送退出通话房间请求,将所述会话状态变更为退出房间请求中;
在接收到所述服务器发送的退出通话房间成功信息,且当前所述会话状态为退出房间请求中时,关闭所述音频引擎,删除所述会话。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在接收到用户触发的退出信号,且当前所述会话状态为通话请求中或者通话已请求时,删除所述会话。
6.一种实现多人通话的方法,其特征在于,所述方法包括:
接收到多人通话邀请信息后创建会话,使会话状态处于接收邀请;
在接收到用户触发的接受邀请信息,且当前所述会话状态为接收邀请时,向服务器发送进入通话房间请求,将所述会话状态变更为进入房间请求中;
在接收到所述服务器发送的进入通话房间确认信息,且当前所述会话状态为进入房间请求中时,根据所述进入通话房间确认信息进入服务器中的通话房间,将所述会话状态变更为进入房间已请求,所述进入通话房间确认信息包括服务器的接口地址以及通话房间号;
在接收到所述服务器发送的进入通话房间成功信息,且当前所述会话状态为进入房间已请求,开启音频引擎,将所述会话状态变更为进入通话房间。
7.根据权利要求6所述的方法,其特征在于,接收到多人通话邀请信息后,创建会话之前,所述方法还包括:
判断当前是否已经存在会话,如果是,删除已经存在会话,再执行创建会话步骤,如果否,直接执行创建会话步骤。
8.根据权利要求6所述的方法,其特征在于,所述创建房间确认信息还包括房间密码;所述服务器包括接口机服务器,所述服务器的接口地址包括所述接口机服务器地址;
所述根据所述进入通话房间确认信息进入服务器中的通话房间,包括:
根据所述接口机服务器地址以及所述通话房间号连接到接口机服务器中的通话房间,利用所述房间密码进入加密的通话房间。
9.根据权利要求6所述的方法,其特征在于,所述方法还包括:
在接收到用户触发的退出信号,且当前所述会话状态为进入通话房间时,向所述服务器发送退出通话房间请求,将所述会话状态变更为退出房间请求中;
在接收到所述服务器发送的退出通话房间成功信息,且当前所述会话状态为退出房间请求中时,关闭所述音频引擎,删除所述会话。
10.一种实现多人通话的方法,其特征在于,所述方法包括:
接收客户端发送的创建通话房间请求,所述客户端的会话状态处于通话请求中;
向所述客户端发送创建通话房间确认信息,所述创建房间确认信息包括服务器的接口地址,并根据所述客户端的触发创建通话房间,使所述客户端的会话状态由通话请求中变更为通话已请求;
向所述客户端发送创建通话房间成功信息,使所述客户端进入所述通话房间,所述客户端的会话状态由通话已请求变更为进入通话房间;
在所述客户端的会话状态处于接收邀请时,接收所述客户端发送的进入通话房间请求,使所述客户端的会话状态由接收邀请变更为进入房间请求中;
向所述客户端发送进入通话房间确认信息,所述进入通话房间确认信息包括服务器的接口地址以及通话房间号,使所述客户端进入所述通话房间,所述客户端的会话状态由进入房间请求中变更为进入房间已请求;
向所述客户端发送进入通话房间成功信息,使所述客户端的会话状态由进入房间已请求变更为进入通话房间。
11.根据权利要求10所述的方法,其特征在于,所述方法还包括:
接收所述客户端发送的退出通话房间请求,使所述客户端的会话状态由进入通话房间变更为退出房间请求中;
向所述客户端发送退出通话房间成功信息,使所述客户端删除会话。
12.一种实现多人通话的装置,其特征在于,所述装置包括:
第一状态单元,用于接收到用户触发的多人通话请求后创建会话,向服务器发送创建通话房间请求,使会话状态处于通话请求中;
第二状态单元,用于在接收到所述服务器发送的创建通话房间确认信息,且当前所述会话状态为通话请求中时,根据所述创建房间确认信息触发服务器创建通话房间,将所述会话状态变更为通话已请求,所述创建房间确认信息包括服务器的接口地址;
第三状态单元,用于在接收到所述服务器发送的创建通话房间成功信息,且当前所述会话状态为通话已请求时,进入所述通话房间并开启音频引擎,向其他用户发送多人通话邀请信息,将所述会话状态变更为进入通话房间。
13.根据权利要求12所述的装置,其特征在于,所述第一状态单元具体用于:
接收到用户触发的多人通话请求后判断当前是否已经存在会话,如果是,删除已经存在会话,创建会话,如果否,直接创建会话;向服务器发送创建通话房间请求,使会话状态处于通话请求中。
14.根据权利要求12所述的装置,其特征在于,所述创建房间确认信息还包括房间密码;所述服务器包括接口机服务器,所述服务器的接口地址包括所述接口机服务器地址;
所述第二状态单元具体用于:
在接收到所述服务器发送的创建通话房间确认信息,且当前所述会话状态为通话请求中时,根据所述接口机服务器地址连接到对应的接口机服务器,触发所述接口机服务器利用所述房间密码创建加密的通话房间,将所述会话状态变更为通话已请求。
15.根据权利要求12所述的装置,其特征在于,所述装置还包括:
第四状态单元,用于在接收到用户触发的退出信号,且当前所述会话状态为进入通话房间时,向所述服务器发送退出通话房间请求,将所述会话状态变更为退出房间请求中;
第一删除单元,用于在接收到所述服务器发送的退出通话房间成功信息,且当前所述会话状态为退出房间请求中时,关闭所述音频引擎,删除所述会话。
16.根据权利要求12所述的装置,其特征在于,所述装置还包括:
第二删除单元,用于在接收到用户触发的退出信号,且当前所述会话状态为通话请求中或者通话已请求时,删除所述会话。
17.一种实现多人通话的装置,其特征在于,所述装置包括:
第一状态单元,用于接收到多人通话邀请信息后创建会话,使会话状态处于接收邀请;
第二状态单元,用于在接收到用户触发的接受邀请信息,且当前所述会话状态为接收邀请时,向服务器发送进入通话房间请求,将所述会话状态变更为进入房间请求中;
第三状态单元,用于在接收到所述服务器发送的进入通话房间确认信息,且当前所述会话状态为进入房间请求中时,根据所述进入通话房间确认信息进入服务器中的通话房间,将所述会话状态变更为进入房间已请求,所述进入通话房间确认信息包括服务器的接口地址以及通话房间号;
第四状态单元,用于在接收到所述服务器发送的进入通话房间成功信息,且当前所述会话状态为进入房间已请求,开启音频引擎,将所述会话状态变更为进入通话房间。
18.根据权利要求17所述的装置,其特征在于,所述第一状态单元具体用于:
接收到多人通话邀请信息后判断当前是否已经存在会话,如果是,删除已经存在会话,创建会话,如果否,直接创建会话,使会话状态处于接收邀请。
19.根据权利要求17所述的装置,其特征在于,所述创建房间确认信息还包括房间密码;所述服务器包括接口机服务器,所述服务器的接口地址包括所述接口机服务器地址;
所述第三状态单元具体用于:
在接收到所述服务器发送的进入通话房间确认信息,且当前所述会话状态为进入房间请求中时,根据所述接口机服务器地址以及所述通话房间号连接到接口机服务器中的通话房间,利用所述房间密码进入加密的通话房间,将会话状态变更为进入房间已请求。
20.根据权利要求17所述的装置,其特征在于,所述装置还包括:
第五状态单元,用于在接收到用户触发的退出信号,且当前所述会话状态为进入通话房间时,向所述服务器发送退出通话房间请求,将所述会话状态变更为退出房间请求中;
删除单元,用于在接收到所述服务器发送的退出通话房间成功信息,且当前所述会话状态为退出房间请求中时,关闭所述音频引擎,删除所述会话。
21.一种实现多人通话的装置,其特征在于,所述装置包括:
第一接收单元,用于接收客户端发送的创建通话房间请求,使所述客户端的会话状态处于通话请求中;
第一发送单元,用于向所述客户端发送创建通话房间确认信息,所述创建房间确认信息包括服务器的接口地址,并根据所述客户端的触发创建通话房间,使所述客户端的会话状态由通话请求中变更为通话已请求;
第二发送单元,用于向所述客户端发送创建通话房间成功信息,使所述客户端进入所述通话房间,所述客户端的会话状态由通话已请求变更为进入通话房间;
第二接收单元,用于在所述客户端的会话状态处于接收邀请时,接收所述客户端发送的进入通话房间请求,使所述客户端的会话状态由接收邀请变更为进入房间请求中;
第三发送单元,用于向所述客户端发送进入通话房间确认信息,所述进入通话房间确认信息包括服务器的接口地址以及通话房间号,使所述客户端进入所述通话房间,所述客户端的会话状态由进入房间请求中变更为进入房间已请求;
第四发送单元,用于向所述客户端发送进入通话房间成功信息,使所述客户端的会话状态由进入房间已请求变更为进入通话房间。
22.根据权利要求21所述的装置,其特征在于,所述装置还包括:
第三接收单元,用于接收所述客户端发送的退出通话房间请求,使所述客户端的会话状态由进入通话房间变更为退出房间请求中;
第五发送单元,用于向所述客户端发送退出通话房间成功信息,使所述客户端删除会话。
23.一种实现多人通话的***,其特征在于,所述***包括:
第一终端、第二终端以及服务器;
所述第一终端,是权利要求12-16任一项所述的实现多人通话的装置;
所述第二终端,是权利要求17-20任一项所述的实现多人通话的装置;
所述服务器,是权利要求21或22所述的实现多人通话的装置。
CN201410431492.XA 2014-08-28 2014-08-28 一种实现多人通话的方法、装置及*** Active CN105471704B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410431492.XA CN105471704B (zh) 2014-08-28 2014-08-28 一种实现多人通话的方法、装置及***

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410431492.XA CN105471704B (zh) 2014-08-28 2014-08-28 一种实现多人通话的方法、装置及***

Publications (2)

Publication Number Publication Date
CN105471704A CN105471704A (zh) 2016-04-06
CN105471704B true CN105471704B (zh) 2019-05-31

Family

ID=55609009

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410431492.XA Active CN105471704B (zh) 2014-08-28 2014-08-28 一种实现多人通话的方法、装置及***

Country Status (1)

Country Link
CN (1) CN105471704B (zh)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105610950B (zh) * 2015-12-30 2020-07-24 腾讯科技(深圳)有限公司 车队出行中的会话处理方法及***
CN108616486B (zh) * 2016-12-09 2020-09-01 展讯通信(上海)有限公司 多方通话中提供用户状态的方法、装置及移动终端
CN107104976B (zh) * 2017-05-22 2024-02-27 咪咕音乐有限公司 一种实现音乐房之间音乐交互的方法及装置
CN107302745A (zh) * 2017-06-27 2017-10-27 捷开通讯(深圳)有限公司 一种多人语音控制方法、手持终端和具有存储功能的装置
CN108092868A (zh) * 2017-12-13 2018-05-29 上海曼恒数字技术股份有限公司 一种基于远程操作的组网方法、装置、设备及存储介质
CN110620672B (zh) * 2018-06-19 2022-02-18 腾讯科技(深圳)有限公司 多人会话数据处理方法、装置、计算机设备和存储介质
CN109771955B (zh) * 2019-01-17 2022-03-18 腾讯科技(深圳)有限公司 邀请请求处理方法、装置、终端及存储介质
CN110740161B (zh) * 2019-08-30 2022-05-13 武汉烽火众智数字技术有限责任公司 一种适配融合通信的***及方法
CN111343079B (zh) * 2020-02-24 2022-05-17 北京字节跳动网络技术有限公司 进行语音通话的方法及装置
CN111371993A (zh) * 2020-03-13 2020-07-03 腾讯科技(深圳)有限公司 一种图像拍摄方法、装置、计算机设备和存储介质
CN112153056A (zh) * 2020-09-25 2020-12-29 五八到家有限公司 数据处理方法及服务端设备

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1976322A (zh) * 2006-12-08 2007-06-06 王先来 一种实现多媒体即时通讯的方法、***和控制流程
CN102177507A (zh) * 2008-10-09 2011-09-07 夏普株式会社 经由通信网络进行通信的通信终端
CN103023913A (zh) * 2012-12-26 2013-04-03 腾讯科技(深圳)有限公司 一种语音通信的建立方法、装置和***
CN103347003A (zh) * 2013-06-19 2013-10-09 腾讯科技(深圳)有限公司 一种语音互联方法、装置及***
CN103888792A (zh) * 2014-02-24 2014-06-25 四川长虹电器股份有限公司 一种快速建立群组或讨论组的方法及***

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1976322A (zh) * 2006-12-08 2007-06-06 王先来 一种实现多媒体即时通讯的方法、***和控制流程
CN102177507A (zh) * 2008-10-09 2011-09-07 夏普株式会社 经由通信网络进行通信的通信终端
CN103023913A (zh) * 2012-12-26 2013-04-03 腾讯科技(深圳)有限公司 一种语音通信的建立方法、装置和***
CN103347003A (zh) * 2013-06-19 2013-10-09 腾讯科技(深圳)有限公司 一种语音互联方法、装置及***
CN103888792A (zh) * 2014-02-24 2014-06-25 四川长虹电器股份有限公司 一种快速建立群组或讨论组的方法及***

Also Published As

Publication number Publication date
CN105471704A (zh) 2016-04-06

Similar Documents

Publication Publication Date Title
CN105471704B (zh) 一种实现多人通话的方法、装置及***
US10635449B2 (en) Method and apparatus for running game client
US10304461B2 (en) Remote electronic service requesting and processing method, server, and terminal
CN104519485B (zh) 一种终端之间的通信方法、装置和***
CN104978176B (zh) 应用程序接口调用方法、装置及计算机可读存储介质
CN104618217B (zh) 分享资源的方法、终端、服务器及***
CN104427074B (zh) 一种显示来电信息的方法、装置和***
CN106371689B (zh) 图片拼接方法、装置及***
US9363300B2 (en) Systems and methods for voice communication
CN105207896A (zh) 网络通话方法和装置
CN109309614A (zh) 一种消息修改方法、移动终端、服务器及存储介质
CN106775262A (zh) 一种未读图标显示管理的方法和***
CN107786424A (zh) 音视频通信方法、终端及服务器
CN106303605B (zh) 一种发送通知消息的方法、装置和***
CN108829444A (zh) 一种自动关闭后台应用的方法、终端和计算机存储介质
CN104660769B (zh) 一种添加联系人信息的方法、装置和***
CN109669662A (zh) 一种语音输入方法、装置、存储介质及移动终端
CN104573437A (zh) 信息认证方法、装置和终端
CN104753672B (zh) 账号授权的方法、装置及终端
CN105721282B (zh) 消息显示方法及装置
CN105553718B (zh) 引导信息显示方法及装置
CN105991405B (zh) 一种即时通信的建立方法及装置
CN105302589B (zh) 一种获取卸载信息的方法及装置
CN109086595A (zh) 一种业务账号切换方法、***、装置及服务器
CN109728918A (zh) 虚拟物品发送方法、虚拟物品接收方法、装置及存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20240104

Address after: 518000 Tencent Building, No. 1 High-tech Zone, Nanshan District, Shenzhen City, Guangdong Province, 35 Floors

Patentee after: TENCENT TECHNOLOGY (SHENZHEN) Co.,Ltd.

Patentee after: TENCENT CLOUD COMPUTING (BEIJING) Co.,Ltd.

Address before: 2, 518000, East 403 room, SEG science and Technology Park, Zhenxing Road, Shenzhen, Guangdong, Futian District

Patentee before: TENCENT TECHNOLOGY (SHENZHEN) Co.,Ltd.

TR01 Transfer of patent right