实现VOIP代理的方法以及系统技术方案

技术编号:8108000 阅读:245 留言:0更新日期:2012-12-21 10:13
本发明专利技术提供一种实现VOIP代理的方法,其特征在于,包括如下步骤:S1:开始S2:服务器判断是否有客户端呼入请求,若是,所述服务器进行SIP请求处理,并发送SIP响应,转S5;若否,则转步骤S3:S3:服务器判断是否需要主动呼出,若是,则输入客户端号码,并对该号码发送SIP请求,执行S4;若否,则转S2;S4:判断所述号码是否响应,若是,则转S5;若否,则判断呼叫失败,转S2;S5:服务器与客户端间建立通话连接,执行语音数据处理与播放S6:通话结束。该方法,采用SIP协议来建立通话连接,利用SDP协议使用RTP协议来传输实时语音数据,并结合RTCP协议来反馈实时语音传输的质量,从而达到在局域网内机顶盒用户之间通话的目的。

【技术实现步骤摘要】

本专利技术涉及VOIP领域,属于工程应用领域,尤其涉及在机顶盒上实现VOIP的方法以及系统。
技术介绍
VOIP (Voice over Internet Protocol)简而言之就是将模拟声音讯号(Voice)数字化,以数据封包(Data Packet)的形式在IP数据网络(IP Network)上做实时传递。VoIP最大的优势是能广泛地采用Internet和全球IP互连的环境,提供比传统业务更多、更好的服务。VoIP可以在IP网络上便宜的传送语音、传真、视频、和数据等业务,如统一消息、虚拟电话、虚拟语音/传真邮箱、查号业务、Internet呼叫中心、Internet呼叫管理、电视会议、电子商务、传真存储转发和各种信息的存储转发等。VoIP (Voice over InternetProtocol)是一种以IP电话为主,并推出相应的增值业务的技术。VoIP最大的优势是能广 泛地采用Internet和全球IP互连的环境,提供比传统业务更多、更好的服务。VoIP相对比较便宜,为什么? VoIP电话不过是互联网上的一种应用,网络电话不受管制。因此,从本质上说,VoIP电话与电子邮件,即时讯息或者网页没有什么不同,它们均能在经过了互联网连接的机器间进行传输。这些机器可以是电脑,或者无线设备,比如手机或者掌上设备等等。为什么VoIP服务有些要收钱,有些却免费? VoIP服务不仅能够沟通VoIP用户,而且也可以和电话用户通话,比如使用传统固话网络以及无线手机网络的用户。对这部分通话,VoIP服务商必须要给固话网络运营商以及无线通讯运营商支付通话费用。这部分的收费就会转到VoIP用户头上。网上的VoIP用户之间的通话可以是免费的。使用VoIP,你需要做些什么?你需要有互联网连接。这可以是最基本的拨号上网服务,或者更理想的宽带服务,你的网络连接速度越快,VoIP的通话质量就越好。例如,高速宽带连接能够令你一面打电话,一面上网冲浪。用户可以选择一种VoIP软件安装至台式电脑或笔记本电脑上。然后,电脑就可以进行网上通话了。如果用户想要将自己的家庭电话转化为VoIP拨号系统,他需要适配器的帮助。VoIP软件可以单独预装在一种名为“模拟电话适配器”(analog telephoneadapter)的硬件设备中,模拟电话适配器主要安装于家庭电话与宽带调制解调器之间。随着电视技术的不断发展,数字电视信号已逐渐取代传统的模拟信号进入人们的生活。以机顶盒为数字电视接收终端的产品得到了广泛的应用,但传统的机顶盒只能实现单向的数字电视广播业务,已远远不能满足人们的需求。在国内,大部分用户都用上了有线电视机顶盒,有很大的用户基础。随着三网融合的开展和双向网络的改造,给VOIP这种双向业务提供了广阔的市场。基于网络的语音业务是时代发展的潮流,在机顶盒上应用VOIP成为一种趋势,是三网融合的必然产物。双向网络的改造,为数字电视机顶盒提供了广阔的市场和发展空间。数字电视机顶盒正朝着高清互动、智能开放以及多功能的方向发展。随着三网融合的不断推进,综合业务的跨网络传输将成为可能,使得移动设备、PC机、电视机等多种设备间能够进行通信。人们随时随地都可以通过不同的终端来呼叫对方,生活也将变得更加便捷。VOIP作为网络上的一种重要应用,基于网络的语音业务是时代发展的潮流,VOIP在机顶盒上的应用成为一种趋势,是三网融合的必然产物。目前,主流的信令协议有ITU-T提出的H. 323标准和IETF提出的SIP协议。H. 323标准是一个协议的集合体,规定了在无服务质量保证的分组网络上传输语音、视频和数据,适用于任何的分组交换网络。而SIP协议是一个单独的协议,与SDP协议协同使用,可以设置通话的属性,实现通话连接。
技术实现思路
本专利技术是为了实现一个机顶盒上的VOIP用户代理,能够实时监测用户的状态。为了解决上述技术问题,本专利技术采用的技术方案是提供一种实现VOIP代理的方法,包括如下步骤 SI :开始S2 :服务器判断是否有客户端呼入请求,若是,所述服务器进行SIP请求处理,并发送SIP响应,转S5 ;若否,则转步骤S3:S3 :服务器判断是否需要主动呼出,若是,则输入客户端号码,并对该号码发送SIP请求,执行S4 ;若否,则转S2;S4 :判断所述号码是否响应,若是,则转S5;若否,则判断呼叫失败,转S2 ;S5 :服务器与客户端间建立通话连接,执行语音数据处理与播放;S6 :通话结束。步骤S5中具体的包括语音数据的采集、语音编码、RTP封装、实时传输、RTP解包、语音解码以及语音播放;所述语音数据采集包括函数初始化,打开指定文件,通过解析文件头来获取音频的属性,再设置读取音频数据的状态,启动回调函数读取数据,输出到对立中等待进一步处理,每20ms取一次,读取完后设置读取数据的状态。最后,当读取的字节数少于规定的字节数,说明语音数据采集完毕。每次读取语音字节数的计算公式为Byte=2X(Δ t X f X count)/1000所述语音数据编码通过G. 711进行编码,执行语音数据的分析,包括语音数据的语音质量、语音编码速率、算法复杂度、编码延时以及兼容性;所述语音播放通过机顶盒的RCA音频接口连接电视机进行播放。所述实时传输,具体的包括语音数据的发送以及语音数据的接收;语音数据的发送的过程S611 :判断RTP发送是不是首次启动,如果是就设置RTP发送的第一个时间戳;S612 :设置RTP当前发送的时间戳,更新RTP的序列号和数据的大小;S613 :判断是否发送RTP包,若是,则调用发送接口发送语音数据的数据包;步骤S6中,语音数据的接收过程S621 :更新接收时间,调用接收接口;S622 :判断数据包的类型,添加到接收队列;S623 :延时抖动处理,更新数据包的RTP当前发送的时间戳;S624 :对接收到的数据包进行处理。步骤SI通过SIP与SDP协议完成如下操作Sll:系统初始化;S12 :参数配置及注册;S13 :创建检测线程。为了解决上述技术问题,本专利技术采用的一个技术方案是提供一种实现VOIP代理的系统,包括第一判断单元、第二判断单元、第三判断单元以及处理单元;第一判断单元, 用于判断是否有客户端呼入请求,若是,则进行SIP请求处理,并发送SIP响应;若否,则发出无呼入请求信息;第二判断单元,用于判断是否需要主动呼出,若是,则输入客户端号码,并向所述号码发送SIP请求;第三判断单元,用于判断客户端是否响应,若是,则向所述处理单元发送信息;若否,则判断呼叫失败,并使第一判断单元工作;处理单元,用于使服务器与客户端间建立通话连接,执行语音数据处理与播放。所述处理单元包括语音数据采集模块、语音编码模块、RTP封装模块、实时传输模块、RTP解包模块、语音解码模块以及语音播放模块;所述语音数据采集模块用于函数初始化,打开指定文件,通过解析文件头来获取音频的属性,再设置读取音频数据的状态,启动回调函数读取数据,输出到对立中等待进一步处理,每20ms取一次,读取完后设置读取数据的状态。最后,当读取的字节数少于规定的字节数,说明语音数据采集完毕。每次读取语音字节数的计算公式为Byte=2X (AtXfXCOunt)/1000所述语音数据编码模块用于通本文档来自技高网
...

