发明名称 基于VC++的局域网即时通讯系统和方法
摘要 本发明涉及一种即时通讯系统和即时通讯方法,该方法和系统实现了用户注册、用户登录、好友增删、查看好友资料、发送消息、群发消息、文件传送的功能。围绕即时通讯的基本文字交流功能,设计了管理在线用户,维护在线用户,实现文字通讯的文字通讯主服务器。为了减轻服务器的负载,客户端的基本文字消息的传递,首先利用UDP尝试P2P的传递,若失败则尝试从主服务器中转,此方案大大提高了服务器的处理能力和响应速度。
申请公布号 CN103368827B 申请公布日期 2016.04.06
申请号 CN201310271801.7 申请日期 2013.07.01
申请人 中国农业大学 发明人 高万林;肖颖;张晗;罗璇;韩孟
分类号 H04L12/58(2006.01)I;H04L29/08(2006.01)I 主分类号 H04L12/58(2006.01)I
代理机构 代理人
主权项 一种基于VC++的局域网即时通讯方法,包括:用户注册步骤、用户登录步骤、添加好友步骤、好友删除步骤、用户消息发送步骤、群组消息发送步骤、文件传送步骤、用户退出步骤,其特征在于:该用户注册步骤包括:用户填写注册信息,客户端检查信息格式,按照事先约定的消息格式封装数据,客户端向服务器端发送新注册申请,传输注册数据,服务器端生成新ID,服务器端在数据库中添加新用户,服务器端向客户端返回用户ID;该用户登录步骤包括:用户输入登录用户名、密码,客户端按照事先约定的格式封装消息,客户端发送消息,服务器端验证登录信息,服务器端返回登录合法与否信息,如合法则查询数据库返回该用户信息,服务器端传输好友列表,服务器端传输离线信息,服务器端刷新其他在线用户列表;该添加好友步骤包括:客户端按照事先约定的格式封装消息,客户端发送消息,服务器端解析消息,服务器端更新好友关系表并返回状态,如添加成功,客户端好友列表增加该好友;该好友删除步骤包括:客户端按照事先约定的格式封装消息,客户端发送消息,服务器端解析消息,服务器端更新好友关系表并返回状态,如删除成功,客户端好友列表删除该好友;该用户消息发送步骤包括:用户A向用户B发送消息,客户端按照事先约定的格式封装消息,若是第一次向用户B发送消息,则客户端将消息发送至服务器端,服务器端解析消息,若用户B在线,则服务器端向其转发消息,并向用户A返回用户B的IP地址,若用户B不在线,则服务器端将该消息存入离线消息表,并向用户A返回用户B离线的信息;若用户A不是第一次向用户B发送消息,则客户端直接将消息发送至用户B,不需要服务器端转发;该群组消息发送步骤包括:接收用户群组消息转发请求后,从数据库中读取该群组的成员名单,群组的所有成员逐个发送该群组消息,首先尝试直接轮循给每个成员点对点(P2P)的发送消息,当某个消息发送失败时再通过服务器转发;该文件传送步骤包括:当用户A和用户B发送过消息时,用户A已经知道用户B的IP地址,用户A直接把文件信息发送给B,如果直接发送失败,则由客户端向服务器端提出文件传送中转请求,以完成文件的传送;该用户退出步骤包括:用户退出后,客户端发送退出消息,服务器端更新数据库并刷新在线用户列表,服务器端通知好友下线,客户端改变好友状态。
地址 100083 北京市海淀区清华东路17号