融合PSTN的移动互联网语音平台系统及其通信方法与流程

文档序号:15625431发布日期:2018-10-09 22:51阅读:446来源:国知局

本发明涉及通信领域,具体而言,涉及一种融合公用电话交换网(publicswitchedtelephonenetwork,简称为pstn)的移动互联网语音平台系统及其通信方法。



背景技术:

随着信息技术的发展,移动互联网时代的到来,移动社交产品逐渐兴起,目前市面上常见的如微博、qq、微信、陌陌、yy等产品也都在提供自媒体信息发布、即时通讯、陌生人交友、音视频直播等业务场景服务的同时,多元化地融入社交元素,使得各类移动互联网app能够有丰富的产品功能和良好的用户体验。

在社交平台产品上,人与人的交流是基本要素,常见的交流功能主要有:图文即时消息、异步语音消息(半双工网络电话(voiceoverinternetprotocol,简称为voip)语音消息)、实时语音通话(全双工voip语音通话)等表现形式。其中“图文即时消息”是最便捷、最常用的交流工具,它通过客户端应用软件和服务器在wifi/gsm/cmda等网络中传递文本或多媒体数据,实现图文即时通讯;“异步语音”技术是一种基于网络的“即按即说”业务,该业务功能在用户按下录音按钮时启动录音模块,采集说话音频信号并编码、压缩,通过网络服务器传输到对方手机,接收方设备收到音频数据后,点击播放按钮通过扬声器收听。这种方案通过说话录制语音短信进行社交通讯,释放双手输入信息,降低使用门槛,便利性有一定提升;“实时语音通话”是也是迅速发展起来的voip技术,现在宽带网络及4g移动网络普及的情况下,实时语音应用在移动互联网中也得到广泛的发展和应用,连续的语音交流增强了在虚拟网络社交环境中的现实感,也得到了用户的青睐。qq、微信、yy等互联网社交类产品都实现了好友间的一对一、多对多实时通话产品,这种接近传统电话交流的voip网络语音通讯产品给人更加舒服的沟通体验,但它同样也对通讯网络的数据传输质量提出了更高的要求。

鉴于建设成本及使用便利性等因素考虑,市面上的移动互联网实时语音通话产品基本都是使用internet宽带wifi及移动3g/4g网络作为通讯承载网络,同时通过服务器软交换系统进行音频数据抖动缓冲、编解码压缩、混音合成处理及分发投递,实现多方实时语音通话的传输交换子系统。目前宽带和4g网络已经普及,虽然4g网络理论上可以达到每秒100mbps的带宽速度(约每秒12.5mb),但是由于ip数据包在internet上传输依赖多次网络路由节点数据交换,以及终端网络信号干扰、屏蔽等无线信号强弱因素引发的网络问题,仍有一部分移动设备的网络访问质量不佳,导致出现internet网络中断或数据传输延迟抖动较大等不适宜使用voip实时语音的场景。

因而,在internet网络不可用场景下,用户对使用移动互联网实时语音通话产品又有强需求的情况下,采用何种平台架构,能够实现实时全双工语音沟通需求,是目前亟待解决的问题。



技术实现要素:

本发明的主要目的在于公开了一种融合公用电话交换网(pstn)的移动互联网语音平台系统及其通信方法,以至少解决相关技术中在internet网络不可用场景下,用户对使用移动互联网实时语音通话产品又有强需求的情况下,还缺乏能够实现实时全双工语音沟通需求的平台架构的问题。

根据本发明的一个方面,提供了一种融合公用电话交换网(publicswitchedtelephonenetwork,简称为pstn)的移动互联网语音平台系统。

根据本发明的融合pstn的移动互联网语音平台系统包括:移动互联网语音平台,以及分别与上述移动互联网语音平台相连接的至少一个pstn接入端系统;其中,各个上述pstn接入端系统均包括:负责上述pstn接入端系统上位音频处理的频道接入服务器ces,分别与上述移动互联网语音平台的频道服务器cs和频道管理服务器cms相连接;负责上述pstn接入端系统下位音频处理的计算机电信集成服务器(computertelephonyintegration,简称为ctis),与上述ces相连接。

根据本发明的另一方面,提供了一种融合pstn的移动互联网语音平台系统的通信方法。