【技术保护点】
一种实现VOIP代理的方法,其特征在于,包括如下步骤:S1:开始S2:服务器判断是否有客户端呼入请求,若是,所述服务器进行SIP请求处理,并发送SIP响应,转S5;若否,则转步骤S3:?S3:服务器判断是否需要主动呼出,若是,则输入客户端号码,并对该号码发送SIP请求,执行S4;若否,则转S2;?S4:判断所述号码是否响应,若是,则转S5;若否,则判断呼叫失败,转S2;S5:服务器与客户端间建立通话连接,执行语音数据处理与播放;S6:通话结束。

【技术特征摘要】
1.一种实现VOIP代理的方法,其特征在于,包括如下步骤 51:开始 52:服务器判断是否有客户端呼入请求, 若是,所述服务器进行SIP请求处理,并发送SIP响应,转S5 ; 若否,则转步骤S3 53:服务器判断是否需要主动呼出, 若是,则输入客户端号码,并对该号码发送SIP请求,执行S4 ; 若否,则转S2 ;54:判断所述号码是否响应, 若是,则转S5 ; 若否,则判断呼叫失败,转S2 ; 55:服务器与客户端间建立通话连接,执行语音数据处理与播放; 56:通话结束。2.根据权利要求I所述的实现VOIP代理的方法,其特征在于,步骤S5中具体的包括语音数据的采集、语音编码、RTP封装、实时传输、RTP解包、语音解码以及语音播放; 所述语音数据采集包括函数初始化,打开指定文件,通过解析文件头来获取音频的属性,再设置读取音频数据的状态,启动回调函数读取数据,输出到对立中等待进一步处理,每20ms取一次,读取完后设置读取数据的状态。最后,当读取的字节数少于规定的字节数,说明语音数据采集完毕。每次读取语音字节数的计算公式为Byte=2X(AtX f X count) /1000 所述语音数据编码通过G. 711进行编码,执行语音数据的分析,包括语音数据的语音质量、语音编码速率、算法复杂度、编码延时以及兼容性; 所述语音播放通过机顶盒的RCA音频接口连接电视机进行播放。3.根据权利要求2所述的实现VOIP代理的方法,其特征在于,所述实时传输,具体的包括语音数据的发送以及语音数据的接收; 语音数据的发送的过程 5611:判断RTP发送是不是首次启动,如果是就设置RTP发送的第一个时间戳; 5612:设置RTP当前发送的时间戳,更新RTP的序列号和数据的大小; 5613:判断是否发送RTP包,若是,则调用发送接口发送语音数据的数据包; 步骤S6中,语音数据的接收过程 5621:更新接收时间,调用接收接口 ; 5622:判断数据包的类型,添加到接收队列; 5623:延时抖动处理,更新数据包的RTP当前发送的时间戳; 5624:对接收到的数据包进行处理。4.根据权利要求I所述的实现VOIP代理的方法,其特征在于,步骤SI通过SIP与SDP协议完成如下操作 511:系统初始化; 512:参数配置及注册; 513:创建检测线程。5.一种实现VOIP代理的系统,其特征在于,包括第一判断单元、第二判断单元、第三判断单元以及...

【专利技术属性】
技术研发人员:程建汪桃林肖忠毛泽杰
申请(专利权)人:电子科技大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1