1、开开 题题 报报 告告 题 目 企业内部聊天软件的设计与实现 指导教师 分院 专业 班级 学生姓名 学号 开题日期 一、选题的背景与意义 随着信息时代的到来,互联网的发展与普及使得越来越多的人习惯了即时通讯的 实时交互;即时通讯具有方便、快捷、实时等优点,而且资费低廉,也是很多人选择 使用的重要原因。 但是随之带来的了一些问题,如员工在上班时使用即时通讯软件办私事等,而影 响了工作效率及企业信息安全。如果选择关闭即时通讯端口,那无疑增加了员工的沟 通时间和沟通成本。 显然,为了提高企业的办公效率,并降低通讯成本,为企业量身定做的即时通讯 软件是十分必要的。 而作为企业即时通信管理系统中的一部分
2、,即时通讯子系统,不仅提供了方便、 快捷、实时、廉价、安全的企业内沟通方式,更完善了企业内部整体通信系统的功能。 二、研究的基本内容与拟解决的主要问题: 使用 C#作为开发语言, SQL SERVER 作为数据库, 并介于 TCP 协议架构, 以 C/S 模式实现,而服务器和客户端提供不同的功能。 客户端主要功能如下: 1.客户端向服务器的新用户注册功能。 2.客户端与服务器端之间的通信功能。 3.客户端之间的短信发送功能。 4.客户端之间的文件传输功能。 5.客户端网友分组的管理。 6.客户端添加/删除好友。 8.在客户端存储好友资料和聊天记录。 9.客户端个人资料的编辑。 服务器端主要功能
3、如下: 1.服务器端存储 JICQ 用户表、好友列表、离线消息。 2.接受来自客户端的信息。 3.转发客户端的消息。 好友间通讯支持一般的双方同时在线通讯和一方离线后留言通讯两种方式。服务 器端保存所有通讯记录在数据库中,而数据库中的聊天记录表拥有“已读列” ,接受信 息的一方客户端接收了消息, 那么在该列中标记已读, 反之则视作离线消息标记未读。 客户端仅保存关于本地登录的账号通讯记录。 客户端文件传输以服务器中转方式实现, 发送方客户端先将文件上传到服务器后, 再由服务器通知接收方客户端,如果接收方客户端同意接受,服务器端再将文件发送 给客户端,然后从服务器文件备份中将其删除。 客户端在登
4、录时,从服务器接收该登录账号的所有好友信息,然后分组显示在客 户端界面中。用户可以对其中的好友进行分组管理,分组为我的好友、陌生人、黑名 单,用户可以删除或添加好友,管理后的数据将返还给服务器,并写入数据库中。 客户端提供个人信息编辑功能,允许用户修改如头像、签名等个人信息,并将修 改后的数据上传给服务器端写入数据库中。 服务器和客户端之间采用 TCP 的双线连接,即服务器端先开启一个端口监听,由 客户端与其连接,然后客户端再开一个端口监听,客户端通过之前的连接将自己开放 的端口和 IP 发送给服务器,服务器端在收到相应信息后,由服务器端与其连接。这样 确保了双方信息交换的自由、安全、通畅。如果仅单线连接,容易出现一端无限等待 消息或一端无限发送消息,而陷入死循环中。同时在客户端增加端口是否已经被占用 检测,如已被占用则更换一个端口,以实现多客户端在同一 IP 下的同时运行。 三、研究的方法与技术路线: 该软件选用 C#作为开发语言,SQL SERVER 作为数据库,并介于 TCP 协议架构, 以 C/S 模式实现。 C#作为一种面向对象语言,在继承、重载、接口等十分方便