根据本发明的融合pstn的移动互联网语音平台系统的通信方法包括:在公用电话交换网pstn用户接入计算机电信集成服务器ctis之后,通过频道接入服务ces向频道管理服务器cms发送请求消息;上述cms创建虚拟用户并请求加入频道服务器cs;上述cms从上述cs获取地址端口信息,并向上述ces回复上述地址端口信息;上述ces将上述地址端口信息发送至上述ctis。

与现有技术相比,本发明实施例至少具有以下优点:将公用电话交换网pstn接入移动互联网语音平台,形成融合pstn的移动互联网语音平台系统,采用该系统,在internet网络不可用场景下,用户对使用移动互联网实时语音通话产品又有强需求的情况下,实现了实时全双工语音沟通需求的目的,提供了pstn网络访问移动互联网语音平台的渠道。

附图说明

图1是根据本发明实施例的融合公用电话交换网pstn的移动互联网语音平台系统的结构框图;

图2是根据本发明优选实施例的pstn接入端系统的结构框图;

图3是根据本发明优选实施例的ces和ctis的结构示意图;

图4是根据本发明优选实施例的移动互联网语音平台的结构框图;

图5是根据本发明优选实施例的融合pstn的移动互联网语音平台系统的结构框图;

图6是根据本发明实施例的融合pstn的移动互联网语音平台系统的通信方法的流程图;

图7是根据本发明优选实施例的ces节点注册的时序图;

图8是根据本发明优选实施例的房间音乐uri改变及音频混合的流程图。

具体实施方式

下面结合说明书附图对本发明的具体实现方式做一详细描述。

图1是根据本发明实施例的融合公用电话交换网pstn的移动互联网语音平台系统的结构框图。如图1所示,该移动互联网语音平台系统包括:移动互联网语音平台10,以及分别与上述移动互联网语音平台10相连接的至少一个pstn接入端系统20;其中,各个上述pstn接入端系统20均包括:负责上述pstn接入端系统20上位音频处理的频道接入服务器(ces)200,分别与上述移动互联网语音平台10的频道服务器(cs)100和频道管理服务器(cms)102相连接;负责上述pstn接入端系统20下位音频处理的计算机电信集成服务器(ctis)202,与上述ces200相连接。

在图1所示的移动互联网语音平台系统中,将公用电话交换网(pstn)接入移动互联网语音平台,形成融合pstn的移动互联网语音平台系统,采用该系统,在internet网络不可用场景下,用户对使用移动互联网实时语音通话产品又有强需求的情况下,实现了实时全双工语音沟通需求的目的,提供了pstn网络访问移动互联网语音平台的渠道。

优选地,如图2所示,上述pstn接入端系统200还可以包括:web服务器204;负责调用上述web服务器的接口获取房间频道信息,在用户访问相应流程时播报上述房间频道信息的互动语音应答系统(ivrs)206,分别与上述web服务器和上述ctis相连接。

ivrs40,封装http访问接口,调用web服务器30接口获取房间频道信息,在用户访问相应流程时播报房间信息(类型,人数等),供电话用户通过ivr流程选择进入。电话用户选择进入频道时,ivrs通过与ctis之间接口将房间id信息传入ctis。最后由ctis调用libces相应接口进入频道。

ivrs旁听语音社交平台房间声音功能,语音社交平台(cms)实现一个虚拟的“透明”用户将对应的房间音频递送到ctis网关。ctis内部需设计一个频道用户管理器,可以记录当前网关节点电话参与人数信息,同时通过该频道用户管理器实现音频流订阅功能。

ctis是语音社交平台频道音频数据对接pstn网络管理的主体,它负责调用嵌入ctis的libces共享库模块提供的进入语音社交平台频道的请求接口,将用户加入语音频道。ctis实现频道和频道成员管理器设计,用于管理相应的内存数据,在调用嵌入ctis的libces共享库模块进入(离开)房间频道时,维护管理器中的数据。为节省ctis机房流量带宽,一个房间频道的下行语音只通过一个虚拟用户通道(对应的虚拟用户管理机制由cms/ces/libces配合完成)发给ctis。ctis调用libces的相应接口完成接入语音社交平台房间频道的功能,同时,libces在成功接入房间后会回调输出音频数据。此时,ctis根据自己管理的房间频道和成员信息,将不断收到的某房间语音包数据(g.711a-law)通过驱动api递送到板卡相应的底层硬件通道,实现电话线路上的音频播放。

为实现电话用户与语音社交平台用户实时聊天通讯功能,这时libces将会为发言用户创建全双工语音上下行通道,用于发送用户发言的上下行音频数据。

