首页 > 范文大全 > 正文

基于Java技术网络电话系统的设计与设想

开篇:润墨网以专业的文秘视角,为您筛选了一篇基于Java技术网络电话系统的设计与设想范文,如需获取更多写作素材,在线客服老师一对一协助。欢迎您的阅读与分享!

摘 要:Java技术拥有可移植性、安全性和支持可视化图形界面等诸多特点,同时还能实现在不同平台的面向对象的编程语言。本文基于利用java技术的特点对网络电话系统进行设计

关键词:Java技术;网络电话系统;设计;设想

中图分类号: 文献标识码:A DOI:10.3969/j.issn.1003-6970.2013.07.036

本文著录格式:[1]谢於洪. 基于Java技术网络电话系统的设计与设想 [J].软件,2013,34(7):106

0引言

Java是一种多层结构模型,较C/S结构模型具有更加强大的技术功能。在此基础上,著名的太阳公司提出了一种更强大的模型即为Java EE。它的主要特点是在于其中间层存在着多层应用程序,通过Enterprise JavaBeans的作用来实现其中的中间层商业功能。Java技术拥有可移植性、安全性和支持可视化图形界面等诸多特点,同时还能实现在不同平台的面向对象的编程语言[1]。本文基于利用Java技术的特点对网络电话系统进行设计。

1基于Java技术网络电话系统的系统流程

系统主要工作流程主要分为挂机监听、摘机、拨号连接初始化、通话、挂机、响铃等。当程序初始化后是以挂机监听的状态存在,用户摘机后,就可实现拨号或挂机,此时,监听对象销毁。在选择拨号时,如果所拨号码不存在,则返回摘机状态,若果号码存在,而连接不成功,则返回摘机状态,如果成功连接,则等待回复。当接收方受到拨号方的连接,则会有响铃产生,此时如果接收方不摘机,响铃在播放一定时间后会停止,系统返回监听状态,如果接收方摘机,则拨号方和接收方可建立起通话。在通话过程中,如果一方挂机,系统变返回监听状态,通话结束,另一方同样也返回监听状态[2]。

2基于Java技术网络电话系统的实现

基于Java技术网络电话系统的实现所涉及的内容非常复杂,在此主要对信令的执行、一步对话的设计、语音的采集与播放、数据传输的实现。首先,信令执行的实现,如果当系统处于挂机监听状态,一方接受另一方请求时,请求中会由java. io. Data Output Stream发送一些语音质量参数,所发送是参数是由连接方的配置文件来进行确定。如果接受方做好准备向请求方发送回复,则该回复可在配置文件中进行设置。当系统数据初始化结束以后,则接收方的响铃将会播放,响铃由cn. fu.l mater789. Sound Play进行管理,铃声文件也是通过配置文件来进行相应的设置[3]。

其中taimeout表示铃声播放超时,主要用于系统配置时间超过时间而没有接听电话。Socket则实现向关闭,进入监听状态,thread. sleep(timeout)可实现,在接收方未接听电话,而对未接时间的控制,thread. interrupt()能实现对未超接电话时间进行控制。

其次,异步对话的设计,网络语音通信中,接收方与请求方是通过异步通话的方式来进行交谈。在异步通话系统中运用Java的Exception机制,该系统分别处于cn. fu.lmater789.ListenFrom和cn. fu.l mater789.TalkTo中。听需要播放声音,其构造函数为ListenFrom lf=new ListenFrom(sock, pl);其中sock为Socket的对象, pl为PlayBack的对象。听所受到的声音,其构造函数为TalkTo tt=new TalkTo(sock, cap);其中Sock为Socket的对象, cap为Capture的对象。基于Java技术网络电话系统的语音采集主要通过JavaSound来实现[4]。

再次,数据传输的时间,实现网络电话系统的数据传输主要程序有ServerSocket listen = new ServerSocket( 5000 ) //、Socket sock1=listen. accept( ) //、Socket sock2=new Socket( InetAddress. getByName(d127.0. 0. 1d), 5000) //、getInputStream( )和getOutputStream( )。基于Java技术网络电话系统,所需要考虑的因素较多,在对差错进行处理时,常采用的方式异常处理。

3结语

Java技术拥有诸多优势,通过借助Java技术能实现网络语音电话系统,通过信令的执行、一步对话的设计、语音的采集与播放、数据传输等的设计来实现语音通话功能,经测试,该系统具有延时小,通话质量稳定的良好特点。

参考文献

[1]谭昊勋,龙海洋,李响,李满春,易虹,陈刚,吴国平. JAVA语言实现现代操作系统下的多线程同步控制研究[J]. 计算机应用研究. 2012(07) :123-124.

[2]赖碧云,李小丹,章少强. 网络数据库系统开发中JDBC的应用[J]. 现代计算机(专业版). 2011(01) :203-204.

[3]王美清,郑文波,郑守淇. 基于JavaRMI的分布计算系统[J]. 小型微型计算机系统. 2012(09):332-335.

[4]苏洋,李增智,李国莉,寇亚楠,陈春曦,孟静. 基于Java的进程间异步通信系统的设计与实现[J]. 计算机工程与应用. 2012(14):107-108