摘要:随着互联网技术的飞速发展,基于网络的即时通信给人们带来诸多便利,也成为当今网络应用的主流。聊天工具作为当今使用最为广泛的即时通信工具之一,可以方便人们随时随地进行在线交流,比如腾讯公司的QQ聊天软件。本毕业设计就是模拟QQ聊天软件,开发一个包括文字聊天、文件传输、语音及视频交流等功能的聊天软件。本设计的开发采用C/S结构,在基于.NET开发环境下,使用C#编程语言进行本软件的开发。本文首先论述国内外聊天工具的发展情况和现今的发展方向,并对开发环境和开发语言进行了简单介绍;对本设计所要开发的多功能聊天软件作了较为详细的需求分析,并给出了多功能聊天软件的设计方案,主要功能包括文字聊天、文件传输、语音聊天及视频聊天等;本毕业设计主要实现的是多功能聊天软件的部分功能,即语音聊天、视频聊天等功能,主要实现用户注册、用户登录、用户之间语音、视频聊天功能;与另一位同学开发实现的文字聊天与文件传输模块集成在一起,构成一个实用的、功能完善的聊天软件,达到预期目标;通过运行、测试与分析说明,该多功能聊天软件运行稳定、可靠,具有一定的实用价值。
关键词:
聊天软件;视频聊天;语音聊天;C/S结构;QQ聊天软件
此聊天软件系统是模拟现今国内最为流行的即时性通讯工具QQ而设计的,能够实现注册、登录、添加好友、文字聊天、文件传输、语音聊天、视频聊天等功能。该聊天软件系统是采用C/S结构,即客户端与服务器端的结构体系。基于对该聊天软件功能的分析,本文分别对客户端与服务器端进行了设计。该聊天软件服务器端的功能是实现对客户端提交的用户信息进行处理。服务器设计内容包含:信息接收、注册、登录、刷新、更新、添加好友等。“信息接收”是提供服务器接受客户端发送信息的功能;“注册”是服务器端接受到用户的注册信息请求后,将请求信息写入到数据库,为用户的注册提了相关服务;“登录”是服务器通过验证登录信息来实现相关的服务;“刷新”是对服务器的更新数据每过一段时间进行一次刷新,来显示用户当前在服务器的信息状况,如在线状态等;“更新”是服务器对用户在数据库中信息进行相关的操作;“用户退出处理”是服务器在用户退出聊天系统后作出的相关处理工作;“好友添加”是服务器对添加的好友信息进行处理等相关操作。客户端即用户使用的应用程序端。用户通过该聊天软件的客户端来实现网上聊天的相关功能:注册、登录、添加好友、文字聊天、文件传输、语音聊天、视频聊天等。注册功能是提交用户相关信息以及获得一个属于自己登录该聊天软件系统的用户ID号;登录功能是实现验证用户信息与合法使用该聊天软件系统的权限;添加好友是实现用户之间好友添加的操作;添加好友成功后,就可以与好友之间开始文字聊天、文件传输、语音聊天、视频聊天等功能。 ① 操作系统:windows2000或windows2003;③ CPU:Intel(R) Celeron(R) 2.0GHz或AMD 1800+以上均可;④ 其它:Microsoft .NET Framework SDK。① 操作系统:windows XP或windows2003等;③ CPU:Intel(R) Celeron(R) 2.0GHz或AMD 1800+以上均可;第一次使用系统的用户通过填写个人信息来注册,服务器返回一个注册ID号给注册用户,用来登录。已经注册的用户在登录界面填写完相关登录信息,通过服务器的验证后就可以进入客户端界面。在线用户在添加好友时可以查看所要添加用户的列表信息。当对要添加的好友发送请求添加的信息后,由该好友验证是否通过请求,同意后会向请求方发送同意添加的消息。当请求方添加完成后,服务器端会把相关信息存入到好友表的数据库中。完成以上操作以后,两人即可进行在线聊天。
多功能聊天软件的设计方案:
3.1 聊天系统流程的分析与设计
此聊天软件采用了C/S结构,其系统流程图如图1所示,使用这个聊天系统软件的用户必须先进行注册。用户首先选择注册选项,填写相关的注册信息,然后通过网络提交给服务器,再由服务器将注册信息提交给数据库。同时服务器会按顺序生成一个登录ID号返回给注册用户,这样注册就完成了。完成注册的用户可以用返回的ID号和自己注册时填写的密码进行登录。用户将登录信息提交给服务器,服务器根据数据库中的注册信息与登录信息进行比较,比较一致后,则进入系统的客户端应用程序模块。这时你要与好友进行聊天,则必须添加好友:进行用户2添加用户N为好友的操作过程中,用户2首先向用户N发出添加好友的请求信息,当用户N接受到用户2的信息,在通过验证后会发送确认反馈信息给用户2,并且向服务器提交好友添加确认信息,这时服务器就会更新相应用户的好友列表中的信息。好友添加完成后,用户之间就可以进行彼此之间的通信,如文字聊天、视频聊天、语音聊天、文件传输等。以上为多功能聊天软件系统的总体流程图,其中包括了登录模块、注册模块、添加好友模块、服务器模块、数据库模块等。在这个多功能聊天软件系统开发设计与实现中,本人主要负责登录模块、注册模块、语音聊天与视聊天功能模块的设计与实现。下面就对登录模块与注册模块的流程进行了分析。
3.2 注册模块的分析与设计
用户通过填写注册相关的信息并将其提交给服务器,服务器将用户填写的相关信息存入的数据库中去,同时在按顺序自动生成一个ID号,发给注册用户,表明注册成功,此ID号就为用户登录帐号。图2所示为其系统结构图。
3.3 登录模块的分析与设计
用户在注册获得ID号码后,在登录界面填写ID号码和密码并提交给服务器,服务器通过用户提交过来的信息和数据库中原有的用户信息进行比较和验证,如果结果一致表明验证成功,用户进入到客户端的系统界面下,如果不一致,给用户返回登录错误信息。登录系统流程分析图3所示。本设计主要完成的是视频聊天、语音聊天模块,以及登录、注册模块,下面对其设计与实现进行详细的说明
系统部分页面展示: