文档
Client 功能与 Server 命令
| 客户端 |
命令 |
| 登录 |
Account / Login(2) |
| 注册账号 / 获取验证码 |
Account / SendCode(6) → Register(5) |
| 忘记密码 |
Account / SendCode(6) scene=reset → ResetPassword(7) |
| 修改密码 |
Account / ChangePassword(8) |
| 退出登录 |
Account / Logout(3) |
| 消息列表 |
Message / ConvList(10) |
| 打开会话 / 历史 |
Message / MsgHistory(11) |
| 发送 |
Message / Chat(4),收消息看推送 ChatNotify(100) |
| 聊天图片/文件 |
Message / PutFile(29) 取 COS 临时 token → 客户端直传 COS → Chat(4) msg_type=3;下载 GetFile(30) 或 CDN |
| 好友列表 |
Friend / FriendList(9),在线变化看推送 PresenceNotify(104) |
| 搜索/添加好友 |
Friend / SearchUser(14) → AddFriend(12),对方 HandleFriendRequest(16) |
| 隐私设置 |
Account / GetPrivacy(17) SetPrivacy(18) |
| 表情包 |
Sticker / StickerPackList(19) StickerPack(20) GetSticker(21),发消息 msg_type=2 |
| 群聊 |
Group / GroupCreate(37) GroupList(51) GroupInfo(38) …;进群 GroupSearch(42) GroupJoin(43);消息仍走 Chat(4) 带 group_id |
| 心跳 |
System / Heartbeat(1) |
| 被挤下线 |
System 推送 Kicked(101) |
服务端
cd server
mkdir -p build && cd build
cmake .. -DCMAKE_BUILD_TYPE=Release && cmake --build .
./server --init-db ../config/config.ini # 首次:建库建表后启动
./server ../config/config.ini # 之后直接启动
监听地址、包长、MySQL、验证码回显见 server/config/config.ini。[sms] echo_code 联调可保持 1,生产改为 0。
客户端按上表对接:登录用 uid,会话/好友/消息走 ConvList、FriendList、MsgHistory、Chat,收消息处理 ChatNotify,被踢处理 Kicked。