总体设计
本聊天室系统采用了c/s形式。服务器主要是处理客户输入信息。首先要存储客户的个人资料,相当于注册。再有,在客户的聊天信息时,也要记录下客户的聊天记录,已备查看聊天记录所用。当然,服务器还有自己的动态数据处理。客户状态分为链接客户和非连接客户,我采用结构体存储链接客户信息,以链表来记录链接客户。而链接客户又分为登陆客户和未登陆客户,这就通过修改链表上客户的名字。当客户一链接客户服务端时,就给客户一个账号,也就是相当于注册信息,同时并发服务器一直在为连接用户创建线程。
本聊天室登陆界面
1.登录
2.注册
3.退出
登录
登录的账号必须注册,帐号密码必须匹配都对,登录的账号必须不在线
注册
注册账号id必须和已有的不同,注册时填写账号,密码以及昵称
退出
退出程序
登录成功后可以使用功能
你可以使用的功能如下\
1.查找好友
2.显示好友
3.删除好友
4.添加好友(需要先发送申请好友请求,对方同意才能添加,也有回复信息提示)
5.查看或修改个人信息
6.与好友发送私信 (不在线也能发)(消息都会有发送时候的时间显示)
7.群聊 (能查看当前参与群聊的有多少人,账号和昵称分别是多少)
8.与好友聊天窗口(屏幕分区输入输出) (屏幕上半部输出双方聊天信息,下方输入信息,类似QQ界面)
9.在线查看聊天记录
10.从服务器下载本人聊天记录
open.查看是否有新消息 (类似好友请求,好友私信等,如不看会保存,下次上线再次提示)
11.退出
4.添加好友功能,如果对方在线,发送消息,如果对方不在线,保存消息,对方上线再发送,直到对方选择添加或拒绝添加消息才清除
账号8与789之间演示
发送之后对方需要输入open查看信息,(也可以不看,但消息一直在)
下图是789账号的界面
同意或者不同意
对方账号能收到反馈
6.与好友发送私信
此人必须为好友