优选地,上述ctis包括:下行接收端口,上行发送端口,分别与上述下行接收端口和上述上行发送端口连接的计算机电话集成cti控制器,与上述cti控制器连接的cti中继交换设备。

ctis一般部署在工业控制机上,该工控机pci插槽中可以插入或连接常见的数字中继交换设备(如:三汇shd-120d-ct数字中继语音卡,东进keygoe3003多媒体交换机),数字中继交换设备背板接入数字中继同轴电缆。工控机上同时安装好语音卡的硬件驱动,ctis通过软件程序启动并操作语音卡驱动实现对中继线路的访问控制(如:电话接续、音频录音、音频播放等基本操作)。

鉴于ctis需要连接板卡硬件,而硬件驱动版本受各类硬件产品厂家的限制,经常存在对操作系统支持品质不一致的问题。因此,ctis也可能存在多种系统版本的可能性,常用的便是windows平台和linux平台。因此libces需要提供多种运行系统的版本,对应windows系统,应该是libces.dll,对应linux系统,应该是libces.so。

libces在运行期被操作系统集成载入ctis进程分配的内存地址空间中运行。它是ces业务的应用层集成sdk,它对外提供服务均通过api实现,我们设计它提供函数级接口调用,便于ctis等集成接入方快速集成。

libces与ces通讯,通过tcp通道来传输信令,通过udp通道传输语音。将各类指令协议和音频流数据进行封装处理,提供api级的sdk开发包供应用层集成使用。

libces通过c语言函数指针方案设计了回调通知接口,ctis对应的应用层程序将自己用于接收指令和音频数据的函数地址传递到libces模块内存中,libces在收到不同种类数据后,解包转换后通过回调函数指针将数据传递到ctis应用层。

ivrs获得语音社交平台聊天室房间列表信息,与ctis通讯时提供房间id,由ctis调用libces的相应接口完成接入移动互联网语音社交平台聊天室频道的功能。同时,libces回调输出房间音频数据。

优选地,上述ces包括:上行接收端口,与上述上行接收端口连接的编码器,与上述编码器连接的上行发送端口;下行接收端口,与上述下行接收端口相连接的抖动缓冲控制器、与上述抖动缓冲控制器相连接的音频解码器、与上述音频解码器相连接的混音器,与上述混音器相连接的下行发送端口。

优选地,上述ces与上述cms之间建立有传输信令的传输控制协议(tcp)通道,上述ces与上述cs之间建立有传输语音的用户数据报协议(udp)信道。

优选地,上述ces与上述ctis之间建立有传输信令的tcp通道,以及传输语音的udp信道。

图3是根据本发明优选实施例的ces和ctis的结构示意图。

如图3所示,ces是虚拟移动互联网语音社交app终端的核心服务器,它是每个pstn接入点的上位(比作自动化控制系统的上位机)音频处理单元。

libces作为ces的应用集成sdk,在ces和ctis等服务器之间建立通讯桥梁。图3将libces透明化处理,忽略该模块的逻辑存在,便于表达服务器之间的组织关系。

ces在与cms之间在“加入频道”信令对接成功后,ces与cs建立udp通讯信道(采用rtp协议通讯),并进入指定频道访问数据。该udp信道是全双工信道,可以进行下行音频包传输和上行音频传输。关于voip音频数据包的采集、编码压缩、传输等过程不是本发明的重点,不再赘述。

接收下行语音时,ces的抖动缓冲控制器负责音频数据的传输抖动缓冲控制、音频解码器对音频进行解码,随后混音器将解码后的音频数据与接收到的房间背景音乐媒体流数据(音乐媒体流接收模块可能存在音乐媒体流解码、重采样等动作)进行混音,以及音频采样宽度、频率、编码格式转换处理后,然后通过下行发送端口送达ctis,由ctis操作板卡输出到pstn线路。

接收上行语音时,ces的编码器负责将音频数据进行编码压缩,上行发送端口负责封包发送,最终将音频数据送达cs处理。

其中,本系统ces与cs之间音频编码可以采用silk编码算法(码率30kbps),ces与ctis之间的音频编码可以采用g.711a-law编码算法(码率64kbps)。所有音频编解码过程都在ces内完成计算。

如图3所示,ctis是接入pstn网络,控制语音中继板卡设备的处理服务器,进行音频数据与板卡链路数据对接,它是每个pstn接入点的下位(比作自动化控制系统的下位机)音频处理单元。

