欢迎来到天天文库
浏览记录
ID:49405589
大小:79.00 KB
页数:6页
时间:2020-03-01
《[精品]MyIM系统分析.doc》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、MyIM系统实现目标:完成基木通信功能注册登陆添加好友聊天传送文件查找用户好友上下线通知通信协议消息:同步消息,异步消息同步消息:登录消息,注册消息。异步消息:文木聊天消息,文件传输消息,退出消息,好友上下线通知消息消息的格式:消息头+消息体消息头由消息总长、消息类世、消息接收者、消息的发送者四部分组成。消息体包含说有要传达的信息。通信协议分析通信数据格式协议消息数据类型定义类型说明Byte用于表示消息类型,一•个字节的整数UnsignedInteger网络字节顺序OctetString定长字符串,不足在右边补齐二进制0/0消息类型消息
2、类型标志值描述1注册请求消息0x01客户端发送注册请求数据给服务器2注册应答消息0x11服务器返冋注册结果3登录请求消息0x02客户端发送IM号码和密码的消息请求登录4登录应答消息0x22服务器返回的登录结果应答消息5在线好友列表消息0x03服务器发送给登录成功客户端的其他好友列表消息6好友上线消息0x04服务器发送通知某用户好友上线消息7好友下线消息0x05服务器发送通知某用户好友下线消息8聊天消息发送0x06客户端发给服务器或服务器发给某客户端的文本聊天消息9文件传送消息0x07客户端发给服务器,或服务器发给某客户端的文件数据传送消
3、息10杳找在线用户消息0x08客户端发给服务器杏询在线用户的消息11查找在线用户应答0x18服务器应答客户端的查找消息结果12添加好友请求0x09客户端发给服务器请求加好友消息,或服务器发给被添加用户的加好友的请求消息13添加好友应答0x19服务器应答客户端加好友的结果其他待定待定消息整体结构规则结构说明MessageHead消息头所有消息公共的消息头MessageBody消息体各种消息的消息体不同消息头规则字段名数据类型字节数描述totalLenint4消息字节总长包含消息头总长度typebyte1消息类型destint4消息目的地消
4、息发送给谁srcint4消息源谁发送的消息具体消息结构定义注册消息体结构字段数据类型长度描述nikeNameOctetString10注册用户昵称passwordOctetString10注册用户密码注册的时候,消息头中的dest值为服务器的IM号码注册应答消息体结构字段数据类型长度描述stateOctetString10服务器返冋的注册结果应答,0为成功,消息头屮的d巳st值为注册成功的IM号码;非0为注册失败。登录请求消息体结构f录应答消息体结构字段数据类型长度描述pwdOctetString消息总长减去消息头长度登录用户的密码字段
5、数据类型长度描述statebyte10:成功1:账号错误2:IP验证失败好友列表消息体结构字段数据类型长度描述listCountbyte1好友分组个数ListCountlistNameOctetString10一个分纟R的名字bodyCountbyte1本组内有多少个用户组内的bodyCount个好友bodyNumint4组内一个好友的IM号nikeNameOctetString10好友昵称如果有多纟fl,示面的结构同listCount个分组数据部分字段数据类型长度描述msgContentOctetString消息总长减去消息头长度聊天
6、的消息内容文件传送消息体结构字段数据类型长度描述filenameOctetString10传送的文件名字fileDatabyte总长•消息头长(13)-256文件内容查找在线用户应答消息体结构字段数据类型长度描述userCountint4用户数量userCount个用户数据nikeNameOctetString10一个用户的昵称IMNumint4一个用户的IM号码如果有userCount个用户,后面的结构相同添加好友请求消息体结构字段数据类型长度描述IMNumint4要添加的好友的IM号码添加好友应答消息体结构字段数据类型长度描述IMN
7、umint4被添加的好友的IM号码nikeNameOctetString10被添加的好友的昵称
此文档下载收益归作者所有