系统功能说明图
①web-talk即时通讯系统执行者
a) Client:web-talk登录端,使用web-talk进行即时通讯的人 b) Server:web-talk服务端,对用户进行注册、登录、资料管理的角色 c) DBServer:web-talk数据库服务器,保存用户数据的角色 d) MsgSender:端对端传输消息或这文件时的发送端 e) MsgReceiver:端对端传输消息或者文件时的接受端 其中,MsgSender和MsgReceiver从属于Client ②web-talk即时通讯系统用例说明
a) 注册:使用者通过注册成为web-talk用户; b) 登录:连接服务器获得服务;
c) 更改状态:更改自己在服务器的状态,状态分为:在线、隐身; d) 更改资料:更改自己的资料并保存在数据库服务器; e) 查找好友:从服务器获得好友信息;
f) 传输信息:传送文本信息或者富文本信息给好友;
g) 退出系统:从服务器退出,取消服务;
4.4系统模块设计
4.4.1注册模块
注册用例实现了实现用户注册、登录、退出、更改状态等功能
图4-4-1注册用例图
注册用例图用例说明: ①填写注册信息 ②检查信息格式 ③新注册申请 ④传输注册数据 ⑤生成新帐号 ⑥添加新用户命令
⑦在数据库中添加新用户
4.4.2登录模块
登陆模块实现了用户登陆信息的输入、验证、从数据库中调用数据等一系
列功能
登录用例图
登录用例图用例说明: a) 输入登录信息 b) 发送登录请求 c) 验证登录信息 d) 传输好友列表 e) 刷新在线用户列表 f) 通知好友上线 g) 改变好友状态 h) 读取用户数据命令 i) 从数据库中读取用户信息 4.4.3传输信息模块
传输信息模块实现了文本信息的发用和显示功能
传输信息
用例图
在线传输信息用例图用例: a) 选择发送内容 b) 传输信息 c) 显示信息 4.4.4退出系统模块
退出系统模块能让用户的安全退出,数据库用户状态的更改,好友状态变更的功能
退出系统用例 a) 退出web-talk
b) 发送退出消息 c) 刷新在线用户列表 d) 通知好友下线 e) 改变好友状态 f) 更改用户状态命令
g) 在数据库中更改用户状态数据
为了实现发送消息的功能,在服务器端代码中需要定义Ajax方法SendMessage,具体代码如下:
[AjaxMethod()] public void SendMessage(string strUsername, string strContent) { // 数据连接 SqlConnection conn = new SqlConnection(ConfigurationSettings.AppSettings[\// SQL命令 SqlCommand cmd = conn.CreateCommand(); cmd.CommandText = string.Format(\User.Identity.Name, strUsername, strContent); try { // 打开数据连接 conn.Open(); // 执行SQL,发送消息 cmd.ExecuteNonQuery(); } catch (SqlException) { } finally
然后在客户端编写getMessage函数,调用服务器Ajax方法进行消息的发送。