ctis通过数字中继交换设备,例如,将中继e1上的n个(例如,32个)信道时隙(timeslot)封装为30个通道(0/16时隙是同步及信令时隙),每条中继e1提供30个用户并发访问能力。

ctis可以为每一语音社交平台房间频道创建虚拟用户(事先创建并管理),用于统一接收语音社交平台各频道下行语音,如果pstn电话用户只旁听频道内容,只需在ctis内部订阅该频道音频流。ctis会将音频数据递送给各音频订阅者。

ctis在pstn用户希望上座发言时,ctis通过ces为该用户创建独享的信令(信令由ces与es建立的独享tcp信道传输并通过es转发至cms)及音频流(音频流与cs进行udp通讯)传输信道,实现全双工的音频实时数据收发。ctis与语音板卡音频数据交互,采用pcma(g.711a-law编码)语音压缩标准。

ctis通过驱动控制板卡进行内存放音及内存录音,实现与voip系统的实时音频数据录播控制。它将内存pcma数据递送到板卡驱动实现放音,同理,录音时板卡也会通过驱动回调ctis程序获取录音的pcma内存数据。

优选地,如图4所示,上述cms102,通过全双工udp通信信道与上述cs100相连接;上述移动互联网语音平台10还可以包括:负责提供房间频道信息的接口的接入服务器es104,分别与上述cms102以及上述pstn接入端系统20的web服务器204相连接,其中,上述es104通过超文本传输协议http协议与上述web服务器204通信。

其中,cms是社交服务器的的语音聊天频道管理服务器,它是社交平台实时语音功能的核心服务器之一。在该接入方案中,提供pstn接入用户加入聊天室的接口逻辑,创建一个用户并且加入到cs。并将cs分配用户接入语音相关rtp服务ip/port等信息返回给客户端(ces)。

出于管理和成本等因素考虑,租用或合作的电信、联通、移动等电信运营商数字中继e1线路通常只能接收或者呼出网内电话号码。因此cms支持多ces节点接入,即很多运营商机房都会部署ivr系统。因此,ces也会有多个,各个ces都会根据业务需求申请加入相同的聊天房间频道。

ces能够虚拟一定数量的社交平台音频客户端,负责跟cms通讯将虚拟用户接入cs,获取cs分配的rtp端口、ssrc等音频实时传输信息。

使用与cs相匹配的rtp协议及参数规则和cs通讯,接收聊天房间频道语音,抖动缓冲、音频解码,并且将输出音频重采样为pstn线路支持的采样频率8k、采样位8bit的g.711a-lawpcm数据。

ces与嵌入ctis(cti,computertelephonyintegration,计算机电信集成。ctis,ctiserver,接入pstn网络具有ivr功能的网关系统)的libces(windows系统版本为libces.dll或linux系统版本为libces.so)通讯,将指令信息和音频数据输出到ctis,由该服务器控制与cti中继交换设备api对接,将媒体信息输出到数字中继链路上。

考虑到语音系统迁移和开发复杂度等因素,ces是一个运行于linux系统的应用服务程序,ctis根据数字中继交换设备产品的需求版本确定,可能是windows服务器程序,也可能是linux服务器程序。而libces则是嵌入ctis的动态运行库。libces只负责简单控制指令和音频数据序列化封装打包透传工作,无需设计网络抖动控制模块。因此,ces与ctis需部署在同一机房的1000m局域网内,确保它们之间拥有可靠的网络通讯线路。libces初始化时作为客户端主动连接ces绑定的监听端口,在他们之间创建出稳定传输的tcp/udp通讯通道。随后,在通道上转发控制指令和音频数据包。

电话用户与语音社交平台app用户互通进行多方通话的场景,每个房间频道下行语音采用专用虚拟用户通道,通过ces发送至ctis,以节省流量带宽。

由于在ctis之后通过数字语音板卡链接数字中继线路,接入pstn网络链接的电话用户进行音频数据传输的线路延迟及传输抖动极其微小,而ctis又集中在一个节点通过ces接入cs。因此,在同一个ctis网关控制下的用户收听相同聊天频道的音频信息,可以通过统一的下行通道接收数据进行内存数据订阅分发。避免多个数据通道传输相同数据引起的带宽浪费。一般而言电话接入的发言用户需创建独享全双工通道,该电话发言用户的上下行音频均由自己的专用通道传输,不再使用虚拟用户通道数据。

