CN116418784A - 一种基于电信网络的通信方法及装置 - Google Patents
一种基于电信网络的通信方法及装置 Download PDFInfo
- Publication number
- CN116418784A CN116418784A CN202111655332.XA CN202111655332A CN116418784A CN 116418784 A CN116418784 A CN 116418784A CN 202111655332 A CN202111655332 A CN 202111655332A CN 116418784 A CN116418784 A CN 116418784A
- Authority
- CN
- China
- Prior art keywords
- component
- terminal
- call server
- new call
- version information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 95
- 238000004891 communication Methods 0.000 title claims abstract description 70
- 230000004044 response Effects 0.000 claims description 74
- 238000012545 processing Methods 0.000 claims description 39
- 238000004590 computer program Methods 0.000 claims description 12
- 230000006870 function Effects 0.000 description 54
- 238000010586 diagram Methods 0.000 description 32
- 230000008569 process Effects 0.000 description 24
- 230000003993 interaction Effects 0.000 description 14
- 230000001419 dependent effect Effects 0.000 description 10
- 230000011664 signaling Effects 0.000 description 10
- 230000000977 initiatory effect Effects 0.000 description 8
- 238000007726 management method Methods 0.000 description 8
- 230000005540 biological transmission Effects 0.000 description 6
- 230000007246 mechanism Effects 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 4
- 230000001960 triggered effect Effects 0.000 description 4
- 238000012937 correction Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000013461 design Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000008713 feedback mechanism Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- JEIPFZHSYJVQDO-UHFFFAOYSA-N iron(III) oxide Inorganic materials O=[Fe]O[Fe]=O JEIPFZHSYJVQDO-UHFFFAOYSA-N 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 238000012913 prioritisation Methods 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000002466 solution-enhanced dispersion by supercritical fluid Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/10—Architectures or entities
- H04L65/1016—IP multimedia subsystem [IMS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1074—Peer-to-peer [P2P] networks for supporting data block transmission mechanisms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1074—Peer-to-peer [P2P] networks for supporting data block transmission mechanisms
- H04L67/1078—Resource delivery mechanisms
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mobile Radio Communication Systems (AREA)
- Telephonic Communication Services (AREA)
Abstract
一种基于电信网络的通信方法及装置,应用于通信技术领域。包括:第一终端向新通话服务器发送引导页面获取请求;所述第一终端接收来自于所述新通话服务器的引导页面,所述引导页面携带组件的下载地址,所述组件用于实现IMS业务;所述第一终端根据所述组件的下载地址从所述新通话服务器下载所述组件,并加载所述组件。
Description
技术领域
本申请涉及通信技术领域,尤其涉及一种基于电信网络的通信方法及装置。
背景技术
IP多媒体子系统(IP multimedia subsystem,IMS)是一种全新的多媒体业务形式,它能够满足终端客户更新颖、更多样化的多媒体业务需求。IMS采用会话发起协议(session initiation protocol,SIP)作为主要的信令协议,使得运营商可以为用户提供端到端的全IP的多媒体业务。SIP采用会话描述协议(session description protocol,SDP)与提议/应答(offer/answer)机制完成会话各参与方的媒体协商,包括音视频编解码、主机地址、网络传输协议等的协商。
为了推动IMS业务的发展,除了基本的呼叫业务,需要大力拓展新的IMS业务(可称为IMS新媒体业务),比如基于IMS的屏幕共享通话、目标跟踪通话、趣味视频通话等。目前为了支持IMS新媒体业务,需要对终端进行升级更新,不同的IMS新媒体业务可能需要对终端进行不同的更新,比如当前终端无法支持IMS通话下新的编解码类型、不支持IMS多方视频通话下行多流转发等,均需要对终端进行升级以支持这些功能,这不利于IMS新媒体业务的拓展和应用。
发明内容
本申请实施例提供一种基于电信网络的通信方法及装置,用以通过组件形式实现IMS业务的解耦。
第一方面,提供一种基于电信网络的通信方法,包括:第一终端向新通话服务器发送引导页面获取请求;所述第一终端接收来自于所述新通话服务器的引导页面,所述引导页面携带组件的下载地址,所述组件用于实现IMS业务;所述第一终端根据所述组件的下载地址从所述新通话服务器下载所述组件,并加载所述组件。
可选的,第一终端可以是IMS业务的主叫终端,也可以是被叫终端。
上述实现方式中,新通话服务器将IMS业务的组件的相关信息(比如下载地址)携带在引导页面中发送给终端,使得终端可以加载该组件,用以实现IMS业务,实现了IMS业务与组件(可理解,组件即为IMS业务能力单元或功能单元)之间的解耦。由于该组件用于实现IMS业务,比如该组件提供IMS业务的新功能,因此终端可以基于该组件实现相应的IMS业务功能,尤其在终端请求IMS新媒体业务时,可以通过上述下发组件的方式,使得终端基于该组件提供的新功能实现该IMS新媒体业务,避免了终端为支持该IMS新媒体业务而进行系统升级的操作。
在一种可能的实现方式中,所述第一终端根据所述组件的下载地址从所述新通话服务器下载所述组件之后,所述方法还包括:所述第一终端向所述新通话服务器发送第一查询请求,所述第一查询请求用于请求查询第二终端是否对所述组件加载完成,所述第二终端为所述第一终端的通信对端;所述第一终端接收来自所述新通话服务器的第一查询响应后,与所述第二终端建立应用DC通道;其中,所述第一查询响应用于指示所述第二终端加载完成所述组件。
上述实现方式中,由于第一终端在确认第二终端加载完成相同组件后才与第二终端建立应用DC通道,因此可以保证在主被叫双方均加载完成组件后才尽力应用DC通道并进行IMS业务,可以防止主叫或被叫其中一方提前完成Wasm组件加载流程而另一方未完成而导致应用DC通道创建失败的情况,保证主被叫顺利进行IMS业务。
在一种可能的实现方式中,所述第一查询请求携带第一组件列表,所述第一组件列表中包括所述第一终端加载的组件的相关信息,所述相关信息包括组件标识;所述第一查询响应携带第二组件列表,所述第二组件列表中包括所述第二终端加载的组件的相关信息,所述相关信息包括组件标识。
在一种可能的实现方式中,所述第一查询请求和所述第一查询响应为(实时传输控制协议)RTCP消息。
在一种可能的实现方式中,所述引导页面还携带所述组件的版本信息;所述第一终端根据所述组件的下载地址从所述新通话服务器下载所述组件之后,所述方法还包括:所述第一终端缓存所述组件以及所述组件的版本信息。
在一种可能的实现方式中,所述第一终端缓存所述组件以及所述组件的版本信息之后,方法还包括:所述第一终端向所述新通话服务器发送引导页面获取请求;所述第一终端接收来自于所述新通话服务器的引导页面,所述引导页面携带组件的下载地址和版本信息;所述第一终端将所述引导页面携带的组件的版本信息,与所述第一终端缓存的所述组件的版本信息进行比较;若所述引导页面携带的组件的版本信息,与所述第一终端存储的所述组件的版本信息不同,则所述第一终端根据所述组件的下载地址从所述新通话服务器下载对应的组件,根据下载到的组件更新缓存的组件并更新组件的版本信息;否则,所述第一终端加载所述第一终端缓存的所述组件。
上述实现方式中,第一终端可将从新通话服务器下载的组件及其版本信息进行缓存,当再次接收到引导页面后,可将该引导页面中携带的组件的版本信息,与该终端缓存的相应组件的版本信息进行比较,在比较结果为相同的情况下,无需从新通话服务器下载组件,而是直接加载该终端缓存的组件,从而可以降低时延,提高性能。
在一种可能的实现方式中,所述终端加载所述第一终端缓存的所述组件之后,所述方法还包括:所述第一终端向所述新通话服务器发送第二查询请求,所述第二查询请求用于请求查询第二终端加载的组件的版本信息,所述第二终端为所述第一终端的通信对端;所述第一终端接收来自于所述新通话服务器的第二查询响应,所述第二查询响应携带所述第二终端加载的组件的版本信息;若所述第一终端根据所述第二终端加载的组件的版本信息,判断所述第一终端加载的组件与所述第二终端加载的组件不兼容,则所述第一终端从所述新通话服务器下载与所述第二终端加载的组件相兼容的组件。
在一种可能的实现方式中,所述第二查询响应还携带所述第二终端加载的组件的下载地址;所述第一终端从所述新通话服务器下载与所述第二终端加载的组件相兼容的组件,包括:所述第一终端根据所述第二查询响应携带的组件的下载地址从所述新通话服务器下载对应的组件。
上述实现方式中,第一终端和第二终端通过新通话服务器交互第二查询请求和第二查询响应,可以使第一终端确定第一终端加载的组件是否与第二终端加载的组件兼容,若不兼容,则第一终端根据第二查询响应中包含的第二终端加载的组件的下载地址,从新通话服务器下载相应的组件,从而可以保证第一终端和第二终端加载的组件兼容,进而可以保证IMS业务顺利执行。
在一种可能的实现方式中,所述第二查询请求携带第三组件列表,所述第三组件列表中包括所述第一终端加载的组件的相关信息,所述相关信息包括组件标识和组件版本信息;所述第二查询响应携带第四组件列表,所述第四组件列表中包括所述第二终端加载的组件的相关信息,所述相关信息包括组件标识、组件版本信息和下载地址。
在一种可能的实现方式中,所述第二查询请求和所述第二查询响应为RTCP消息。
在一种可能的实现方式中,所述组件由WebAssembly程序代码实现。
第二方面,提供一种基于电信网络的通信方法,包括:新通话服务器接收来自于终端的引导页面获取请求;所述新通话服务器根据所述引导页面获取请求,向所述终端发送引导页面,所述引导页面携带组件的下载地址,所述组件用于实现IMS业务;所述新通话服务器接收来自于所述终端的组件下载请求,并根据所述组件下载请求将所述组件发送给所述终端。
上述实现方式中,新通话服务器将IMS业务的组件的相关信息(比如下载地址)携带在引导页面中发送给终端,使得终端可以加载该组件,用以实现IMS业务,实现了IMS业务与组件(可理解,组件即为IMS业务能力单元或功能单元)之间的解耦。由于该组件用于实现IMS业务,比如该组件提供IMS业务的新功能,因此终端可以基于该组件实现相应的IMS业务功能,尤其在终端请求IMS新媒体业务时,可以通过上述下发组件的方式,使得终端基于该组件提供的新功能实现该IMS新媒体业务,避免了终端为支持该IMS新媒体业务而进行系统升级的操作。
在一种可能的实现方式中,所述引导页面还携带所述组件的版本信息。
在一种可能的实现方式中,所述新通话服务器根据所述引导页面获取请求,向所述终端发送引导页面之前,所述方法还包括:所述新通话服务器根据所述终端请求的IMS业务类型,确定与所述IMS业务类型对应的组件。
第三方面,提供一种终端,包括:发送模块,用于向新通话服务器发送引导页面获取请求;接收模块,用于接收来自于所述新通话服务器的引导页面,所述引导页面携带组件的下载地址,所述组件用于实现IMS业务;处理模块,用于根据所述组件的下载地址从所述新通话服务器下载所述组件,并加载所述组件。
第四方面,提供一种新通话服务器,包括:接收模块,用于接收来自于终端的引导页面获取请求;发送模块,用于根据所述引导页面获取请求,向所述终端发送引导页面,所述引导页面携带组件的下载地址,所述组件用于实现IMS业务;所述接收模块还用于,接收来自于所述终端的组件下载请求;所述发送模块还用于,根据所述组件下载请求将所述组件发送给所述终端。
在一种可能的实现方式中,所述引导页面还携带所述组件的版本信息。
在一种可能的实现方式中,还包括处理模块;所述处理模块用于:在根据所述引导页面获取请求向所述终端发送引导页面之前,根据所述终端请求的IMS业务类型,确定与所述IMS业务类型对应的组件。
第五方面,提供一种通信装置,包括:一个或多个处理器;其中,当一个或多个计算机程序的指令被所述一个或多个处理器执行时,使得所述通信装置执行如上述第一方面中任一项所述的方法,或者如上述第二方面中任一项所述的方法。
第六方面,提供一种计算机可读存储介质,所述计算机可读存储介质包括计算机程序,当计算机程序在计算设备上运行时,使得所述计算设备执行如上述第一方面中任一项所述的方法,或者如上述第二方面中任一项所述的方法。
第七方面,提供一种芯片,所述芯片与存储器耦合,用于读取并执行所述存储器中存储的程序指令,以实现如上述第一方面中任一项所述的方法,或者如上述第二方面中任一项所述的方法。
第八方面,提供一种计算机程序产品,所述计算机程序产品在被计算机调用时,使得所述计算机执行如上述第一方面中任一项所述的方法,或者如上述第二方面中任一项所述的方法。
以上第三方面到第八方面的有益效果,请参见第一方面或第二方面的有益效果,不重复赘述。
附图说明
图1为本申请实施例中的一种Android Telephony框架示意图;
图2为本申请实施例中的一种会话创建/修改请求和返回消息携带的SDP参数的示意图;
图3为本申请实施例中的一种RTCP APP类型包格式示意图;
图4a为本申请实施例中的一种RTCP消息中的Subtype字段示意图;
图4b为本申请实施例中的一种RTCP消息中的application-dependent data域示意图;
图5为本申请实施例中的一种RTCP消息中的application-dependent data域中MCPTT用户的MCPTT ID列表示意图;
图6为本申请实施例提供的一种通信系统架构示意图;
图7为本申请实施例提供的一种组件管理的系统架构示意图;
图8为本申请实施例提供的基于电信网络的通信流程示意图;
图9为本申请实施例提供的一种实现IMS业务的信令交互示意图;
图10为本申请实施例中的一种引导页面示意图;
图11为本申请实施例中的引导DC通道建立过程的信令交互示意图;
图12为本申请实施例提供的一种实现IMS业务的信令交互示意图;
图13a为本申请实施例中RTCP消息中的User ID域编码格式示意图;
图13b为本申请实施例中RTCP消息中的List of downloaded Wasms域编码格式示意图;
图13c为本申请实施例中RTCP消息中的List of Wasms ID&version域编码格式示意图;
图14为本申请实施例中RTCP查询请求消息格式示意图;
图15为本申请实施例中RTCP查询响应消息格式示意图;
图16为本申请实施例提供的Wasm组件缓存机制流程示意图;
图17为本申请实施例提供的Wasm组件更新流程示意图;
图18为本申请实施例提供的一种实现IMS业务的信令交互示意图;
图19为本申请实施例中用于查询Wasm组件版本号的RTCP查询请求消息格式示意图;
图20为本申请实施例中用于反馈Wasm组件版本号的RTCP查询响应消息格式示意图;
图21为本申请实施例提供的终端的结构示意图;
图22为本申请实施例提供的新通话服务器的结构示意图;
图23、图24分别为本申请实施例提供的通信装置的结构示意图。
具体实施方式
本申请实施例提供一种基于电信网络的通信方法及装置,采用本申请实施例,网络侧可为终端提供用于支持IMS业务的组件,终端在请求IMS业务时,可从网络侧获取相应的组件以进行该IMS业务,可以避免终端为支持该IMS业务而进行系统更新或升级。该IMS业务可以包括传统的IMS业务,比如音视频通话、长期演进语音承载(voice over long-termevolution,VoLTE)通话等,也可以包括IMS新媒体业务,比如屏幕共享通话、目标跟踪通话、趣味视频通话等。本申请实施例对IMS业务类型不做限制。
下面首先介绍本申请实施例涉及的一些技术以及技术术语。
(1)VoLTE。
VoLTE是基于IMS的语音业务。它是运营商基于4G网络,通过IP传输技术,实现数据、语音、视频,以及短消息/彩信业务的统一承载。当前和/>(12.2及以上版本)系统均支持VoLTE通话。以/>为例,VoLTE通话可基于Android Telephony实现。
系统是一个基于Linux Kernel的分层智能终端操作系统,AndroidTelephony作为/>系统的核心模块,为终端提供了基础的通信能力。AndroidTelephony涉及的框架结构如图1所示。Android Telephony的业务应用跨越了应用处理器(application processor,AP)和基带处理器(baseband processor,BP),/>系统在AP上运行,而Telephony运行在Linux Kernel之上的用户空间(User Space)。AndroidTelephony采用了分层结构的设计,共跨越了三层:Java应用层(Java applications)、Java框架层(Java frameworks)和用户库层(User Libraries),与/>操作系统整体分层结构保持一致。BP软件在BP上运行,主要负责无线通信能力处理。
(2)JavaScript(简称JS)。
JS是一种具有函数优先的轻量级、解释型或即时编译型的编程语言。JS作为开发Web页面的脚本语言,可以用来在网页中添加一些动态效果与交互功能,在Web开发领域有着重要的地位。JS作为一种高级的解释型语言,它不进行预编译,而是使用解释器。
(3)WebAssembly(简称Wasm)。
Wasm是一种高效的、低级别的编程语言。它是一种使用非JS代码、能够使用JS以外的语言编写程序,然后将其编译成Wasm,进而生成一个加载和执行速度非常快的Web应用程序。这些代码可以是C、C++或Rust等,它们会被编译进浏览器,在CPU上以接近原生的速度运行。这些代码的形式是二进制文件,可以直接在JS中将它们当作模块来使用。与JS需要解释执行不同的是,Wasm字节码和底层机器码很相似,可快速装载运行,而且文件体积小,因此性能相对于JS解释执行能够更快的加载实例化,减少运行等待时间。Wasm相比于JS兼容性问题少。Wasm属于底层的字节码规范,制订好后很少变动,即使以后发生变化,也只需在从高级语言编译成字节码过程中做兼容。
当前,主流浏览器均已经支持Wasm。Wasm能让Web应用具有更高的性能。
(4)引导数据通道(bootstrap data channels)。
引导DC(data channels)通道是协议3GPP TS26.114下定义的用于下发引导页面给终端的DC通道。根据协议3GPP TS26.114,终端发起DC通话的过程中,终端发送的会话创建请求、会话修改请求和网络侧返回给终端的返回消息中携带的SDP参数,可如图2所示。图2的(a)部分示出了会话创建/修改请求(SDP offer)中携带的参数,图2的(b)部分示出了返回消息(SDP answer)中携带的参数。协议3GPP TS26.114下定义的DC通道,可传输IMS媒体通话的媒体数据,为本申请实施例中实现基于WebAssembly的IMS媒体解耦奠定了基础。
(5)应用DC通道(application data channels)。
协议3GPP TS26.114下定义了用于媒体数据(比如新媒体数据)的DC通道。
(6)实时传输控制协议(RTCP)以及消息格式。
Real-time Transport Control Protocol或RTP Control Protocol或简写RTCP)是实时传输协议(RTP)的一个姐妹协议。RTCP的主要功能是为应用程序提供会话质量或者广播性能质量的信息。每个RTCP信息包不封装声音数据或者电视数据,而是封装发送端和/或接收端的统计报表等反馈信息。这些反馈信息包括发送的信息包数目、丢失的信息包数目和信息包的抖动等情况,这些反馈信息反映了当前的网络状况。RTCP规格没有指定应用程序应该使用这些反馈信息做什么处理,这完全取决于应用程序开发人员。例如,发送端可以根据反馈信息来调整传输速率,接收端可以根据反馈信息判断问题是本地的、区域性的还是全球性的,网络管理员也可以使用RTCP信息包中的反馈信息来评估网络用于多目标广播的性能。
根据所携带的控制信息不同,RTCP信息包可分为RR(接收者报告包)、SR(源报告包)、SEDS(源描述包)、BYE(离开申明)和APP(Application-Defined RTCP Packet,RTCPAPP类型包)五类。其中,RTCP APP类型包用于开发新应用和新功能时的实验性用途,无需数据包类型值注册。
可选的,本申请实施例可基于RTCP APP类型自定义本申请实施例中涉及的RTCP消息,用于包括主被叫状态同步和Wasm组件版本兼容。RTCP APP类型包格式可如图3所示。
其中,参数解释如下:
V:标识RTCP包的版本;
P:补丁,常设为0;
Subtype:可以用作子类型,以允许在一个唯一名称下定义一组APP包,或用于任何依赖于应用程序的数据;
packet type(PT):标识RTCP包类型,APP类型PT=204;
length:APP包长度,不包含RTCP头的32个字节;
SSRC/CSRC:同步源标识符;
name:自定义APP包集的名称,使其相对于此应用程序可能接收的其他APP数据包是唯一的。应用程序创建者可以选择使用应用程序名称,然后将子类型值分配给希望为应用程序定义新数据包类型的其他方。或者,建议其他方根据他们所代表的实体选择名称,然后在该实体内协调名称的使用。名称被解释为4个ASCII字符的序列,大写和小写字符被视为不同的字符;
application-dependent data:包含零个或多个特定于应用程序的数据字段;
在协议3GPP TS24.380中,name字段(ASCII)定义了MCPT(mission criticalpush-to-talk,关键任务网络)、MCPC(mission critical pre-established sessioncontrol,关键任务预先建立的会话控制)、MCMC(mission critical MBMS subchannelcontrol,关键任务MBMS子信道控制)和MCNC。以MCPT的floor control protocol为例,其定义的Subtype字段可如图4a所示的表1,定义的application-dependent data域可如图4b所示的表2。
以Subtype为Floor Request(00000)为例,当域名(field name)为授权用户列表(List of Granted Users)时,application-dependent data的字段包含允许在多话者场景中发送媒体的MCPTT用户的MCPTT ID列表,如图5所示。
为了使本申请实施例的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施例作进一步的详细描述。应理解,本申请的说明书实施例和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元。方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
图6示例性示出了本申请实施例提供的一种可能的通信系统架构示意图。通信系统中包括应用服务器(application server,AS)、呼叫会话控制功能(call sessioncontrol function,CSCF)、会话边界控制器(session border control,SBC)以及新通话服务器。第一终端和第二终端为不同的终端,比如,第一终端可以作为主叫与作为被叫的第二终端之间进行IMS业务。
AS是在IMS系统中位于最上层的应用层设备,提供基本业务和补充业务、多媒体会议、融合通信、短消息网关、标准话务台等业务。AS可以为不同终端的用户维护所能使用的IMS业务应用。应用服务器是完成IMS业务的重要网元,提供包括语音和视频呼叫、消息业务和视频图像共享等,还可以支持固定和移动宽带接入。本申请实施例中,可采用符合多媒体电话标准(multiMedia telephony,MMTel)的应用服务器。MMTel是一种基于IMS的多媒体电话业务标准。应用服务器可以支持对通信双方运行IMS业务产生的媒体数据进行处理,比如逻辑运算、画面渲染、虚拟景象合成等操作,本申请实施例对此不作限制。
SBC位于IMS网络的边界,用来控制SIP会话,主要用于将终端接入到IMS网络和媒体资源处理。
CSCF是IMS网络的呼叫控制中心,主要负责处理多媒体呼叫(包括DC通话)会话过程中的信令控制,是在IP传输平台上实现用户接入,鉴权、会话路由和业务触发等功能。CSCF可以包括服务-CSCF(serving-CSCF,S-CSCF)、代理-CSCF(proxy-CSCF,P-CSCF)、查询-CSCF(Interrogating-CSCF,I-CSCF)中的一个或多个。
IMS网络中还可以包括归属签约用户服务器(home subscriber server,HSS)或者其它网元(HSS未在图中示出)。HSS用于记录用户的签约数据(比如用户信息、业务数据)。
新通话服务器,也可以称为通话服务器,或者新通话平台,或者称为组件管理器,或者采用其它的名称,本申请实施例对此不作具体限定。后续描述时,以称为新通话服务器为例描述。新通话服务器是完成IMS业务(比如IMS新媒体业务)的重要网元,可以提供DC通话会话控制请求的转发、下发引导页面(引导页面是指呼通媒体通话(比如DC通话)进入的媒体页面)、向终端提供组件下载服务以及组件管理等功能。新通话服务器可以包括一个或者多个处理器,或者通过一个或者多个计算机来实现,比如超多核计算机、大型的分布式计算机、硬件资源池化的集群计算机等。
本申请实施例中,新通话服务器提供的组件也可以称为Wasm组件,或者称为功能单元,或者称为IMS业务功能单元,或者称为新业务功能单元,或者称为插件,或者采用其它的名称,本申请实施例对此不作限制。后续描述时,以称为组件为例描述,在部分实施例中称为Wasm组件。本申请实施例中,组件可以提供基础的IMS业务能力,比如包括音频、视频、服务质量(quality of service,QoS)能力等。QoS是指一个网络能够利用各种基础技术,为指定的网络通信提供更好的服务能力,是网络的一种安全机制,是用来解决网络延迟和阻塞等问题的一种技术。基于组件,可解耦终端侧的媒体能力。
Wasm是WebAssembly的简称,是运行在Web平台上的Assembly。Assembly指汇编代码,是直接操作CPU的指令代码,比如x86指令集上的汇编代码有指令集、寄存器、栈等设计,CPU根据汇编代码的指导进行运算。汇编代码相当于CPU执行的机器码能够转换成的人类适合读的一种语言。
终端可以建立IMS媒体通话的呼叫,采集音视频数据和DC数据,通过通信系统运行通话等应用以进行IMS业务。终端可以是配置有显示屏、具有音视频通话功能的设备,比如,终端可以是可穿戴设备(例如电子手表),终端还可以是手机、平板电脑等设备。本申请实施例对终端的具体形式不作特殊限制。在一些实施例中,不同的终端可以属于不同的运营商网络。
需要说明的是,为不同终端(比如图1中的第一终端和第二终端)提供服务的IMS核心网元可以不同,这与终端所在的位置相关,或者与终端所属的运营商有关。作为一种示例,本申请实施例涉及的网元重点不在于媒体控制网元,因此省略P-CSCF的流程,CSCF和AS可合并设置为CSCF/AS(简称为应用会话控制网元或CSCF),信令交互过程由该网元来控制。
应理解,上述的说明并不构成对本申请实施例的系统架构图的限定,本申请实施例的系统架构图包括但不限于图1所示的系统架构。需要说明的是,新通话服务器可以作为独立网元,也可以由已有业务中的网元来实现。
基于上述图1所示的通信系统架构,如下以第一终端作为主叫与作为被叫的第二终端进行IMS业务为例,第一终端可通过该第一终端侧的SBC1向CSCF发起会话请求,通过CSCF与新通话服务器之间创建引导DC通道,并触发新通话服务器与第二终端之间建立引导DC通道。新通话服务器可以基于与第一终端和第二终端之间的引导DC通道,将Wasm组件下载地址发送给终端,使得第一终端和第二终端可以根据Wasm组件下载地址从新通话服务器下载Wasm组件。第一终端和第二终端可以基于Wasm组件实现IMS业务,IMS业务数据(比如音视频数据)可以通过第一终端和第二终端之间建立的应用DC通道进行传输。
图7示例性示出了本申请实施例提供的一种组件管理的系统架构示意图。如图所示,组件管理系统架构包括终端侧和网络侧。在网络侧,组件管理的相关功能(比如包括组件下载管理功能)由新通话服务器提供。新通话服务器中可配置一个或多个组件,可根据终端发起的IMS业务的类型,将相应的组件的下载地址通过DC通道发送给终端,并可根据终端的下载请求,为该终端提供相应组件的下载服务。在终端侧,组件管理的相关功能(比如包括组件加载管理功能)由终端实现。终端可通过与新通话服务器之间的DC通道从新通话服务器下载组件,并将组件进行加载,以实现IMS业务。进一步的,基于终端提供的组件管理功能,还可以实现对下载的组件进行缓存、管理组件的版本、更新组件等功能。
本申请实施例中,新通话服务器提供的组件可以提供IMS业务(比如包括IMS新媒体业务)所需的功能或能力,用于实现IMS业务。本申请实施例中,将新媒体能力编译成组件,终端可以基于请求的IMS业务的类型,按需加载组件以实现解耦的新媒体能力。在一些实施例中,组件可由JavaScript编程语言和WebAssembly编程语言实现,组件中可包括.Wasm文件和.js文件。
一种IMS业务可能具有一种或多种功能,因此一个IMS业务类型可能对应一个或多个组件,即可能需要一个或多个组件提供的功能来实现该IMS业务。不同的IMS业务可共享相同的组件,比如,目标跟踪通话和趣味视频通话均需具备新的编解码能力,因此这两种业务均需实现该能力的Wasm组件。本申请实施例中,通过将IMS业务(尤其是IMS新媒体业务)所需的基本功能(或能力)组装为组件的形式,使得需要具备相同功能的IMS业务可以共享相应的组件,相比于功能与业务的紧耦合关系,采用本申请实施例可以实现功能与业务之间的解耦,从而为业务更新和升级提供了技术保证。
图8示例性示出了本申请实施例提供的通信方法的流程示意图。如图所示,该流程可包括以下步骤:
801:第一终端向新通话服务器发送引导页面获取请求。
802:新通话服务器根据该引导页面获取请求,向第一终端发送引导页面,该引导页面携带用于实现IMS业务的组件的下载地址。
803:第一终端根据组件下载地址,向新通话服务器发送组件下载请求,以请求下载相应组件。
804:新通话服务器根据该组件下载请求,将相应组件发送给第一终端。第一终端从新通话服务器接收到组件后可进行加载。
此后,第一终端和第二终端之间进行IMS业务能力信息协商,该过程中,第一终端将其SDP信息发送给第二终端,第二终端将其SDP信息发送给第一终端。第一终端发送的SDP信息中包括第一终端支持的IMS业务的能力信息,比如包括第一终端加载的组件中功能的版本信息(比如FEC(前向纠错编码)功能的版本),第二终端发送的SDP信息中包括第二终端支持的IMS业务的能力信息,比如包括第二终端加载的组件中功能的版本信息(比如FEC功能的版本),从而建立第一终端和第二终端之间的应用DC通道,以进行IMS业务数据传输。可选的,所述版本信息可包括版本号。
在一些实施例中,上述流程中的第一终端为主叫终端。作为主叫的第一终端触发IMS业务后请求与新通话服务器建立引导DC通道,在与新通话服务器建立引导DC通道后,通过该引导DC通道向新通话服务器发送引导页面获取请求,并接收新通话服务器下发的引导页面。在另一些实施例中,上述流程中的第一终端为被叫终端。新通话服务器根据主叫终端的请求与主叫终端建立引导DC通道,并与被叫终端建立DC引导通道后,作为被叫的第一终端通过该引导DC通道向新通话服务器发送引导页面获取请求,并接收新通话服务器下发的引导页面。主叫终端和被叫终端之间协商建立引导DC通道、应用DC通道,以实现IMS业务的过程,可参见下文中的图9。
上述实现方式中,新通话服务器将IMS业务的组件的下载地址携带在引导页面中发送给终端,使得终端可以加载该组件,用以实现IMS业务,实现了IMS业务与组件之间的解耦。由于该组件用于实现IMS业务,比如该组件提供IMS业务的新功能,因此终端可以基于该组件实现相应的IMS业务功能,尤其在终端请求IMS新媒体业务时,可以通过上述下发组件的方式,提供了动态加载组件的功能,使得终端基于该组件提供的新功能实现该IMS新媒体业务,避免了终端为支持该IMS新媒体业务而进行系统升级的操作。
在一些实施例中,第一终端根据组件的下载地址从新通话服务器下载组件之后,第一终端还可以向新通话服务器发送第一查询请求,以请求查询第二终端(即第一终端的通信对端,比如,若第一终端为主叫终端,则第二终端为被叫终端,或者,若第一终端为被叫终端,则第二终端为主叫终端)是否对组件加载完成。第二终端通过新通话服务器接收到该第一查询请求后,在对组件加载完成后向新通话服务器发送第一查询响应,以指示第二终端加载完成组件。第一终端接收来自新通话服务器的第一查询响应后,才与第二终端建立应用DC通道。由于第一终端在确认第二终端加载完成相同组件后才与第二终端建立应用DC通道,因此可以保证在主被叫双方均加载完成组件后才建立应用DC通道并进行IMS业务,可以防止主叫或被叫其中一方提前完成Wasm组件加载流程而另一方未完成而导致应用DC通道创建失败的情况,保证主被叫顺利进行IMS业务。
可选的,第一查询请求中可以携带第一组件列表,第一组件列表中包括第一终端加载的组件的相关信息,比如可以包括组件标识。第一查询响应中可以携带第二组件列表,第二组件列表中包括第二终端加载的组件的相关信息,比如可以包括组件标识。其中,组件标识用于唯一标识组件。可选的,第一查询请求和第一查询响应为RTCP消息,可以通过扩展RTCP消息格式实现该第一查询请求和第一查询响应。上述通过交互第一查询请求和第一查询响应的方式以保证主被叫之间状态同步的信令交互示意图,可参见下文中的图12。
在一些实施例中,引导页面还携带组件的版本信息。第一终端在从新通话服务器下载组件后可将其存储(比如缓存)在本地,示例性的,可以将组件及其标识和版本信息进行缓存。第一终端接收到引导页面后,可将引导页面携带的组件的版本信息,与第一终端存储的组件的版本信息进行比较,若该引导页面携带的组件的版本信息,与第一终端存储的该组件的版本信息不同,则第一终端根据该组件的下载地址从新通话服务器下载该组件。若引导页面携带的组件的版本信息,与第一终端存储的该组件的版本信息相同,则第一终端无需从新通话服务器下载组件,第一终端加载其所存储的该组件,从而可以省去下载组件的过程,降低时延,提高性能,更快捷地使用IMS媒体功能。终端根据组件的版本信息从新通话服务器下载组件或从本地加载组件以实现IMS业务的流程,可参见下文中的图16、图17。
可选的,终端加载其所存储的组件之后,还可以向新通话服务器发送第二查询请求,用以请求查询第二终端加载的组件的版本信息。第二终端接收新通话服务器转发来的第二查询请求后,在加载完成组件后向新通话服务器返回第二查询响应,其中携带第二终端加载的组件的标识以及该组件的下载地址。新通话服务器将该第二查询响应返回给第一终端。第一终端根据该第二查询响应中携带的第二终端加载的组件的版本信息,判断第一终端加载的组件与第二终端加载的组件是否兼容,若兼容,则继续执行后续步骤;若不兼容,则根据第二查询响应携带的组件的下载地址从新通话服务器下载对应的组件,从而保证第一终端和第二终端加载的组件兼容,进而保证IMS业务顺利进行。
可选的,第二查询请求中可携带第三组件列表,第三组件列表中包括第一终端加载的组件的相关信息,该相关信息可包括组件标识和组件版本信息。第二查询响应中可携带第四组件列表,第四组件列表中包括第二终端加载的组件的相关信息,该相关信息可包括组件标识、组件版本信息和下载地址。可选的,第二查询请求和第二查询响应为RTCP消息,可以通过扩展RTCP消息格式实现该第二查询请求和第二查询响应。上述通过交互第二查询请求和第二查询响应的方式以保证主被叫之间的组件兼容性的信令交互示意图,可参见下文中的图18。
图9示例性示出了本申请实施例提供的通信方法的流程示意图。该流程描述了UEA作为主叫发起IMS业务请求,与作为被叫的UE B进行通信的流程。该流程中涉及的用于实现IMS业务的组件以Wasm组件为例描述。通过该流程可实现主被叫之间的Wasm组件同步。
如图9所示,该流程可包括以下步骤:
步骤1:UE A上触发IMS业务(比如新媒体通话业务)。
示例性的,该步骤中,当用户选取被叫用户,并触发终端屏幕上的新媒体通话业务的应用程序图标后,该终端可发起该新媒体通话业务的请求,以请求与被叫用户进行该新媒体通话业务。
步骤2:UE A通过CSCF/AS与新通话服务器创建引导DC通道。该步骤的具体实现方式可参见本文中的图11。
步骤3:UE B通过CSCF/AS与新通话服务器创建引导DC通道。该步骤的具体实现方式可参见本文中的图11。
步骤4:UE A向新通话服务器发送引导页面获取请求,用以请求引导页面。
可选的,该请求中可携带UE A的用户ID。该用户ID为用户初始在新通话服务器注册的ID,用于区别于其他用户,识别是哪个用户向新通话服务器发起的请求,以及使新通话服务器确定应该向UE A发送哪个引导DC页面。
步骤5:UE B向新通话服务器发送引导页面获取请求,用以请求引导页面。
可选的,该请求中可携带UE B的用户ID。
步骤6:新通话服务器向UE A发送引导页面,其中可携带Wasm组件的下载地址。
可选的,新通话服务器可根据UE A请求的IMS业务类型,确定对应的Wasm组件,进而将该Wasm组件的下载地址通过引导页面发送给UE A。可选的,引导页面中可携带一个或多个Wasm组件的下载地址。
可选的,新通话服务器可以根据用户ID的不同,下发不同的引导页面。比如,不同运营商提供有不同的新媒体功能,根据用户所属的运营商的不同,可以向终端发送不同的引导页面;再比如,若不同用户使用过不同的新媒体功能,则新通话服务器可以为使用过不同新媒体功能的用户发送不同的引导页面。
示例性的,图10示出了一种本申请实施例提供的引导页面的示意图。如图所示,该引导页面中包括新媒体业务图标(1001,1002,1003),图标1001是远程协作业务应用的图标,图标1002是屏幕共享业务应用的图标,图标1003被触发后可显示更多类型的新媒体业务应用。
不同的Wasm组件有不同的下载地址,终端可根据不同的下载地址加载不同的Wasm组件,进而使用不同新媒体功能。可选的,Wasm组件的下载地址中的关键参数可包括:服务器端口号、用户ID、Wasm组件ID以及组件后缀名称(.wasm或.js),具体格式例如:
https://164.138.100.30:6868/download?userid=00000001&wasmid=000002&suffix=wasm。
步骤7:新通话服务器向UE B下发引导页面,其中可携带Wasm组件的下载地址。
该步骤的实现方式与步骤6基本相同。
步骤8:UE A根据Wasm组件的下载地址向新通话服务器请求下载Wasm组件。
步骤9:UE B根据Wasm组件的下载地址向新通话服务器请求下载Wasm组件。
步骤10:新通话服务器向UE A发送Wasm组件进行响应,UE A对该下载地址的Wasm组件进行加载。
步骤11:新通话服务器向UE B发送Wasm组件进行响应,UE B对该下载地址的Wasm组件进行加载。
步骤12:UE A页面脚本触发RE-INVITE请求。
步骤13:UE A向CSCF/AS发送RE-INVITE请求,其中携带UE A的SDP参数。
示例性的,该RE-INVITE请求中携带UE A的SDP参数,比如包括(m=application),带宽(b=AS:500)、SDP属性和对应stream ID及子协议(a=dcmap:0subprotocol="http")等参数,具体示例可如图2中的(a)所示,该SDP参数携带UE A支持的新媒体能力,指示UE A所支持的Wasm组件中功能的版本,比如传输优化组件中FEC(前向纠错编码)功能的版本等。
步骤14:CSCF/AS向UE B发送RE-INVITE请求,其中携带UE A的SDP参数。
步骤15:UE B向CSCF/AS返回200OK响应,其中携带UE B的SDP参数。
示例性的,该200OK响应中携带的UE B的SDP参数,比如包括(m=application),带宽(b=AS:500)、SDP属性和对应stream ID及子协议(a=dcmap:0subprotocol="http")等参数,具体示例可如图2中的(b)所示,该SDP参数携带UE B支持的新媒体能力,指示UE B所支持的Wasm组件中功能的版本,比如传输优化组件中FEC(前向纠错编码)功能的版本等。
步骤16:CSCF/AS向UE A返回200OK响应,其中携带UE B的SDP参数。
至此应用DC通道创建完成,UE A与UE B进行新媒体交互。根据以上流程,在IMS媒体解耦框架下,终端通过从新通话服务器获取对应新媒体功能的Wasm组件来实现新媒体功能。新通话服务器在下发引导页面时,携带Wasm组件的下载地址,以保证主被叫所下载的Wasm组件一致。同时在创建应用DC通道时,SDP携带新媒体能力,同步主被叫对新媒体Wasm组件所支持能力。
图11示例性示出了本申请实施例中的一种引导DC通道创建过程的信令交互示意图。
如图所示,该流程可包括:
步骤1:UE A向CSCF/AS发送创建会话请求或修改会话请求。
该步骤中,如果UE A与UE B之前存在音视频通话,则发送修改会话请求,否则发送创建会话请求。该请求中可携带UE A的SDP参数,比如包括带宽(b=AS:500)、SDP属性和对应stream ID及子协议(a=dcmap:0subprotocol="http")等参数,具体示例如图2中的(a)所示。
步骤2:CSCF/AS向新通话服务器发送DC通道请求消息,其中可携带UE A的SDP参数。
步骤3:新通话服务器返回DC通道响应消息给CSCF,其中可携带新通话服务器的SDP参数。
步骤4:CSCF向新通话服务器发送DC通道请求(与UE B)。
步骤5:新通话服务器返回DC通道响应消息给CSCF,其中可携带新通话服务器的SDP参数。
步骤6:CSCF向UE B发送创建会话请求或修改会话请求。
该步骤中,如果UE A与UE B之前存在音视频通话,则发送修改会话请求,否则发送创建会话请求,其中可携带新通话服务器的SDP参数。
步骤7:UE B返回200OK给CSCF,其中可携带UE B的SDP参数,比如包括带宽(b=AS:500)、SDP属性和对应stream ID及子协议(a=dcmap:0subprotocol="http")等参数,具体示例如图2中的(b)所示。
步骤8:CSCF向新通话服务器发送更新SDP请求,其中可携带UE B的SDP参数。
步骤9:CSCF转发200OK给UE A,其中可携带新通话服务器的SDP参数。
至此,UE A与新通话服务器之间的引导DC通道,以及UE B与新通话服务器的引导DC通道创建完成。
图12示例性示出了本申请实施例提供的通信方法的流程示意图。该流程描述了UEA作为主叫发起IMS业务请求,与作为被叫的UE B进行通信的流程。该流程中涉及的用于实现IMS业务的组件以Wasm组件为例描述。通过该流程可实现主被叫之间的状态同步。
如图12所示,该流程可包括以下步骤:
步骤1:UE A上触发IMS业务(比如新媒体通话)。
步骤2:UE A通过CSCF/AS与新通话服务器创建引导DC通道。该步骤的具体实现方式可参见本文中的图11。
步骤3:UE B通过CSCF/AS与新通话服务器创建引导DC通道。该步骤的具体实现方式可参见本文中的图11。
步骤4:UE A向新通话服务器发送引导页面获取请求,其中可携带UE A的用户ID。
步骤5:UE B向新通话服务器发送引导页面获取请求,其中可携带UE B的用户ID。
步骤6:新通话服务器向UE A下发引导页面,其中可携带Wasm组件的下载地址。该步骤的具体实现方式可参见图9中的相关步骤。
步骤7:新通话服务器向UE B下发引导页面,其中可携带Wasm组件的下载地址。该步骤的具体实现方式可参见图9中的相关步骤。
步骤8:UE A根据Wasm组件的下载地址向新通话服务器请求下载Wasm组件。
步骤9:UE B根据Wasm组件的下载地址向新通话服务器请求下载Wasm组件。
步骤10:新通话服务器向UE A下发Wasm组件进行响应。
步骤11:UE A加载完Wasm组件后,向新通话服务器发送RTCP查询请求,用以请求查询UE B的Wasm组件加载完成情况。
可选的,该RTCP查询请求可以由RTCP APP类型包扩展得到,该RTCP查询请求中可包含UE A下载的所有Wasm组件ID列表,以便UE B按照该列表中的Wasm组件ID检验每个Wasm组件是否加载完成。
本步骤之后还可能使用不同的RTCP消息进行信息交互,比如包括步骤15的RTCP查询响应,因此定义关于Wasm的RTCP类型,name字段定义为WASM(二进制01010111 0100000101010011 01001101,换成其他名字也可以),定义多种WASM数据域和多种Subtype。表3和表4示例性示出了几种可能的字段定义。
表3 WASM特定消息(WASM specific messages):
表4 WASM数据字段(WASM data fields)
表3中不同数据域的格式可如图13a、图13b、图13c所示,图中的“p”表示补丁位,比如可设置为0;“User ID length value”表示用户ID长度,不包括补丁p位;“List of WasmsID length”表示Wasms ID列表长度;“No of Wasm ID”表示Wasm组件的数量;“Wasm IDlength value”表示Wasm ID的长度,不包括补丁P位;“List of Wasms ID&versionlength”表示Wasms ID&version列表长度;“Wasm version length value”表示Wasm版本号的长度,不包括补丁P位;“Wasm version”表示Wasm组件版本号;其他字段可参见表4。
其中,UE A向UE B发送的RTCP消息(name=WASM,Subtype=Ready StatusRequest(00000))的具体格式可如图14所示。该消息中的关键参数包括Wasm组件的数量、Wasm组件ID的长度和Wasm组件的ID列表。因此,application-dependent data字段包括List of User ID域和List of Wasms ID域,具体格式可如图13a、图13b、图13c所示。
步骤12:新通话服务器转发该RTCP消息给UE B。
步骤13:UE B判断Wasm组件是否加载完成,若未加载完成则继续等待。
步骤14:新通话服务器向UE B发送Wasm组件进行响应,UE B对该下载地址的Wasm组件进行加载。
步骤15:UE B对Wasm组件加载完成后,向新通话服务器发送RTCP查询响应。
可选的,该RTCP消息(name=WASM,Subtype=Status Answer(00001))具体格式可如图15所示,其中,关键参数可包括Wasm组件的数量、Wasm组件ID的长度和Wasm组件的ID列表。因此,application-dependent data字段包括List of User ID域和List of Wasms ID域,具体格式见图13a、图13b、图13c。
步骤16:新通话服务器转发UE B的RTCP查询响应给UE A。
步骤17:UE A收到该RTCP查询响应后,UE A脚本触发RE-INVITE请求。
步骤18:UE A与UE B间协商创建应用DC通道,UE A与UE B进行新媒体交互。
以上仅以主叫终端发起RTCP查询为例进行描述,本申请实施例中,无论是主叫终端还是被叫终端,均可以在下载Wasm组件并在加载完成该Wasm组件后,向对端发送RTCP查询请求,以请求查询对端的Wasm组件加载情况。可选的,无论是主叫终端还是被叫终端在接收到对端发送的RTCP查询请求后,在加载完成Wasm组件后不会向对端发送RTCP查询请求,而是发送RTCP查询响应。
基于以上流程,在新媒体通话建立的过程中,在UE A完成Wasm组件加载后,通过RTCP消息及其反馈与UE B确认Wasm组件加载完成情况,从而保证双方均加载完Wasm组件后才发起建立应用DC通道的RE-INVTIE请求,保证主被叫顺利建立新媒体呼叫,防止主叫或被叫其中一方提前完成Wasm组件加载流程而另一方未完成而导致应用DC通道创建失败的情况发生。
图16示例性示出了本申请实施例提供的通信方法的流程示意图。该流程描述了UEA作为主叫发起IMS业务请求,与作为被叫的UE B进行通信的流程。该流程中涉及的用于实现IMS业务的组件以Wasm组件为例描述。通过该流程可实现Wasm组件的缓存机制以及基于缓存的Wasm组件进行组件加载。
如图16所示,该流程可包括以下步骤:
首次新媒体通话:
步骤1:UE A与新通话服务器建立引导DC通道。
步骤2:UE A向新通话服务器请求引导页面。
步骤3:新通话服务器向UE A下发引导页面,其中携带Wasm组件下载地址及其版本号。
不同的Wasm组件可能具有不同的版本号,版本号与Wasm组件ID存在对应关系,即可以理解的,版本号是某个Wasm组件(Wasm组件ID)的版本号。
步骤4:UE A根据Wasm组件的下载地址向新通话服务器请求下载Wasm组件。
步骤5:新通话服务器向UE A下发Wasm组件进行响应。
步骤6:UE A在本地缓存Wasm组件及其版本号。
二次新媒体通话:
步骤7:UE A与新通话服务器建立引导DC通道。
步骤8:UE A向新通话服务器请求引导页面。
步骤9:新通话服务器向UE A下发引导页面,其中可携带Wasm组件下载地址及其版本号。
步骤10:UE A加载本地缓存的Wasm组件,无需再通过新通话服务器下载Wasm组件。
该步骤中,UE A根据引导页面中携带的Wasm组件ID以及对应的版本号,与UE A本地缓存的相同Wasm组件ID对应的版本号进行比较,若两者相同,则无需从新通话服务器下载Wasm组件,而是直接加载本地缓存的Wasm组件;若两者不同(比如本地缓存的Wasm组件的版本较低),则需要从新通话服务器下载该组件。
需要说明的是,本流程中各步骤的具体实现方式可参见前述实施例中相关步骤的描述。
以上流程,基于Wasm组件缓存机制,当下载Wasm组件后,再次使用该新媒体功能时,可以省去对相应Wasm组件的下载过程,从而可以更快捷地使用新媒体功能,提高响应速度(比如响应速度可以达到毫秒级),进而可以提高用户对新媒体通话的使用体验。
图17示例性示出了本申请实施例提供的Wasm组件更新流程示意图。该流程描述了UE A作为主叫发起IMS业务请求,与作为被叫的UE B进行通信的流程。该流程中涉及的用于实现IMS业务的组件以Wasm组件为例描述。通过该流程可实现Wasm组件更新。
如图17所示,该流程可包括以下步骤:
版本更新离线过程:
步骤1:向新通话服务器上传新版本Wasm组件。
步骤2:新通话服务器更新Wasm组件版本(即更新Wasm组件),同时更新版本号。
新媒体通话过程:
步骤1:UE A与新通话服务器建立引导DC通道。
步骤2:UE A向新通话服务器请求引导页面。
步骤3:新通话服务器向UE A下发引导页面,其中可携带Wasm组件下载地址及其版本号。
步骤4:UE A查询本地缓存的Wasm组件及其版本号对应情况。
步骤5:UE A判断本地缓存的Wasm组件的版本过低(比如低于引导页面中携带的相应Wasm组件的版本号),UE A确认需要更新Wasm组件。
步骤6:UE A向新通话服务器请求下载新版本的Wasm组件。
步骤7:新通话服务器向UE A下发新版本Wasm组件。
步骤8:UE A对本地缓存的Wasm组件进行更新,进一步更新该Wasm组件的版本号。
需要说明的是,本流程中各步骤的具体实现方式可参见前述实施例中相关步骤的描述。
以上流程,当新通话服务器上的Wasm组件更新后,在UE A发起新通话业务后,可以及时对本地缓存的Wasm组件进行更新并可进一步更新该Wasm组件的版本号。
图18示例性示出了本申请实施例提供的通信方法的流程示意图。该流程描述了UEA作为主叫发起IMS业务请求,与作为被叫的UE B进行通信的流程。该流程中涉及的用于实现IMS业务的组件以Wasm组件为例描述。通过该流程可实现主被叫的Wasm组件兼容。
如图18所示,该流程可包括以下步骤:
步骤1:UE A上触发IMS业务(比如新媒体通话)。
步骤2:UE A通过CSCF/AS与新通话服务器创建引导DC通道。
步骤3:UE B通过CSCF/AS与新通话服务器创建引导DC通道。
步骤4:UE A向新通话服务器发送下发引导页面请求,其中可携带UE A的用户ID。
步骤5:UE B向新通话服务器发送下发引导页面请求,其中可携带UE B的用户ID。
步骤6:新通话服务器向UE A下发引导页面,其中可携带Wasm组件的下载地址以及版本号。
步骤7:新通话服务器向UE B下发引导页面,其中可携带Wasm组件的下载地址以及版本号。
步骤8:UE A加载本地缓存的Wasm组件。
步骤9:UE B根据Wasm组件的下载地址向新通话服务器请求下载Wasm组件,或者UEB加载本地缓存的Wasm组件。
步骤10:UE A向新通话服务器发送RTCP查询请求,以请求查询UE B的Wasm组件版本号。
示例性的,该RTCP消息(name=WASM,Subtype=Version Request(00010))格式可如图19所示。其中,关键参数可包括Wasm组件的数量、Wasm组件的ID列表。因此,application-dependent data字段包括List of User ID域和List of Wasms ID域,具体格式可如图13a、图13b、图13c所示。
步骤11:新通话服务器转发该RTCP查询请求给UE B。
步骤12:UE B向新通话服务器反馈RTCP查询响应,其中可携带UE B当前Wasm组件版本号。进一步的,如果在步骤9中UE B通过从新通话服务器下载得到Wasm组件,则步骤12中的RTCP查询响应中还可携带该Wasm组件的下载地址。
示例性的,该RTCP消息(name=WASM,Subtype=Version Answer(00011))格式可如图20所示。其中,关键参数可包括Wasm组件的数量、Wasm组件的ID和版本号列表。因此,application-dependent data字段包括List of User ID域和List of Wasms ID&version域,具体格式可如图13a、图13b、图13c所示。
步骤13:新通话服务器转发UE B的RTCP查询响应给UE A。
步骤14:UE A判断与UE B的版本兼容性。
示例性的,若UE A当前加载的Wasm组件的版本相较于UE B反馈的Wasm组件的版本过低或者过高,则UE A判断与UE B的版本不兼容。如果UE A判断与UE B的版本不兼容,则执行后续步骤15-16,否则执行后续步骤17。
步骤15:UE A向新通话服务器请求下载Wasm组件。
该步骤中,UE A可根据UE B反馈的Wasm组件的版本号,向新通话服务器请求下载相应版本的Wasm组件。如果UE A接收到的RTCP查询响应中携带有UE B加载的Wasm组件的下载地址,则UE A可根据UE B反馈的Wasm组件的下载地址,向新通话服务器请求下载Wasm组件。
步骤16:新通话服务器下发新的版本Wasm组件给UE A。
步骤17:UE A页面脚本触发RE-INVITE请求。
步骤18:UE A与UE B间通过协商建立应用DC通道,UE A与UE B进行新媒体交互。
需要说明的是,本流程中各步骤的具体实现方式可参见前述实施例中相关步骤的描述。
UE A的Wasm组件版本与UE B不兼容的情况下,UE A和UE B无法完成媒体互通。基于以上流程,通过RTCP消息反馈机制,可以解决主被叫Wasm组件版本兼容性问题,可以保证双方的Wasm组件版本兼容,从而保证主被叫顺利进行新媒体通话功能。
基于相同的技术构思,本申请实施例还提供了一种终端。
图21示例性示出了本申请实施例提供的终端的结构示意图。如图所示,该终端可包括发送模块2101、接收模块2102、处理模块2103。
发送模块2101,用于向新通话服务器发送引导页面获取请求;接收模块2102,用于接收来自于所述新通话服务器的引导页面,所述引导页面携带组件的下载地址,所述组件用于实现IMS业务;处理模块2103,用于根据所述组件的下载地址从所述新通话服务器下载所述组件,并加载所述组件。
可选的,发送模块2101还用于:在处理模块2103根据所述组件的下载地址从所述新通话服务器下载所述组件之后,向所述新通话服务器发送第一查询请求,所述第一查询请求用于请求查询通信对端终端是否对所述组件加载完成。接收模块2102还用于:接收来自所述新通话服务器的第一查询响应后,与所述第二终端建立应用DC通道;其中,所述第一查询响应用于指示所述通信对端终端加载完成所述组件。
可选的,所述第一查询请求携带第一组件列表,所述第一组件列表中包括所述处理模块加载的组件的相关信息,所述相关信息包括组件标识;所述第一查询响应携带第二组件列表,所述第二组件列表中包括所述通信对端终端加载的组件的相关信息,所述相关信息包括组件标识。
可选的,所述第一查询请求和所述第一查询响应为RTCP消息。
可选的,所述引导页面还携带所述组件的版本信息;处理模块2103还用于:根据所述组件的下载地址从所述新通话服务器下载所述组件之后,缓存所述组件以及所述组件的版本信息。
可选的,发送模块2101还用于:在所述处理模块缓存所述组件以及所述组件的版本信息之后,向所述新通话服务器发送引导页面获取请求;接收模块2102还用于:接收来自于所述新通话服务器的引导页面,所述引导页面携带组件的下载地址和版本信息;处理模块2103还用于:将所述引导页面携带的组件的版本信息,与所述处理模块缓存的所述组件的版本信息进行比较;若所述引导页面携带的组件的版本信息,与所述处理模块缓存的所述组件的版本信息不同,则根据所述组件的下载地址从所述新通话服务器下载对应的组件,根据下载到的组件更新缓存的组件并更新组件的版本信息;否则,加载缓存的所述组件。
可选的,发送模块2101还用于:在处理模块2103加载缓存的所述组件之后,向所述新通话服务器发送第二查询请求,所述第二查询请求用于请求查询通信对端终端加载的组件的版本信息;接收模块2102还用于:接收来自于所述新通话服务器的第二查询响应,所述第二查询响应携带所述通信对端终端加载的组件的版本信息;处理模块2103还用于:若根据所述通信对端终端加载的组件的版本信息,判断处理模块2103加载的组件与所述通信对端终端加载的组件不兼容,则从所述新通话服务器下载与所述通信对端终端加载的组件相兼容的组件。
可选的,所述第二查询响应还携带所述通信对端终端加载的组件的下载地址;处理模块2103具体用于:根据所述第二查询响应携带的组件的下载地址从所述新通话服务器下载对应的组件。
可选的,所述第二查询请求携带第三组件列表,所述第三组件列表中包括所述处理模块加载的组件的相关信息,所述相关信息包括组件标识和组件版本信息;所述第二查询响应携带第四组件列表,所述第四组件列表中包括所述通信对端终端加载的组件的相关信息,所述相关信息包括组件标识、组件版本信息和下载地址。
可选的,所述第二查询请求和所述第二查询响应为RTCP消息。
基于相同的技术构思,本申请实施例还提供了一种新通话服务器。
图22示例性示出了本申请实施例提供的新通话服务器的结构。如图所示,该服务器可包括接收模块2201、发送模块2202、处理模块2203。
接收模块2201,用于接收来自于终端的引导页面获取请求;发送模块2202,用于根据所述引导页面获取请求,向所述终端发送引导页面,所述引导页面携带组件的下载地址,所述组件用于实现IMS业务;接收模块2201还用于,接收来自于所述终端的组件下载请求;发送模块2202还用于,根据所述组件下载请求将所述组件发送给所述终端。
可选的,所述引导页面还携带所述组件的版本信息。
可选的,处理模块2203用于:在根据所述引导页面获取请求向所述终端发送引导页面之前,根据所述终端请求的IMS业务类型,确定与所述IMS业务类型对应的组件。
本申请实施例中对单元的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,另外,在本申请各个实施例中的各功能单元可以集成在一个处理器中,也可以是单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
该集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台终端设备(可以是个人计算机,手机,或者网络设备等)或处理器(processor)执行本申请各个实施例该方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read-onlymemory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
在本申请实施例中,所述轻应用服务器以及终端设备均可以采用集成的方式划分各个功能模块的形式来呈现。这里的“模块”可以指特定ASIC,电路,执行一个或多个软件或固件程序的处理器和存储器,集成逻辑电路,和/或其他可以提供上述功能的器件。
在一个简单的实施例中,终端可采用图23所示的形式。如图23所示的通信装置2300包括至少一个处理器2301,通信接口2302,可选地还可以包括存储器2303。在一种可能的实现方式中,通信装置2300还包括显示器2304。
处理器2301可以具有数据收发功能,能够与其他设备进行通信,在如图23装置中,也可以设置独立的数据收发模块,例如通信接口2302,用于收发数据;处理器2301在与其他设备进行通信时,可以通过通信接口2302进行数据传输。
当终端或服务器采用图23所示的形式时,图23中的处理器2301可以通过调用存储器2303中存储的计算机执行指令,使得所述终端设备可以执行上述任一方法实施例中的终端(比如第一终端或第二终端)执行的方法。
本申请实施例中不限定上述处理器2301以及存储器2303、通信接口2302、显示器2304以及传感器之间的具体连接介质。本申请实施例在图中通过总线2306连接为例,总线2306在图中以粗线表示,其它部件之间的连接方式,仅是进行示意性说明,并不引以为限。该总线2306可以分为地址总线、数据总线、控制总线等。为便于表示,图23中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
在一个简单的实施例中,新通话服务器可采用图24所示的形式。如图24所示的通信装置2400,包括至少一个处理器2401,通信接口2403。可选的,还可以包括存储器2402。
一种可能的实现方式中,当新通话服务器采用图24所示的形式时,图24中的处理器2401可以通过调用存储器2402中存储的计算机执行指令,使得该通信装置可以执行上述任一方法实施例中的新通话服务器执行的方法。
处理器2401可以通过通信接口2403与其他设备进行通信。比如,处理器2401通过通信接口2403接收引导页面获取请求,以及发送引导页面。
本申请实施例中不限定上述处理器2401以及存储器2402之间的具体连接介质。本申请实施例在图中以存储器2402和处理器2401之间通过总线2404连接,总线2404在图中以粗线表示,其它部件之间的连接方式,仅是进行示意性说明,并不引以为限。该总线2404可以分为地址总线、数据总线、控制总线等。为便于表示,图24中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
基于以上实施例,本申请实施例还提供了一种计算机存储介质,该存储介质中存储软件程序,该软件程序在被一个或多个处理器读取并执行时可实现上述任意一个或多个实施例提供业务平台或边缘计算设备执行的方法。所述计算机存储介质可以包括:U盘、移动硬盘、只读存储器、随机存取存储器、磁碟或者光盘等各种可以存储程序代码的介质。
基于以上实施例,本申请实施例还提供了一种芯片,该芯片包括处理器,用于实现上述任意一个或多个实施例所涉及的轻应用服务器的功能或者终端设备的功能。可选地,所述芯片还包括存储器,所述存储器,用于处理器所执行必要的程序指令和数据。该芯片,可以由芯片构成,也可以包含芯片和其他分立器件。
应理解,说明书通篇中提到的“一个实施例”、“一个实现方式”、“一个实施方式”或“一示例”意味着与实施例有关的特定特征、结构或特性包括在本申请的至少一个实施例中。因此,在整个说明书各处出现的“在一个实施例中”、“一个实现方式”、“一个实施方式”或“在一示例中”未必一定指相同的实施例。此外,这些特定的特征、结构或特性可以任意适合的方式结合在一个或多个实施例中。应理解,在本申请的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
另外,本文中术语“系统”和“网络”在本文中常被可互换使用。本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。本申请涉及的术语“至少一个”,是指一个,或一个以上,即包括一个、两个、三个及以上;“多个”,是指两个,或两个以上,即包括两个、三个及以上。另外,需要理解的是,在本申请的描述中,“第一”、“第二”等词汇,仅用于区分描述的目的,而不能理解为指示或暗示相对重要性,也不能理解为指示或暗示顺序。“以下至少一项(个)”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b,或c中的至少一项(个),可以表示:a,b,c,a-b,a-c,b-c,或a-b-c,其中a,b,c可以是单个,也可以是多个。应理解,在本申请实施例中,“与A相应的B”表示B与A相关联,根据A可以确定B。但还应理解,根据A确定B并不意味着仅仅根据A确定B,还可以根据A和/或其它信息确定B。此外,本申请实施例和权利要求书及附图中的术语“包括”和“具有”不是排他的。例如,包括了一系列步骤或模块的过程、方法、系统、产品或设备没有限定于已列出的步骤或模块,还可以包括没有列出的步骤或模块。
可以理解的是,本申请的实施例中的处理器可以是中央处理单元(centralprocessing unit,CPU),还可以是其它通用处理器、数字信号处理器(digital signalprocessor,DSP)、专用集成电路(application specific integrated circuit,ASIC)、现场可编程门阵列(field programmable gate array,FPGA)或者其它可编程逻辑器件、晶体管逻辑器件,硬件部件或者其任意组合。通用处理器可以是微处理器,也可以是任何常规的处理器。
本申请的实施例中的方法步骤可以通过硬件的方式来实现,也可以由处理器执行软件指令的方式来实现。软件指令可以由相应的软件模块组成,软件模块可以被存放于随机存取存储器(random access memory,RAM)、闪存、只读存储器(Read-Only Memory,ROM)、可编程只读存储器(programmable ROM,PROM)、可擦除可编程只读存储器(erasable PROM,EPROM)、电可擦除可编程只读存储器(electrically EPROM,EEPROM)、寄存器、硬盘、移动硬盘、CD-ROM或者本领域熟知的任何其它形式的存储介质中。一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于ASIC中。另外,该ASIC可以位于网络设备或终端设备中。当然,处理器和存储介质也可以作为分立组件存在于网络设备或终端设备中。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机程序或指令。在计算机上加载和执行所述计算机程序或指令时,全部或部分地执行本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其它可编程装置。所述计算机程序或指令可以存储在计算机可读存储介质中,或者通过所述计算机可读存储介质进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是集成一个或多个可用介质的服务器等数据存储设备。所述可用介质可以是磁性介质,例如,软盘、硬盘、磁带;也可以是光介质,例如,DVD;还可以是半导体介质,例如,固态硬盘(solid state disk,SSD)。
在本申请的各个实施例中,如果没有特殊说明以及逻辑冲突,不同的实施例之间的术语和/或描述具有一致性、且可以相互引用,不同的实施例中的技术特征根据其内在的逻辑关系可以组合形成新的实施例。
Claims (32)
1.一种基于电信网络的通信方法,其特征在于,包括:
第一终端向新通话服务器发送引导页面获取请求;
所述第一终端接收来自于所述新通话服务器的引导页面,所述引导页面携带组件的下载地址,所述组件用于实现IP多媒体子系统IMS业务;
所述第一终端根据所述组件的下载地址从所述新通话服务器下载所述组件,并加载所述组件。
2.如权利要求1所述的方法,其特征在于,所述第一终端根据所述组件的下载地址从所述新通话服务器下载所述组件之后,所述方法还包括:
所述第一终端向所述新通话服务器发送第一查询请求,所述第一查询请求用于请求查询第二终端是否对所述组件加载完成,所述第二终端为所述第一终端的通信对端;
所述第一终端接收来自所述新通话服务器的第一查询响应后,与所述第二终端建立应用DC通道;其中,所述第一查询响应用于指示所述第二终端加载完成所述组件。
3.如权利要求2所述的方法,其特征在于,所述第一查询请求携带第一组件列表,所述第一组件列表中包括所述第一终端加载的组件的相关信息,所述相关信息包括组件标识;
所述第一查询响应携带第二组件列表,所述第二组件列表中包括所述第二终端加载的组件的相关信息,所述相关信息包括组件标识。
4.如权利要求2-3任一项所述的方法,其特征在于,所述第一查询请求和所述第一查询响应为实时传输控制协议RTCP消息。
5.如权利要求1-4任一项所述的方法,其特征在于,所述引导页面还携带所述组件的版本信息;
所述第一终端根据所述组件的下载地址从所述新通话服务器下载所述组件之后,所述方法还包括:
所述第一终端缓存所述组件以及所述组件的版本信息。
6.如权利要求5所述的方法,其特征在于,所述第一终端缓存所述组件以及所述组件的版本信息之后,方法还包括:
所述第一终端再次向所述新通话服务器发送引导页面获取请求;
所述第一终端接收来自于所述新通话服务器的引导页面,所述引导页面携带组件的下载地址和版本信息;
所述第一终端将所述引导页面携带的组件的版本信息,与所述第一终端缓存的所述组件的版本信息进行比较;
若所述引导页面携带的组件的版本信息,与所述第一终端存储的所述组件的版本信息不同,则所述第一终端根据所述组件的下载地址从所述新通话服务器下载对应的组件,根据下载到的组件更新缓存的组件并更新组件的版本信息;否则,所述第一终端加载所述第一终端缓存的所述组件。
7.如权利要求6所述的方法,其特征在于,所述终端加载所述第一终端缓存的所述组件之后,所述方法还包括:
所述第一终端向所述新通话服务器发送第二查询请求,所述第二查询请求用于请求查询第二终端加载的组件的版本信息,所述第二终端为所述第一终端的通信对端;
所述第一终端接收来自于所述新通话服务器的第二查询响应,所述第二查询响应携带所述第二终端加载的组件的版本信息;
若所述第一终端根据所述第二终端加载的组件的版本信息,判断所述第一终端加载的组件与所述第二终端加载的组件不兼容,则所述第一终端从所述新通话服务器下载与所述第二终端加载的组件相兼容的组件。
8.如权利要求7所述的方法,其特征在于,所述第二查询响应还携带所述第二终端加载的组件的下载地址;
所述第一终端从所述新通话服务器下载与所述第二终端加载的组件相兼容的组件,包括:
所述第一终端根据所述第二查询响应携带的组件的下载地址从所述新通话服务器下载对应的组件。
9.如权利要求7或8所述的方法,其特征在于,所述第二查询请求携带第三组件列表,所述第三组件列表中包括所述第一终端加载的组件的相关信息,所述相关信息包括组件标识和组件版本信息;
所述第二查询响应携带第四组件列表,所述第四组件列表中包括所述第二终端加载的组件的相关信息,所述相关信息包括组件标识、组件版本信息和下载地址。
10.如权利要求7-9任一项所述的方法,其特征在于,所述第二查询请求和所述第二查询响应为RTCP消息。
11.如权利要求1-10任一项所述的方法,其特征在于,所述组件由WebAssembly程序代码实现。
12.一种基于电信网络的通信方法,其特征在于,包括:
新通话服务器接收来自于终端的引导页面获取请求;
所述新通话服务器根据所述引导页面获取请求,向所述终端发送引导页面,所述引导页面携带组件的下载地址,所述组件用于实现IP多媒体子系统IMS业务;
所述新通话服务器接收来自于所述终端的组件下载请求,并根据所述组件下载请求将所述组件发送给所述终端。
13.如权利要求12所述的方法,其特征在于,所述引导页面还携带所述组件的版本信息。
14.如权利要求12-13任一项所述的方法,其特征在于,所述新通话服务器根据所述引导页面获取请求,向所述终端发送引导页面之前,所述方法还包括:
所述新通话服务器根据所述终端请求的IMS业务类型,确定与所述IMS业务类型对应的组件。
15.一种终端,其特征在于,包括
发送模块,用于向新通话服务器发送引导页面获取请求;
接收模块,用于接收来自于所述新通话服务器的引导页面,所述引导页面携带组件的下载地址,所述组件用于实现IP多媒体子系统IMS业务;
处理模块,用于根据所述组件的下载地址从所述新通话服务器下载所述组件,并加载所述组件。
16.如权利要求15所述的终端,其特征在于,所述发送模块,还用于:在所述处理模块根据所述组件的下载地址从所述新通话服务器下载所述组件之后,向所述新通话服务器发送第一查询请求,所述第一查询请求用于请求查询通信对端终端是否对所述组件加载完成;
所述接收模块,还用于:接收来自所述新通话服务器的第一查询响应后,与所述第二终端建立应用DC通道;其中,所述第一查询响应用于指示所述通信对端终端加载完成所述组件。
17.如权利要求16所述的终端,其特征在于,所述第一查询请求携带第一组件列表,所述第一组件列表中包括所述处理模块加载的组件的相关信息,所述相关信息包括组件标识;
所述第一查询响应携带第二组件列表,所述第二组件列表中包括所述通信对端终端加载的组件的相关信息,所述相关信息包括组件标识。
18.如权利要求16-17任一项所述的终端,其特征在于,所述第一查询请求和所述第一查询响应为实时传输控制协议RTCP消息。
19.如权利要求15-18任一项所述的终端,其特征在于,所述引导页面还携带所述组件的版本信息;
所述处理模块,还用于:根据所述组件的下载地址从所述新通话服务器下载所述组件之后,缓存所述组件以及所述组件的版本信息。
20.如权利要求19所述的终端,其特征在于,所述发送模块,还用于:在所述处理模块缓存所述组件以及所述组件的版本信息之后,向所述新通话服务器发送引导页面获取请求;
所述接收模块还用于:接收来自于所述新通话服务器的引导页面,所述引导页面携带组件的下载地址和版本信息;
所述处理模块还用于:将所述引导页面携带的组件的版本信息,与所述处理模块缓存的所述组件的版本信息进行比较;若所述引导页面携带的组件的版本信息,与所述处理模块缓存的所述组件的版本信息不同,则根据所述组件的下载地址从所述新通话服务器下载对应的组件,根据下载到的组件更新缓存的组件并更新组件的版本信息;否则,加载缓存的所述组件。
21.如权利要求20所述的终端,其特征在于,所述发送模块还用于:在所述处理模块加载缓存的所述组件之后,向所述新通话服务器发送第二查询请求,所述第二查询请求用于请求查询通信对端终端加载的组件的版本信息;
所述接收模块还用于:接收来自于所述新通话服务器的第二查询响应,所述第二查询响应携带所述通信对端终端加载的组件的版本信息;
所述处理模块还用于:若根据所述通信对端终端加载的组件的版本信息,判断所述处理模块加载的组件与所述通信对端终端加载的组件不兼容,则从所述新通话服务器下载与所述通信对端终端加载的组件相兼容的组件。
22.如权利要求21所述的终端,其特征在于,所述第二查询响应还携带所述通信对端终端加载的组件的下载地址;
所述处理模块具体用于:根据所述第二查询响应携带的组件的下载地址从所述新通话服务器下载对应的组件。
23.如权利要求21或22所述的终端,其特征在于,所述第二查询请求携带第三组件列表,所述第三组件列表中包括所述处理模块加载的组件的相关信息,所述相关信息包括组件标识和组件版本信息;
所述第二查询响应携带第四组件列表,所述第四组件列表中包括所述通信对端终端加载的组件的相关信息,所述相关信息包括组件标识、组件版本信息和下载地址。
24.如权利要求21-23任一项所述的终端,其特征在于,所述第二查询请求和所述第二查询响应为RTCP消息。
25.如权利要求15-24任一项所述的终端,其特征在于,所述组件由WebAssembly程序代码实现。
26.一种新通话服务器,其特征在于,包括:
接收模块,用于接收来自于终端的引导页面获取请求;
发送模块,用于根据所述引导页面获取请求,向所述终端发送引导页面,所述引导页面携带组件的下载地址,所述组件用于实现IP多媒体子系统IMS业务;
所述接收模块还用于,接收来自于所述终端的组件下载请求;
所述发送模块还用于,根据所述组件下载请求将所述组件发送给所述终端。
27.如权利要求26所述的服务器,其特征在于,所述引导页面还携带所述组件的版本信息。
28.如权利要求26-27任一项所述的服务器,其特征在于,还包括处理模块;
所述处理模块用于:在根据所述引导页面获取请求向所述终端发送引导页面之前,根据所述终端请求的IMS业务类型,确定与所述IMS业务类型对应的组件。
29.一种通信装置,其特征在于,包括:一个或多个处理器;其中,当一个或多个计算机程序的指令被所述一个或多个处理器执行时,使得所述通信装置执行如权利要求1-11中任一项所述的方法,或者如权利要求12-14中任一项所述的方法。
30.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质包括计算机程序,当计算机程序在计算设备上运行时,使得所述计算设备执行如权利要求1-11中任一项所述的方法,或者如权利要求12-14中任一项所述的方法。
31.一种芯片,其特征在于,所述芯片与存储器耦合,用于读取并执行所述存储器中存储的程序指令,以实现如权利要求1-11中任一项所述的方法,或者如权利要求12-14中任一项所述的方法。
32.一种计算机程序产品,其特征在于,所述计算机程序产品在被计算机调用时,使得所述计算机执行如权利要求1-11中任一项所述的方法,或者如权利要求12-14中任一项所述的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111655332.XA CN116418784A (zh) | 2021-12-31 | 2021-12-31 | 一种基于电信网络的通信方法及装置 |
PCT/CN2022/142806 WO2023125661A1 (zh) | 2021-12-31 | 2022-12-28 | 一种基于电信网络的通信方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111655332.XA CN116418784A (zh) | 2021-12-31 | 2021-12-31 | 一种基于电信网络的通信方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116418784A true CN116418784A (zh) | 2023-07-11 |
Family
ID=86998011
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111655332.XA Pending CN116418784A (zh) | 2021-12-31 | 2021-12-31 | 一种基于电信网络的通信方法及装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN116418784A (zh) |
WO (1) | WO2023125661A1 (zh) |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101084495A (zh) * | 2004-10-22 | 2007-12-05 | 摩托罗拉公司 | 用于提供基于ims的无线下载服务的方法 |
CN101355676B (zh) * | 2007-07-24 | 2010-07-07 | 华为技术有限公司 | 提供网络电视业务信息的方法和网络电视业务系统 |
GB2476432B (en) * | 2008-09-19 | 2012-06-20 | Ericsson Telefon Ab L M | Methods and arrangements for an internet multimedia subsystem |
CN102088446B (zh) * | 2009-12-03 | 2013-07-03 | 中国移动通信集团福建有限公司 | 一种连接到ims网络的方法和系统 |
CN107239302A (zh) * | 2017-05-10 | 2017-10-10 | 努比亚技术有限公司 | 一种固件升级方法、终端和服务器 |
-
2021
- 2021-12-31 CN CN202111655332.XA patent/CN116418784A/zh active Pending
-
2022
- 2022-12-28 WO PCT/CN2022/142806 patent/WO2023125661A1/zh unknown
Also Published As
Publication number | Publication date |
---|---|
WO2023125661A1 (zh) | 2023-07-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8401022B2 (en) | Pragmatic approaches to IMS | |
CN113709190B (zh) | 业务设置方法和装置、存储介质及电子设备 | |
CN101326493B (zh) | 用于多处理器服务器中的负载分配的方法和装置 | |
US9503528B2 (en) | System for provisioning service data utilizing the IMS defined Sh interface's transparent data | |
US10405224B2 (en) | Method of and a network server and mobile user equipment for providing chat/VoIP services in a mobile telecommunications network | |
US20120215894A1 (en) | Method, apparatus and system for selecting service | |
US9609059B2 (en) | Synchronization of shared identifiers across servers in an IMS network | |
US7877486B2 (en) | Auto-establishment of a voice channel of access to a session for a composite service from a visual channel of access to the session for the composite service | |
EP2245823B1 (en) | Facilitating subscription services in the ims | |
US20090239513A1 (en) | System and Method to Provide Combinational Services to Anonymous Callers | |
CN110535839B (zh) | 一种信息处理方法、设备、系统及计算机可读存储介质 | |
WO2019011149A1 (zh) | 一种通信方法、装置、应用服务器、用户设备和系统 | |
US8983043B2 (en) | Data communication | |
US9008287B2 (en) | Data communication | |
WO2023011057A1 (zh) | 一种通信方法及装置 | |
US11418635B2 (en) | Method of dynamic selection, by a caller, from a plurality of terminals of a callee | |
WO2023071656A1 (zh) | 信息传输方法及装置 | |
CN116418784A (zh) | 一种基于电信网络的通信方法及装置 | |
WO2017113071A1 (zh) | 一种补充业务实现方法、终端设备和ims服务器 | |
WO2010075688A1 (zh) | Ims集群会议的创建和加入方法、装置及系统 | |
WO2012052710A1 (en) | Concurrent voice and data communication | |
WO2023011056A1 (zh) | 一种通信方法及装置 | |
US20150120946A1 (en) | Method, Server and System for a Network Multimedia Content Component Service in an Internet Protocol Multimedia Subsystem | |
GB2553725A (en) | Data communication | |
WO2023087925A1 (zh) | 电信通讯方法、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication |