通信协议
指令格式
| 固定头 | 命令类型 | 内容长度 | 内容 |
|---|
| 6个字节(“matlab”) | 1个字节 | 4个字节(低位在前) | n个字节(n>=0) |
命令类型与格式
| 命令类型 | 描述 | 内容格式 |
|---|
| 1 | 计算命令 | command+’\0’ |
| 2 | 用户认证 | username+’\0’+md5(username+”@#$%^&”+md5(password))+’\0’ |
| 3 | 消息 | dst_user+’\0’+ message+’\0’ |
| 4 | 注册 | username+’\0’+注册码+’\0’+md5+’\0’+email+’\0’ |
| 5 | 修改密码 | username+’\0’+旧md5+’\0’+新md5+’\0’ |
| 6 | 忘记密码 | username+’\0’ |
| 7 | 心跳 | |
| 8 | 升级请求 | |
| 11 | 文本结果 | result+’\0’ |
| 12 | 图片结果 | pic_data |
| 13 | 认证结果 | 0:成功/1:密码错误/2:用户不存在/-1:认证失败 |
| 14 | 消息 | src_user+’\0’+ message+’\0’ |
| 15 | 连接满 | |
| 16 | 注册结果 | 0:成功/1:无效的注册码/2:用户已存在/-1:注册失败 |
| 17 | 修改密码结果 | 0:成功/1:密码错误/-1:修改失败 |
| 18 | 忘记密码结果 | 0:成功/1:发送邮件失败/2:用户不存在/-1:失败 |
| 19 | 被迫下线 | |
| 20 | 最新版本号 | majo+minor+point(共3字节) |
| 21 | 升级包 | subtype+内容(subtype=0 文件大小,subtype=[1,100] 文件内容) |
说明:
1. 命令1-8是服务端处理的命令,11-21是客户端处理的命令
2. 命令内容格式中command、username等描述语为对应字段的字符串或字节数据
3. md5()表示一次md5加密运算