es可以提供聊天房间频道列表的接口,获取可以进入的开放的房间列表。提供更多个性化的兴趣匹配、人群匹配、好友匹配等特点的房间列表,及房间信息查询服务。es提供的接口采用http协议进行封装,供ivrs集成httpclient模块调用拉取数据。

es作为移动互联网语音平台使用的云端入口服务器,除了为ivrs等服务器提供房间列表等信息外,还肩负移动互联网语音平台的用户接入能力服务。因此,es具有用户登录、鉴权等一整套功能体系,以实现接入服务功能。同时,es作为移动互联网语音平台的接入服务器,还实现了移动客户端应用程序app与cms之间的网络通讯的代理功能,即移动客户端app与cms交互(如:加入频道、离开频道、获取频道成员列表、旁听、发言等动作),不像本文中提到的ces直连cms的通讯方式,而是所有的通讯都通过app与es之间建立的tcp长连接通讯信道代理转发实现。

上述ces作为移动互联网语音客户端逻辑的模拟者,采用直连cms通信方案,而没有像app那样直连es,并通过es代理实现app到cms的通讯。原因如下:

ces作为客户端,在pstn用户需要进入某移动互联网语音app房间频道时,会判断是否有已初始化建立完成的该频道的通信信道。没有则默认建立一个通信信道,实现对cms/cs上某一频道的订阅收听功能。该功能是作为pstn系统输出音频的主要工作模式(即:旁听模式),这种模式下,收听方仅仅接收房间频道的音频输出,由于是服务器之间的专有设计,可以匿名实现,不以用户身份为基础开展业务逻辑设计。

ces作为客户端,pstn用户希望参与频道互动,这时候系统就需要建立全双工的语音信道。pstn发言用户通过自己独享的全双工语音信道实现和移动互联网语音系统其他用户之间的双向实时语音交流。而拥有独享全双工信道的用户,必然在其他用户产品端需要显示其身份和状态信息,此时仍然是匿名用户则无法满足需求。所以这时ces需要首先和es通讯申请用户身份令牌(即:用户id,该id可以是临时分配占用,也可以是永久分配占用),之后通过该用户id为标识,像普通发言用户一样进入房间频道与其他用户交互。

es作为移动客户端app的接入服务器,提供tcp长连接服务,通过与app客户端之间约定的定制信令协议包进行业务交互。这些信令协议包结构化数据最终在网络上传输前会被序列化为二进制数据流。本例中,ivrs由于是外部的业务服务器,出于接口封装的考虑,不便于与es进行定制tcp长连接数据通讯,因此我们设计ivrs与es之间的房间频道列表信息数据获取采用业内广泛使用的http协议进行,降低对接难度。因此es可以内嵌http服务器功能,接收来自客户端的http请求并返回房间频道信息。也可以借助其他系统(如:数据库)转存数据,并通过传统的http服务器(如:nginx/apache/nodejs)实现数据获取服务。

图5是根据本发明优选实施例的融合公用电话交换网pstn的移动互联网语音平台系统的结构框图。如图5所示,该移动互联网语音平台系统包括:移动互联网语音平台,以及分别与上述移动互联网语音平台相连接的至少一个pstn接入端系统,其中,各个pstn接入端系统分别部署在一个机房。

图5中,移动互联网语音平台中,cms分别与es和cs相连接。pstn接入端系统中,ctis分别与ces和ivrs相连接,ivrs与web服务器相连接。web服务器通过http协议与es进行通信,cms与ces之间建立有传输信令的tcp信道,ces与cs建立有传输语音的全双工udp信道。

在优选实施过程中,pstn系统的用户,在ivrs/ctis配合控制下接入,通过web服务器的接口向es做鉴权认证,然后通过ces,向cms发起请求。cms建立虚拟用户,向cs索要分配的地址端口等信息,并回复给ces。然后,pstn系统的用户,通过ctis做为通讯接入,ivrs进行数据逻辑业务的管理,作为一个电话用户,在ces端,模拟成一个虚拟用户,通过cs在聊天室中和其他的用户进行通信。

图6是根据本发明实施例的融合pstn的移动互联网语音平台系统的通信方法的流程图。如图6所示,该融合pstn的移动互联网语音平台系统的通信方法包括:

步骤s601:在公用电话交换网(pstn)用户接入计算机电信集成服务器ctis之后,通过频道接入服务ces向频道管理服务器cms发送请求消息;

