一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

语音通话建立方法及电子设备与流程

2022-10-26 18:46:59 来源:中国专利 TAG:


1.本技术涉及终端设备领域,尤其涉及一种语音通话建立方法及电子设备。


背景技术:

2.语音通话是电子设备的主要功能之一。在进行语音通话之前,通话双方电子设备需要通过网络建立通信连接,完成通话前的信令交互过程。在网络异常的一个场景中,被叫方接通主叫方的通话邀请后,被叫方听不到主叫方的声音,主叫方显示电话未接通,但主叫方却能听到被叫方的声音,造成了电话单通的现象,给用户的体验较差。


技术实现要素:

3.为了解决上述技术问题,本技术提供一种语音通话建立方法及电子设备,被叫方在发送接通成功响应后的一定时间内未接收到主叫方确认消息的情况下,通过私有协议通知主叫方已接通,使主叫方将通话状态调整为已接通,通话双方能够正常通话,降低了语音通话单通率,提高了用户的语音通话体验。
4.第一方面,本技术提供一种语音通话建立方法。该方法应用于电子设备。该方法包括:被叫设备接收到主叫设备发送的语音通话的邀请请求后,向主叫设备发送针对邀请请求的接通成功响应,并启动计时;如果计时时间达到第一时长,被叫设备未接收到主叫设备针对接通成功响应返回的第一确认消息,向主叫设备发送基于第一私有协议的接通通知,接通通知用于指示被叫设备已接通;被叫设备接收主叫设备针对接通通知返回的基于第一私有协议的第二确认消息,确认与主叫设备之间的语音通话已建立,主叫设备发送第二确认消息后将主叫设备的本地通话状态调整为已接通。这样,语音通话的被叫方在发送接通成功响应后的一定时间内未接收到主叫方确认消息的情况下,通过私有协议通知主叫方已接通,使主叫方将通话状态调整为已接通,通话双方能够正常通话,降低了语音通话单通率,提高了用户的语音通话体验。
5.根据第一方面,第一私有协议为私有实时传输控制协议rtcp协议。
6.根据第一方面,接通通知为源描述类型的rtcp包,rtcp包中的cname字段用于存储被叫设备已接通的标识信息。
7.根据第一方面,接通通知为源描述类型即202类型的rtcp包,rtcp包中的priv字段用于存储被叫设备已接通的标识信息;或者,接通通知为204类型的rtcp包。
8.根据第一方面,第一时长大于0且小于或等于3秒。
9.根据第一方面,其特征在于,第一时长为0。
10.根据第一方面,第一时长为第二时长的预设倍数,第二时长为主叫设备与被叫设备之间的通信网络正常情况下、从被叫设备发送接通成功响应时刻至被叫设备接收到第一确认消息时刻的时长。
11.根据第一方面,还包括:如果计时时间未达到第一时长,被叫设备接收到主叫设备针对接通成功响应返回的第一确认消息,停止计时,并确认与主叫设备之间的语音通话已
建立。
12.第二方面,本技术提供一种语音通话建立方法,包括:主叫设备向被叫设备发送语音通话的邀请请求;主叫设备接收被叫设备发送的基于第一私有协议的接通通知,接通通知用于指示被叫设备已接通;主叫设备根据接通通知,将本地通话状态调整为已接通,并向被叫设备发送针对接通通知的基于第一私有协议的第二确认消息,以使被叫设备根据第二确认消息确认与主叫设备之间的语音通话已建立。这样,语音通话的主叫方在一定时间内未接收到被叫方的接通成功响应,从而主叫方没有向被叫方返回针对接通成功响应的确认消息的情况下,主叫方通过私有协议接收被叫方已接通的通知,从而主叫方根据该通知将通话状态调整为已接通,通话双方能够正常通话,降低了语音通话单通率,提高了用户的语音通话体验。
13.根据第二方面,第一私有协议为私有实时传输控制协议rtcp协议。
14.根据第二方面,第二确认消息为源描述类型的rtcp包,rtcp包中的cname字段用于存储标识确认的信息。
15.根据第二方面,第二确认消息为源描述类型的rtcp包,rtcp包中的priv字段用于存储标识确认的信息。
16.第三方面,本技术提供一种语音通话建立方法,包括:主叫设备向被叫设备发送语音通话的邀请请求;被叫设备接收邀请请求,向主叫设备发送针对邀请请求的接通成功响应,并启动计时;如果计时时间达到第一时长,被叫设备未接收到主叫设备针对接通成功响应返回的第一确认消息,向主叫设备发送基于第一私有协议的接通通知,接通通知用于指示被叫设备已接通;主叫设备接收接通通知,根据接通通知,将本地通话状态调整为已接通,并向被叫设备发送针对接通通知的基于第一私有协议的第二确认消息;被叫设备接收第二确认消息,确认与主叫设备之间的语音通话已建立。
17.第四方面,本技术提供一种语音通话挂断方法,包括:第一设备挂断与第二设备的语音通话;第一设备向第二设备发送电话挂断通知,并启动计时,电话挂断通知用于指示第一设备已挂断通话;如果计时时间达到第一时长,第一设备未接收到第二设备针对电话挂断通知返回的第三确认消息,向第二设备发送基于第一私有协议的第一通知,第一通知用于指示第一设备已挂断通话;第一设备接收第二设备针对第一通知返回的基于第一私有协议的第四确认消息,确认与第二设备之间的语音通话已挂断,第四确认消息是第二设备接收第一通知、根据第一通知将本地通话状态调整为已挂断后发出的。
18.第五方面,本技术提供一种语音通话取消方法,包括:第一设备取消与第二设备的语音通话;第一设备向第二设备发送电话取消通知,并启动计时,电话取消通知用于指示第一设备已取消通话;如果计时时间达到第一时长,第一设备未接收到第二设备针对电话取消通知返回的第五确认消息,向第二设备发送基于第一私有协议的第三通知,第三通知用于指示第一设备已取消通话;第一设备接收第二设备针对第三通知返回的基于第一私有协议的第六确认消息,确认与第二设备之间的语音通话已取消,第六确认消息是第二设备接收第三通知、根据第三通知将本地通话状态调整为已取消后发出的。
19.第六方面,本技术提供一种电子设备,包括:存储器和处理器,存储器与处理器耦合;存储器存储有程序指令,当程序指令由所述处理器执行时,使得电子设备执行第一方面任意一项的语音通话建立方法,或者,执行第二方面任意一项的语音通话建立方法。
20.第七方面,本技术提供一种计算机可读存储介质,包括计算机程序,当计算机程序在电子设备上运行时,使得电子设备执行前述的第一方面任意一项的语音通话建立方法,或者,执行第二方面任意一项的语音通话建立方法。
21.第八方面,本技术提供一种电子设备,包括:存储器和处理器,存储器与处理器耦合;存储器存储有程序指令,当程序指令由所述处理器执行时,使得电子设备执行第四方面任意一项的语音通话挂断方法。
22.第九方面,本技术提供一种计算机可读存储介质,包括计算机程序,当计算机程序在电子设备上运行时,使得电子设备执行前述的第四方面任意一项的语音通话挂断方法。
23.第十方面,本技术提供一种电子设备,包括:存储器和处理器,存储器与处理器耦合;存储器存储有程序指令,当程序指令由所述处理器执行时,使得电子设备执行第五方面任意一项的语音通话取消方法。
24.第十一方面,本技术提供一种计算机可读存储介质,包括计算机程序,当计算机程序在电子设备上运行时,使得电子设备执行前述的第五方面任意一项的语音通话取消方法。
附图说明
25.图1为示例性示出的电子设备100的结构示意图;图2为示例性示出的本技术实施例的电子设备100的软件结构框图;图3为示例性示出的语音通话建立过程的一种示意图;图4为示例性示出的语音通话建立过程的另一种示意图;图5为示例性示出的接通通知的一种数据结构示例图;图6为示例性示出的语音通话建立过程中被叫设备侧的一种流程示意图;图7为示例性示出的语音通话建立过程中被叫设备侧的另一种流程示意图;图8为示例性示出的语音通话建立过程中主叫设备侧的一种流程示意图;图9为示例性示出的语音通话挂断过程的一种流程示意图;图10为示例性示出的语音通话挂断过程的另一种流程示意图;图11为示例性示出的语音通话取消过程的一种流程示意图;图12为示例性示出的语音通话取消过程的另一种流程示意图。
具体实施方式
26.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
27.本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。
28.本技术实施例的说明书和权利要求书中的术语“第一”和“第二”等是用于区别不同的对象,而不是用于描述对象的特定顺序。例如,第一目标对象和第二目标对象等是用于区别不同的目标对象,而不是用于描述目标对象的特定顺序。
29.在本技术实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本技术实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
30.在本技术实施例的描述中,除非另有说明,“多个”的含义是指两个或两个以上。例如,多个处理单元是指两个或两个以上的处理单元;多个系统是指两个或两个以上的系统。
31.本技术实施例提供一种语音通话建立方法,能够降低通话单通率,提高用户的通话体验。
32.本技术实施例中的语音通话建立方法可以应用于电子设备,该电子设备例如可以是手机,也可以是具有通话功能的其他电子设备等本实施例中的电子设备的结构可以如图1所示。
33.图1为示例性示出的电子设备100的结构示意图。应该理解的是,图1所示电子设备100仅是电子设备的一个范例,并且电子设备100可以具有比图中所示的更多的或者更少的部件,可以组合两个或多个的部件,或者可以具有不同的部件配置。图1中所示出的各种部件可以在包括一个或多个信号处理和/或专用集成电路在内的硬件、软件、或硬件和软件的组合中实现。
34.请参见图1,电子设备100可以包括:处理器110,内部存储器121,通用串行总线(universal serial bus,usb)接口130,充电管理模块140,电源管理模块141,电池142,天线1,天线2,移动通信模块150,无线通信模块160,音频模块170,扬声器170a,受话器170b,麦克风170c,耳机接口170d,传感器模块180,指示器192,摄像头193等。
35.处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,ap),调制解调处理器,图形处理器(graphics processing unit,gpu),图像信号处理器(image signal processor,isp),控制器,存储器,视频编解码器,数字信号处理器(digital signal processor,dsp),基带处理器,和/或神经网络处理器(neural-network processing unit,npu)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
36.其中,控制器可以是电子设备100的神经中枢和指挥中心。控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
37.处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。
38.电子设备100的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。
39.天线1和天线2用于发射和接收电磁波信号。电子设备100中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。例如:可以将天线1复用为无线局域网的分集天线。在另外一些实施例中,天线可以和调谐开关结合使用。
40.移动通信模块150可以提供应用在电子设备100上的包括2g/3g/4g/5g等无线通信的解决方案。移动通信模块150可以包括至少一个滤波器,开关,功率放大器,低噪声放大器(low noise amplifier,lna)等。移动通信模块150可以由天线1接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块150还可以对
经调制解调处理器调制后的信号放大,经天线1转为电磁波辐射出去。在一些实施例中,移动通信模块150的至少部分功能模块可以被设置于处理器110中。在一些实施例中,移动通信模块150的至少部分功能模块可以与处理器110的至少部分模块被设置在同一个器件中。
41.调制解调处理器可包括一个或多个调制解调器(modem),调制解调器可以包括调制器和解调器。其中,调制器用于将待发送的低频基带信号调制成中高频信号。解调器用于将接收的电磁波信号解调为低频基带信号。随后解调器将解调得到的低频基带信号传送至基带处理器处理。低频基带信号经基带处理器处理后,被传递给应用处理器。应用处理器通过音频设备(不限于扬声器170a,受话器170b等)输出声音信号,或通过显示屏194显示图像或视频。在一些实施例中,调制解调处理器可以是独立的器件。在另一些实施例中,调制解调处理器可以独立于处理器110,与移动通信模块150或其他功能模块设置在同一个器件中。
42.其中,电子设备100的软件系统可以采用分层架构、事件驱动架构、微核架构、微服务架构,或云架构。本技术实施例以分层架构的安卓(android)系统为例,示例性说明电子设备100的软件结构。
43.图2为示例性示出的本技术实施例的电子设备100的软件结构框图。
44.电子设备100的分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,android系统可以包括应用程序层、应用程序框架层、内核层等。
45.应用程序层可以包括一系列应用程序包。
46.如图2所示,应用程序包可以包括相机,日历,地图,wlan,音乐,短消息,图库,通话,导航,蓝牙,视频等应用程序。
47.其中,通话应用用于实现语音通话功能。
48.应用程序框架层为应用程序层的应用程序提供应用编程接口(application programming interface,api)和编程框架。应用程序框架层包括一些预先定义的函数。
49.如图2所示,应用程序框架层可以包括资源管理器,电话管理器等。
50.资源管理器为应用程序提供各种资源,比如本地化字符串,图标,图片,布局文件,视频文件等等。
51.电话管理器用于提供电子设备100的通信功能。例如通话状态的管理(包括接通,挂断等)。
52.如图2所示,内核层可以包括显示驱动、wi-fi驱动、蓝牙驱动、音频驱动、传感器驱动等模块。
53.如图2所示,硬件抽象层可以包括调制解调器,调制解调器中可以包括第一语音通话建立模块和第二语音通话建立模块。其中,第一语音通话建立模块用于执行本技术的语音通话建立方法实施例中主叫设备侧的方法。第二语音通话建立模块用于执行本技术的语音通话建立方法实施例中被叫设备侧的方法。
54.当电子设备100作为语音通话中的主叫设备时,电子设备100使用第一语音通话建立模块与被叫设备中的第二语音通话建立模块交互,完成语音通话的建立过程。
55.当电子设备100作为语音通话中的被叫设备时,电子设备100使用第二语音通话建立模块与主叫设备中的第一语音通话建立模块交互,完成语音通话的建立过程。
56.可以理解的是,图2示出的软件结构中的层以及各层中包含的部件,并不构成对电子设备100的具体限定。在本技术另一些实施例中,电子设备100可以包括比图示更多或更少的层,以及每个层中可以包括更多或更少的部件,本技术不做限定。
57.下面通过实施例,对本技术进行详细说明。
58.图3为示例性示出的语音通话建立过程的一种示意图。请参见图3,本技术实施例中,主叫设备与被叫设备之间的语音通话建立过程可以包括如下步骤:s301、主叫设备通过网络向被叫设备发送语音通话的邀请请求。
59.拟通话的双方设备通过sip(session initiation protocol,会话发起协议)创建会话。其中,发起通话的主叫设备首先通过网络向被叫设备发送语音通话的邀请请求,该邀请请求即invite消息。
60.s302、被叫设备通过网络向主叫设备返回试呼叫消息。
61.本步骤中,被叫设备将试呼叫消息发送给网络,网络将试呼叫消息转发给主叫设备。
62.试呼叫消息即100 trying消息。
63.s303、被叫设备通过网络向主叫设备发送183消息,该消息中不包含pem(p-early-media,早期媒体)。
64.在此时,网络是正常的,因此183消息成功能够成功到达主叫设备。
65.s304、被叫设备通过网络向主叫设备发送180消息,此时网络异常,导致网络没有将180消息转发给主叫设备。
66.s305、被叫设备通过网络向主叫设备发送针对邀请请求的接通成功响应200 ok消息,网络异常,导致网络没有将接通成功响应200 ok消息转发给主叫设备。
67.步骤s301至步骤s305中的信息是通过volte(voice over long-term evolution,长期演进语音承载)的ims(ip multimedia subsystem,ip多媒体系统)消息专用通道qci5传输的。
68.s306、被叫设备启动计时。
69.本步骤中,被叫设备可以开启定时器,定时器的定时时间为t。
70.s307、被叫设备通过网络向主叫设备发送rtp(real-time transport protocol,实时传输协议)语音包。
71.本步骤中,本步骤中,被叫设备将rtp语音包发送给网络,网络将rtp语音包转发给主叫设备。
72.其中,rtp语音包是通过语音通道qci1传输的。
73.s308、主叫设备通过网络向被叫设备发送rtcp(rtp control protocol,实时传输控制协议)接收报告。
74.此处,rtcp接收报告是通过语音通道qci1传输的。
75.s309、被叫设备通过网络向主叫设备发送rtcp发送报告。
76.此处,rtcp发送报告是通过语音通道qci1传输的。
77.s310、被叫设备判断计时时间是否达到t,以及是否接收到主叫设备针对接通成功响应返回的确认(ack)消息,如果计时时间达到t,且未接收到主叫设备针对接通成功响应返回的确认消息,执行步骤s311。如果计时时间未达到t,且已接收到主叫设备针对接通成
功响应返回的确认消息,停止计时,并确认与主叫设备之间的语音通话已建立。
78.其中,t可以设置为小于或等于3秒的值。
79.在实际应用中,t的取值可以设置为正常sip消息对交互的耗时的n倍(例如,n=3)左右。当然,t的取值也可以根据在不同的核心网下动态调整。此时,通信设备,例如手机可以根据自己学习到的特定网络下200 ok正常传输所用的耗时(即从发送200 ok消息,到接收到200 ok消息对应的确认ack消息的耗时),乘以对应的倍数n,得到t的值。还可以根据上下行发送数据的拥塞程度来调整t的值。
80.s311、被叫设备通过网络向主叫设备发送基于rtcp协议的接通通知,该接通通知用于指示被叫设备已接通。
81.本步骤中的接通通知是通过语音通道qci1传输的。
82.在一个示例中,接通通知可以为sdes(source description,源描述)类型的rtcp包。
83.在一个示例中,在接通通知为sdes类型的rtcp包的情况下,rtcp包中的cname字段可以用于存储被叫设备已接通的标识信息。
84.图5为示例性示出的接通通知的一种数据结构示例图。请参见图5的(a)图,rtcp包中的cname字段的值为1时,标识被叫设备已接通。
85.需要说明的是,在其他实施例中,也可以规定cname字段的值为其他值时标识被叫设备已接通,例如,可以规定cname字段的值为0时,标识被叫设备已接通。
86.在另一个示例中,在接通通知为sdes类型的rtcp包的情况下,rtcp包中的priv字段可以用于存储被叫设备已接通的标识信息。请参见图5的(b)图,rtcp包中的priv字段的值为8时,标识被叫设备已接通。
87.需要说明的是,在其他实施例中,也可以规定priv字段的值为其他值时标识被叫设备已接通。
88.在一个示例中,接通通知也可以为204(app)类型的rtcp包。在这种情况下,可以使用204(app)类型的rtcp包中的自定义字段来标识被叫设备已接通。
89.s312、主叫设备通过网络向被叫设备发送针对接通通知的基于rtcp协议的确认消息。
90.本步骤中的确认消息是通过语音通道qci1传输的。
91.通过步骤s311、s312,即使在网络的ims消息专用通道qci5异常的情况下,主叫设备仍然能够获知被叫设备已接通的情况,从而可以基于此将本地通话状态调整为已接通,并允许主叫设备本端的语音发送到网络,这样主叫方和被叫方就能够双方都接通通话,避免了只有一方接通的单通情况的发生。
92.s313、主叫设备将主叫设备的本地通话状态调整为已接通,并允许本端的语音发送到网络。
93.这样,主叫设备与被叫设备就可以正常进行语音rtp包的传输,实现双方语音通话了。
94.上述实施例中,主叫设备所执行的操作是由主叫设备中的第一语音通话建立模块执行的,被叫设备所执行的操作是由被叫设备中的第二语音通话建立模块执行的。
95.图4为示例性示出的语音通话建立过程的另一种示意图。请参见图4,本技术实施
例中,主叫设备与被叫设备之间的语音通话建立过程可以包括如下步骤:s401、主叫设备通过网络向被叫设备发送语音通话的邀请请求。
96.双方设备通过sip创建会话。其中,发起通话的主叫设备首先通过网络向被叫设备发送语音通话的邀请请求,该邀请请求即invite消息。
97.s402、被叫设备通过网络向主叫设备返回试呼叫消息。
98.被叫设备将试呼叫消息发送给网络,网络将试呼叫消息转发给主叫设备。
99.试呼叫消息即100 trying消息。
100.s403、被叫设备通过网络向主叫设备发送183消息,该消息中不包含pem。
101.s404、被叫设备通过网络向主叫设备发送180消息,网络异常,导致网络没有将播放回铃音的通知消息180消息转发给主叫设备。
102.s405、被叫设备通过网络向主叫设备发送针对邀请请求的接通成功响应200 ok消息,网络异常,导致网络没有将接通成功响应200 ok消息转发给主叫设备。
103.步骤s401至步骤s405中的信息是通过volte的ims消息专用通道qci5传输的。
104.s406、被叫设备通过网络向主叫设备发送基于rtcp协议的接通通知,该接通通知用于指示被叫设备已接通。
105.本步骤中的接通通知是通过语音通道qci1传输的。
106.本实施例中,被叫设备向主叫设备发送接通成功响应200 ok消息之后,立即向主叫设备发送基于rtcp协议的接通通知。这样,如果网络正常,主叫设备可以成功接收到接通成功响应200 ok消息,并基于该接通成功响应200 ok消息将本地通话状态调整为已接通,以及允许本段语音发往网络。如果网路异常,主叫设备不能成功接收到接通成功响应200 ok消息,主叫设备还可以通过私有协议rtcp接收到指示被叫设备已接通的接通通知,并基于该接通通知将本地通话状态调整为已接通,以及允许本段语音发往网络。
107.并且,由于基于rtcp协议的接通通知是在发送接通成功响应200 ok消息之后立即发送的,在网络异常情况下,可以使主叫设备和被叫设备快速进入正常通话状态,缩短主叫设备和被叫设备的等待时长,从而提升用户体验。
108.s407、主叫设备通过网络向被叫设备发送针对接通通知的基于rtcp协议的确认消息。
109.本步骤中的确认消息是通过语音通道qci1传输的。
110.通过步骤s406、s407,即使在网络的ims消息专用通道qci5异常的情况下,主叫设备仍然能够获知被叫设备已接通的情况,从而可以基于此将本地通话状态调整为已接通,并允许主叫设备本端的语音发送到网络,这样主叫方和被叫方就能够双方都接通通话,避免了只有一方接通的单通情况的发生。
111.s408、主叫设备将主叫设备的本地通话状态调整为已接通,并允许本端的语音发送到网络。
112.这样,主叫设备与被叫设备就都可以正常进行语音rtp包的传输,实现双方语音通话了。
113.上述实施例中,主叫设备所执行的操作是由主叫设备中的第一语音通话建立模块执行的,被叫设备所执行的操作是由被叫设备中的第二语音通话建立模块执行的。
114.下面分别从主叫设备和被叫设备单侧来说明本技术实施例中的语音通话建立过
程。
115.图6为示例性示出的语音通话建立过程中被叫设备侧的一种流程示意图。请参见图6,本技术实施例中,语音通话建立过程中被叫设备侧的流程可以包括如下步骤:s601、被叫设备接收到主叫设备发送的语音通话的邀请请求后,向主叫设备发送针对邀请请求的接通成功响应,并启动计时。
116.s602、如果计时时间达到第一时长,被叫设备未接收到主叫设备针对接通成功响应返回的第一确认消息,向主叫设备发送基于第一私有协议的接通通知,接通通知用于指示被叫设备已接通。
117.s603、被叫设备接收主叫设备针对接通通知返回的基于第一私有协议的第二确认消息,确认与主叫设备之间的语音通话已建立,主叫设备发送第二确认消息后将主叫设备的本地通话状态调整为已接通。
118.其中,第一私有协议可以是前述的rtcp协议。
119.其中,第一时长可以大于0且小于或等于3秒。
120.图7为示例性示出的语音通话建立过程中被叫设备侧的另一种流程示意图。请参见图7,本技术实施例中,语音通话建立过程中被叫设备侧的流程可以包括如下步骤:s701、被叫设备接收到主叫设备发送的语音通话的邀请请求后,向主叫设备发送针对邀请请求的接通成功响应。
121.s702、被叫设备向主叫设备发送基于第一私有协议的接通通知,接通通知用于指示被叫设备已接通。
122.s703、被叫设备接收主叫设备针对接通通知返回的基于第一私有协议的第二确认消息,确认与主叫设备之间的语音通话已建立,主叫设备发送第二确认消息后将主叫设备的本地通话状态调整为已接通。
123.图8为示例性示出的语音通话建立过程中主叫设备侧的一种流程示意图。请参见图8,本技术实施例中,语音通话建立过程中主叫设备侧的流程可以包括如下步骤:s801、主叫设备向被叫设备发送语音通话的邀请请求。
124.s802、主叫设备接收被叫设备发送的基于第一私有协议的接通通知,接通通知用于指示被叫设备已接通。
125.s803、主叫设备根据接通通知,将本地通话状态调整为已接通,并向被叫设备发送针对接通通知的基于第一私有协议的第二确认消息,以使被叫设备根据第二确认消息确认与主叫设备之间的语音通话已建立。
126.本技术实施例还提供一种语音通话挂断方法。
127.图9为示例性示出的语音通话挂断过程的一种流程示意图。请参见图9,本技术实施例中,语音通话挂断过程可以包括如下步骤:s901、第一设备挂断与第二设备的语音通话。
128.在一个示例中,第一设备可以是主叫设备,第一设备可以是被叫设备。
129.在另一个示例中,第一设备可以是被叫设备,第一设备可以是主叫设备。
130.s902、第一设备向第二设备发送电话挂断通知,并启动计时,电话挂断通知用于指示第一设备已挂断通话。
131.s903、如果计时时间达到第一时长,第一设备未接收到第二设备针对电话挂断通
知返回的第三确认消息,向第二设备发送基于第一私有协议的第一通知,第一通知用于指示第一设备已挂断通话。
132.第一通知的数据结构可以与前述的基于rtcp协议的接通通知的数据结构相同,例如可以用sdes类型的rtcp包中的cname字段或priv字段中的值标识第一设备已挂断通话,此处不再赘述。第一通知也可以为204(app)类型的rtcp包。在这种情况下,可以使用204(app)类型的rtcp包中的自定义字段来标识第一设备已挂断通话。
133.其中,第一私有协议可以为rtcp协议。
134.本步骤中的第一通知是通过语音通道qci1传输的。
135.s904、第一设备接收第二设备针对第一通知返回的基于第一私有协议的第四确认消息,确认与第二设备之间的语音通话已挂断,第四确认消息是第二设备接收第一通知、根据第一通知将本地通话状态调整为已挂断后发出的。
136.通过本实施例,当网络异常,ims消息专用通道qci5不能传输电话挂断通知的情况下,可以通过私有协议将电话挂断的信息通过语音通道qci1传输到语音通话对端,使语音通话对端及时获知与其通话的另一端已挂断通话的信息,从而及时将本端通话状态修改为已挂断,避免出现一方挂断,另一方仍在接通状态的单通情况,提升用户体验。
137.图10为示例性示出的语音通话挂断过程的另一种流程示意图。请参见图10,本技术实施例中,语音通话挂断过程可以包括如下步骤:s1001、第一设备挂断与第二设备的语音通话。
138.在一个示例中,第一设备可以是主叫设备,第一设备可以是被叫设备。
139.在另一个示例中,第一设备可以是被叫设备,第一设备可以是主叫设备。
140.s1002、第一设备向第二设备发送电话挂断通知,电话挂断通知用于指示第一设备已挂断通话。
141.s1003、第一设备向第二设备发送基于第一私有协议的第一通知,第一通知用于指示第一设备已挂断通话。
142.第一通知的数据结构可以与前述的基于rtcp协议的接通通知的数据结构相同,例如可以用sdes类型的rtcp包中的cname字段或priv字段中的值标识第一设备已挂断通话,此处不再赘述。
143.其中,第一私有协议可以为rtcp协议。
144.本实施例中,第一设备向第二设备在发送电话挂断通知之后立即发送基于第一私有协议的第一通知,在网络异常情况下,可以使挂断通话设备的对端设备快速挂断通话,缩短对端设备的等待时长,从而提升用户体验。
145.s1004、第一设备接收第二设备针对第一通知返回的基于第一私有协议的第四确认消息,确认与第二设备之间的语音通话已挂断,第四确认消息是第二设备接收第一通知、根据第一通知将本地通话状态调整为已挂断后发出的。
146.本技术实施例还提供一种语音通话取消方法。
147.图11为示例性示出的语音通话取消过程的一种流程示意图。请参见图11,本技术实施例中,语音通话挂断过程可以包括如下步骤:s1101、第一设备取消与第二设备的语音通话。
148.第一设备呼叫第二设备的过程中,主动取消与第二设备的语音通话。
149.s1102、第一设备向第二设备发送电话取消通知,并启动计时,电话取消通知用于指示第一设备已取消通话。
150.s1103、如果计时时间达到第一时长,第一设备未接收到第二设备针对电话取消通知返回的第五确认消息,向第二设备发送基于第一私有协议的第三通知,第三通知用于指示第一设备已取消通话。
151.第三通知的数据结构可以与前述的基于rtcp协议的接通通知的数据结构相同,例如可以用sdes类型的rtcp包中的cname字段或priv字段中的值标识第一设备已取消通话,此处不再赘述。第三通知也可以为204(app)类型的rtcp包。在这种情况下,可以使用204(app)类型的rtcp包中的自定义字段来标识第一设备已取消通话。
152.其中,第一私有协议可以为rtcp协议。
153.本步骤中的第三通知是通过语音通道qci1传输的。
154.s1104、第一设备接收第二设备针对第三通知返回的基于第一私有协议的第六确认消息,确认与第二设备之间的语音通话已取消,第六确认消息是第二设备接收第三通知、根据第三通知将本地通话状态调整为已取消后发出的。
155.通过本实施例,当网络异常,ims消息专用通道qci5不能传输电话取消通知的情况下,可以通过私有协议将电话取消的信息通过语音通道qci1传输到语音通话对端,使语音通话对端及时获知与其通话的另一端已取消通话的信息,从而及时将本端通话状态修改为已取消,避免出现主叫方取消语音通话,被叫方仍在振铃的情况,提升用户体验。
156.图12为示例性示出的语音通话取消过程的另一种流程示意图。请参见图12,本技术实施例中,语音通话挂断过程可以包括如下步骤:s1201、第一设备取消与第二设备的语音通话。
157.第一设备呼叫第二设备的过程中,主动取消与第二设备的语音通话。
158.s1202、第一设备向第二设备发送电话取消通知,电话取消通知用于指示第一设备已取消通话。
159.s1203、第一设备向第二设备发送基于第一私有协议的第三通知,第三通知用于指示第一设备已取消通话。
160.第三通知的数据结构可以与前述的基于rtcp协议的接通通知的数据结构相同,例如可以用sdes类型的rtcp包中的cname字段或priv字段中的值标识第一设备已取消通话,此处不再赘述。
161.其中,第一私有协议可以为rtcp协议。
162.本步骤中的第三通知是通过语音通道qci1传输的。
163.本实施例中,第一设备向第二设备在发送电话取消通知之后立即发送基于第一私有协议的第三通知,在网络异常情况下,可以使取消通话设备的对端设备快速取消通话,缩短对端设备的等待时长,从而提升用户体验。
164.s1204、第一设备接收第二设备针对第三通知返回的基于第一私有协议的第六确认消息,确认与第二设备之间的语音通话已取消,第六确认消息是第二设备接收第三通知、根据第三通知将本地通话状态调整为已取消后发出的。
165.本技术实施例还提供一种电子设备,该电子设备包括存储器和处理器,存储器与处理器耦合,存储器存储有程序指令,当程序指令由所述处理器执行时,使得电子设备前述
电子设备所执行的语音通话建立方法。
166.可以理解的是,电子设备为了实现上述功能,其包含了执行各个功能相应的硬件和/或软件模块。结合本文中所公开的实施例描述的各示例的算法步骤,本技术能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。本领域技术人员可以结合实施例对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术的范围。
167.本实施例还提供一种计算机存储介质,该计算机存储介质中存储有计算机指令,当该计算机指令在电子设备上运行时,使得电子设备执行上述相关方法步骤实现上述实施例中的语音通话建立方法。
168.本实施例还提供了一种计算机程序产品,当该计算机程序产品在计算机上运行时,使得计算机执行上述相关步骤,以实现上述实施例中的语音通话建立方法。
169.另外,本技术实施例还提供一种装置,这个装置具体可以是芯片,组件或模块,该装置可包括相连的处理器和存储器;其中,存储器用于存储计算机执行指令,当装置运行时,处理器可执行存储器存储的计算机执行指令,以使芯片执行上述各方法实施例中的语音通话建立方法。
170.其中,本实施例提供的电子设备、计算机存储介质、计算机程序产品或芯片均用于执行上文所提供的对应的方法,因此,其所能达到的有益效果可参考上文所提供的对应的方法中的有益效果,此处不再赘述。
171.通过以上实施方式的描述,所属领域的技术人员可以了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。
172.在本技术所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个装置,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
173.作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是一个物理单元或多个物理单元,即可以位于一个地方,或者也可以分布到多个不同地方。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
174.另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
175.本技术各个实施例的任意内容,以及同一实施例的任意内容,均可以自由组合。对上述内容的任意组合均在本技术的范围之内。
176.集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可
以存储在一个可读取存储介质中。基于这样的理解,本技术实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本技术各个实施例方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read only memory,rom)、随机存取存储器(random access memory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。
177.上面结合附图对本技术的实施例进行了描述,但是本技术并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本技术的启示下,在不脱离本技术宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本技术的保护之内。
178.结合本技术实施例公开内容所描述的方法或者算法的步骤可以硬件的方式来实现,也可以是由处理器执行软件指令的方式来实现。软件指令可以由相应的软件模块组成,软件模块可以被存放于随机存取存储器(random access memory,ram)、闪存、只读存储器(read only memory,rom)、可擦除可编程只读存储器(erasable programmable rom,eprom)、电可擦可编程只读存储器(electrically eprom,eeprom)、寄存器、硬盘、移动硬盘、只读光盘(cd-rom)或者本领域熟知的任何其它形式的存储介质中。一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于asic中。
179.本领域技术人员应该可以意识到,在上述一个或多个示例中,本技术实施例所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。计算机可读介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是通用或专用计算机能够存取的任何可用介质。
180.上面结合附图对本技术的实施例进行了描述,但是本技术并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本技术的启示下,在不脱离本技术宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本技术的保护之内。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献