第一范文网 - 专业文章范例文档资料分享平台

Linux下基于C++语言开发的即时通信软件毕业设计

来源:用户分享 时间:2025/7/13 1:18:00 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

图3-1 服务器功能示意图

3.3.2 客户端端功能模块划分

客户端主要负责处理用户的操作信息,当用户做出相应的动作时客户端应该能够及时地做出相应,当GTK图形程序检测到鼠标点击时,将触发一个事件,对该事件进行动作的定义和函数的编写便可完成相应的动作。因此,针对这些操作特性,将客户端模块进行如下划分:

登陆功能模块:建立与服务器的连接并登陆,能显示登陆错误信息。 界面显示模块:将在线好友显示在好友列表中,并显示其当前状态。 聊天功能模块:处理各种聊天信息,并判断消息类型。 离线消息模块:接收和发送离线消息,对离线消息进行处理。 配置信息模块:提供基本的软件配置操作。 客户端功能示意图:

客户端 登陆到服务器 配 置信息模块 离 线消息模块 聊 天功能模块 界 面显示模块

图3-2 客户端功能示意图

11

3.3.3 消息标识定义

消息头,包含发送者,信息内容,接受者,发送时间 struct message {

string sender; string mes; string receiver; string time; }

用户信息,包含姓名,密码,头像 struct userinfo {

string name; string pwd; string picpath; }

好友列表 sequence < string > frilist 消息队列

sequence < message > messagelist 用户-用户信息

dictionary < string, userinfo > userinfolist 用户-好友列表

dictionary < string, frilist > userfri 离线消息

sequence < message > offlinemessage 在线用户 sequence < string > liveuser

12

3.3.4 服务器接口函数

在slice语言中,定于服务器接口funcpp,该接口提供以下操作: 登入系统

int Logins (string name, string pwd); 注册用户

int Regists (string name, string pwd, string picpath); 获取用户名

int Getusername (string name); 获取用户头像

string Getfripic(string name); 获取好友列表

frilist Retfrilist(string name); 添加好友

int Addfriend(string name,string friname); 删除好友

int Delfriend(string name,string friname); 将用户信息写入文件 int Writeofflinemesfile(); 读取文件中用户信息

offlinemessage Readofflinemesfile(); 发送消息

int Sendmessage(string recverrname,string sendername,string message,string sendtime); 发送离线消息

int Sendofflinemes(string recvername,string sendername,string message,string sendtime);

获取消息

message Getmessage(string recvername,string sendername);

13

获取是否在线 int Getstat(string name);

获取消息数量 int Getmessagenum(); 获取系统消息数量 int Getsysnum(); 获取系统消息

message Getsysmessage(string recvername); 获取当前时间

char* currenttime(char* curtime, const char* format); 添加日志 void writelog(string s); 用户在线 int Loginser(string name); 离线用户 int Logoutser(string name);

14

Linux下基于C++语言开发的即时通信软件毕业设计.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c8intj3rcnj6b8ve00zsa83uyx9681900vam_4.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top