步骤s603:上述cms创建虚拟用户并请求加入频道服务器cs;

步骤s605:上述cms从上述cs获取地址端口信息,并向上述ces回复上述地址端口信息;

步骤s607:上述ces将上述地址端口信息发送至上述ctis。

在图1所示的方法中,pstn用户,在ctis接入,通过ces向cms发起请求。cms建立虚拟用户,向cs获取地址端口信息,并回复给ces,采用上述通信方法,在internet网络不可用场景下,用户对使用移动互联网实时语音通话产品又有强需求的情况下,实现了实时全双工语音沟通需求的目的,提供了pstn网络访问移动互联网语音平台的渠道。

优选地,在pstn用户接入计算机电信集成服务器(ctis)之后,在通过频道接入服务(ces)向频道管理服务器cms发送请求消息之前,还可以包括以下处理:通过web服务器的接口向接入服务器(es)发送鉴权认证请求;在上述es对上述pstn用户认证通过后,上述ces发起上述请求消息。

优选地,在通过频道接入服务(ces)向频道管理服务器(cms)发送请求消息之前,还可以包括:上述ces接收注册节点指令,其中,上述注册节点指令是客户端应用层通过调用嵌入上述ctis的libces模块接口传输的;上述ces创建与上述cms的传输控制协议tcp通道连接并管理连接对象,并将上述注册节点指令传输至上述cms;上述cms维护上述tcp通道连接,在接收到上述注册节点指令后记录注册节点信息,将注册结果返回至上述ces;上述ces将上述注册结果返回至上述ctis的libces模块。

以下结合图7进一步描述上述优选实施方式。

图7是根据本发明优选实施例的ces节点注册的时序图。如图7所示,该ces节点注册流程主要包括:

步骤s701:客户端应用层通过调用libces共享库接口。

步骤s703:传递指令到ces服务器,通知ces向cms注册。

步骤s705:ces创建与cms的tcp连接,并将该连接描述符进行保存。

步骤s707:在tcp通道上发送注册指令包。

步骤s709:cms监听来自网络的连接请求,接收到tcp连接请求后处理并维护该连接,同时,在该信道上会收到来自ces的注册指令包,cms记录注册节点信息,并返回注册结果指令包。

步骤s711:ces在收到注册结果包后,维护内部状态,并将该信息转发通知到libces。

优选地,上述ces向上述ctis发送音频信息可以进一步包括:上述ces接收来自于上述cs的下行音频数据;上述ces与rtmp服务器建立连接,并接收来自于上述rtmp服务器的背景音乐数据;上述ces确定上述背景音乐数据的采样率是否与上述下行音频数据的采样率一致,如果不一致,对上述背景音乐数据执行重采样;在采样率一致的上述背景音乐数据与上述下行音频数据混音后直接传输至嵌入上述ctis的libces模块,并同步至pstn中继线路上。

图8是根据本发明优选实施例的房间音乐uri改变及音频混合的流程图。如图8所示,该房间音乐uri改变及音频混合的流程主要包括:

步骤s801:ces接收到频道背景音乐状态变更通知stru_cms_ces_music_rtmp_chg_id;

步骤s803:ces判断是否连接有rtmp服务器。如果是,执行步骤s805,否则,执行步骤s809。

步骤s805:ces断开与原来rtmp服务器的连接。

步骤s807:ces清空音乐缓冲buffer。

步骤s809:设置新的rtmp频道信息。

步骤s811:ces重新与新的rtmp服务器取得连接。

步骤s813:ces与rtmp服务器取得连接后,订阅指定频道的背景音乐数据。

步骤s815:ces解码音乐数据为pcm数据流。

步骤s817:ces接收来自于cs的下行音频数据。

步骤s819:ces判断背景音乐数据的采样率是否与下行音频数据的采样率一致,如果不一致,执行步骤s821。

步骤s821:对背景音乐数据执行重采样。

步骤s823:将采样率一致的上述背景音乐数据与上述下行音频数据进行混音。

步骤s825:将混音后的音频数据直接传输至嵌入上述ctis的libces模块,并同步至pstn中继线路上。

社交应用程序一般都设置有音乐功能,便于用户在聊天房间里营造各种氛围,通常采用rtmp协议进行歌曲频道的分发及订阅功能。为每一个房间分配一个独立的音乐频道,客户端访问rtmp服务器时,传递该音乐频道id,便可以上传分发和下载订阅该音乐频道的歌曲数据。

