详情

asp.net1053 基于socket的即时通讯工具开发与设计

项目介绍

摘要

即时通信工具在企业信息化过程中发挥着重要作用,使通信、管理和办公工作更加高效。因此,越来越多的企业尝试建立自己的企业即时通信工具,并根据自身业务的需求定制即时通信工具的功能。目前,大多数企业仍然使用个人即时通信工具,但是个人即时通信工具在企业的应用场景中有很多缺点。个人即时通讯工具在很多情况下,让员工处于非工作状态聊天,降低工作效率。购买和安装企业即时通讯工具也会遇到很多问题。由于不同的协议,不同的即时通信工具之间的互通需要复杂的转换,企业即时通信工具的建设和维护也很繁琐,这就增加了企业的成本。

本文介绍的系统是基于.NET开发平台的即时通讯软件,本文包括设计和实现的描述。即时通信软件是用C#语言开发的,同时,该软件还采用C/S架构,消息之间的通信也是基于UDP协议和Socket通信的。该系统包括服务器和客户端两个模块,客户端通过服务器进行通信,服务端模块主要实现在线记录并通知客户端,客户端模块主要实现即时通信和发送消息。该系统基本实现了即时通讯软件的基本功能,如客户的上下通知、文本会话、文件传输、通知消息和消息记录。

 

关键词:即时通讯  .net平台  C#语言

1 绪论

1.1 研究背景和意义

即时通信,作为能够即时发送和接收互联网消息的业务,从1998年开始即时通信已经在视觉领域出现,尤其是近年来,它不再局限于文本聊天在开发功能,增添了如电子邮件博客,数字多媒体和搜索功能。即时通讯不再是黑白的黑白世界,也不是人们之间的个人交流空间。它是信息与信息、娱乐共享、公共搜索、电子商务、办公合作和客户服务相结合,形成了一个新的多功能的科技新平台。因此,必须加快信息技术的发展,推进各领域的发展。

目前,大型软件公司在个人即时通信市场上竞争激烈,很多的优秀即时通讯工具开始出现,如腾讯的QQ和微信、谷歌的谷歌挂机、微软的Skype、阿里巴巴的旺旺和旺信等。即时通信工具有很多种,但大多数是内部定制协议,它们在没有协议转换的情况下无法进行通信。由于不同用户的倾向,他们的即时通讯产品往往是不同的。不同用户之间的通信通常需要一方安装另一方使用的即时通信工具,这造成了许多不便,并导致用户的计算机资源的浪费。

除了个人即时通信市场之外,近年来即时通信工具的需求也在增加。IEM企业即时通信更注重数据安全性、易用性、容错性和功能可扩展性。在提供安全可靠的数据通信服务的同时,可以根据不同的业务对即时通信工具进行私有化和扩展。随着互联网的迅速发展,越来越多的企业开始使用信息管理,企业即时通信工具已经成为企业内部管理和沟通不可缺少的工具之一。目前,许多大型企业使用私人即时通讯工具,但许多企业仍然使用个人即时通讯工具。个人即时通信工具在企业的使用环境中存在诸多弊端,个人即时通信工具通常集成娱乐和其他功能。他们可以与朋友在生活中沟通,这很容易导致员工脱离工作,降低工作效率。由于个人IM更广泛地面向用户,它通常发展成具有娱乐、办公和其他功能的平台。同时,个人即时通信难以为企业的私有化定制。

3.3 系统用例分析

通过对基于.NET开发平台的即时通讯软件系统需求的分析,可以得到该系统的主要参与者为普通用户和管理员二种角色,每个角色对系统有不同的操作权限,普通用户可以实现注册、登录,在线聊天,添加好友及好友上线提示等功能;管理员拥有整个系统的所有权限,同时还具备其它普通用户不具有的权限,如开启服务器和配置服务器等。该系统的用户用例图如下所示。

 

图3.1 系统用例图

 

3.4 工作流程分析

只有对本次实现的基于.NET开发平台的即时通讯软件系统的聊天程序进行充分了解,掌握其整个聊天的工作流程,才会能够更加深刻的理解,设计出合理科学的聊天系统。本聊天程序的工作流程如图3.2所示。

 

图3.2聊天程序的工作流程








4 平台总体设计

4.1 设计原则

从系统的可重用性和伸缩性二个方面考虑,本次设计的即时通讯软件系统,将应用系统和网络通信底层分离开来进行设计。

考虑到系统的可重用性和伸缩性,需要将本系统的网络通信底层和应用系统分离开。这样有利于可重用的网络通信层,实现其它各种实时性较高的应用系统。该即时通讯软件系统,将架构分为3个层次进行设计,其架构结构设计图如4.2所示。


 

图4.2架构层次图


从架构层次结构图中可以看出,Socket通信层为本项目的最底层,它主要的工作是负责客户端和服务器之间的通信,通过接口层和应用层实现数据快速交换,保持实时数据通信。用户通过客户端进入聊天系统时,需要完成统一的用户登录验证机制。在本系统的最底层(Socket底层)中分成了协议设计和连接处理设计二部分;接口层作为Socket底层和应用层之间的载体,设计必须简单不易复杂,以免影响数据传送效果。

4.2 平台设计目标

本系统的开发目标是开发一个关于提供在线进行通信的工具并使用C#语言实现大多数通讯工具都具备的功能,包含等功能,在基于socket的即时通信工具开发过程中,最主要的要求之一是开发一个好的系统,必须简单,易用。在简单实用的基础上,系统还要具有其他一些必要的要求。具体的设计要求包括下面几个方面:

设计好的基于socket的即时通信工具的性能必须稳定,整个基于socket的即时通信工具的运行必须有可靠的运行环境。基于socket的即时通信工具必须一定要有一定的安全性能,用户之间的通信信息是非常敏感和机密的信息,并且网络不能在使用时导致通信信息的泄漏,所以系统必须达到一定的安全级别。系统必须具有一定的灵活性来扩大需求。本系统可以设计具有一定基本编程接口的程序,在使用过程中,可以进行升级和维护简单的操作。程序必须易于使用,系统应具备系统维护工具的功能模块。没有专门的技术维护人员,系统也可以非常方便维护,达到省时省力,节省开支的目的。Windows Sockets实现通讯工作的各层关系图如下所示。


站长说明

       成品毕业设计 可以根据自己的要求, 自行浏览选购, 可以参考是否符合自己要求,找到满意的成品毕业设计 , 直接发送成品编号联系发你网址的工作人员进行交易,  我们会从QQ或者邮箱等方式发送毕业设计程序。

        我们团队 , 可以根据用户的功能要求量 身定制毕业设计程序 (同样联系发你网址的 工作人员) ,  需要用户提供详细的   , 功能要 求.开发技术要求(开发语言、开发工具、框 架等  ) . 我们会根据用户毕业设计的难易程 度 , 工作量大小等, 具体的给出一个报价,价格 协商一致过后,付下40%定金.我们开始开 发毕业设计, 做好过后先发送设计桌面演示录像 , 用户看后 满意付尾款, 我们再发程序源码压缩包!