移动互联网app客户端在接收到聊天室房间音频数据的同时,也会连接并接收音乐服务器下发的音乐数据,并根据解码后的音乐数据格式确定是否需要重采样。重采样后的音乐数据会与聊天室音频信息混音并输出到音频数据接口供用户收听。

上述移动互联网语音平台系统也存在与该rtmp模块的对接,只是以上工作全部封装在ces进行,混音后的数据直传到libces,并同步到pstn数字中继的e1线路上,此时,pstn电话端能够收听到混音后带背景音乐的音频信息。

优选地,上述通信方法还可以包括:上述pstn接入端系统的互动语音应答系统ivrs响应上述pstn用户的操作,当上述pstn用户选择进入移动互联网语音平台的房间频道时,将从es获取到的房间频道信息传入上述ctis,以使上述ctis将上述pstn用户加入上述房间频道;当上述pstn用户通过操作选择旁听房间频道时,上述ces通过为上述pstn用户专门建立的虚拟用户单工通道接收房间频道的音频数据并下发至上述ctis;当上述pstn用户在旁听房间频道过程中通过操作选择发言时,上述ctis取消对上述pstn用户的单工通道下行音频数据的订阅,调用上述libces模块的接口创建全双工通道,其中,上述全双工通道用于接收来自于上述房间频道的下行音频数据,并用于发送上述pstn用户发言的语音数据。

在优选实施过程中,上述pstn接入端系统的互动语音应答系统(ivrs)控制pstn电话拨入后,根据ivr语音指引用户按键进入对接操作流程。用户操作按键,ivrs与ctis对接获取到用户响应,并作出下一步逻辑层处理。最终ivrs控制ctis进入某一语音社交app平台的房间频道。ivrs中设计的房间进入ivr流程还可以进一步扩展。例如,根据用户会员号、频道号等唯一标识能够找到该用户或指定用户的房间并进入使用。

电话用户拨打ivr系统专有的服务号码进入ivr流程系统。然后在ivr系统语音提示按键指引下进入聊天房间,默认以旁听身份收听聊天室的音频内容。例如,在主持模式下房间,当用户按1号键,ivrs语音提示“您的申请已发送,请等待主持人安排,2号键取消发言申请”,当用户按2号键,系统判断是否有发言申请,如果有,语音提示“您的发言申请已取消”,如果无,不做任何提示处理。当用户按0号键,语音提示用户“退出聊天室,返回上层菜单”。

用户选择旁听房间时,播放的是ces与cms/cs之间为pstn用户专门建立的虚拟用户单工通道接收的音频数据。具体地,每个聊天室如果ctis上有多位pstn用户,ctis通过libces控制ces与cms/cs只产生一次信令连接,下发一份音频数据并在ctis内部进行成员管理和音频数据订阅分发。

用户在旁听聊天室中可以随时通过按键发言,此时ctis会取消对该房间虚拟用户的单工通道下行音频数据订阅。然后调用libces接口重新创建自己独享的全双工通道,用于接收自己收听的房间音频信息,并通过该通道发送自己的发言语音数据。

用户在发言状态下也可以随时按键取消发言,此时,出于用户体验考虑,并不会立刻断开全双工独享通道,而只是停止上行语音数据的开关。随后,如果用户还想发言系统只是打开上行语音数据的开关而已。当然,出于根据用户数量考虑,如果申请发言用户取消发言(关麦)情况较多,还需要进一步确定切换至订阅虚拟用户下行单工通道音频数据模式工作的时间,并关闭全双通通道,以节省流量。

综上所述,借助本发明提供的上述实施例,将公用电话交换网(pstn)接入移动互联网语音平台,形成融合pstn的移动互联网语音平台系统,采用该系统,在internet网络不可用但用户对使用产品又有强需求的情况下,能提供pstn网络访问平台的渠道,实现实时全双工语音沟通需求的目的。该系统实施后,能够有效提供更多的访问途径给终端产品用户。同时,也可以利用本技术对接市面上存在的一些基于纯pstn电话网络建设的语音社区,丰富这些语音社区的产品内容,搭建出封闭的传统pstn语音交流社区与移动互联网用户对接的系统平台,扩大产品用户面,丰富人们的沟通渠道。

以上公开的仅为本发明的几个具体实施例,但是,本发明并非局限于此,任何本领域的技术人员能思之的变化都应落入本发明的保护范围。

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