Proto commits in alberliu/gim

These 42 commits are when the Protocol Buffers files have changed:

Commit:9a476ba
Author:alber

feat: 新增群组外部服务与文件上传服务,修复 proxy gRPC-Web 兼容性问题 - 新增 GroupExtService(Create/Get),注册至 business gRPC 服务器 - 新增基于 Gin 的文件上传/下载 HTTP 服务(:8081),文件以 UUID 命名存储 - 删除 proxy 中 HTTP/1.1 hop-by-hop 头,解决 gRPC-go v1.80 A41 协议错误 - 放开 gRPC-Web CORS 请求头限制为通配符,新增 grpc/grpc-web 双协议集成测试 - 将 proxy 纳入 compose 部署流程,business 服务暴露 8081 端口并挂载文件目录

The documentation is generated from this commit.

Commit:9c1d7e3
Author:alber

refactor: 重构协议目录结构 proto 源文件移至 pkg/proto/,生成文件移至 pkg/gen/proto/,更新全项目相关引用

Commit:f3af690
Author:alber

feat: 新增 proxy 网关服务,重构拦截器与消息业务逻辑 - 新增 proxy 服务,支持 gRPC 和 gRPC-Web 双协议入口 - 使用 BytesCodec + UnknownServiceHandler 透明转发请求至各 ExtService - 将鉴权与日志拦截器从 pkg/server 迁移至 pkg/ugrpc - 新增 business message 发送逻辑(好友/群组/房间消息) - 新增 proxy 的 k8s 部署配置

Commit:502f1f2
Author:alber

refactor: 移除 file 服务,并将 GetUsersRequest.user_ids 改为 repeated 类型

Commit:3411708
Author:alber

fix: 用会话 token 隔离同设备新旧连接的清理路径 旧连接关闭时会无条件 DeleteConn 与 Offline,在客户端开新连接尚未感知 旧连接断开的场景下,会把新连接从 map 里抹掉,并把已经在线的设备误标 离线(同机/跨机均存在)。 为每条连接生成会话 token: - conn 注册时随 SignInRequest 上送 conn_token,并写入 deviceStatus 的 value;心跳改为只刷 TTL 不动 value - DeleteConn 改为 CompareAndDelete,仅删除属于自己的 map 条目 - Offline 携带 conn_token,logic 侧用 Lua 做"等值再删",token 不匹配 直接忽略 Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>

Commit:bfb21e2
Author:alber

refactor: 将 branch_push_id 重命名为 push_token 并修复多处 bug - 重命名设备推送字段:branch_push_id → push_token,并将数据库字段长度从 255 扩展至 1024 - 移除 ustrings 中基于 unsafe.Pointer 的 Str2bytes/Bytes2str 函数,改用标准类型转换 - 简化 WaitForShutdown 签名,移除 http.Server 参数(WebSocket 关闭逻辑已独立处理) - TCP server:对 net.ErrClosed 提前返回,避免关闭时误报错误 - 修复好友列表 bug:使用 FriendID 而非 UserID 构建查询列表 - ws_server:token 为空时返回明确错误而非 nil - message repo:修正 GORM Create 参数(去掉多余的指针层) - dispatcher:改用 ErrorContext 以在日志中携带 trace 信息 - user 表 nickname 字段长度从 20 扩展至 64

Commit:909e78c
Author:alber

feat: 高性能即时通讯服务 - 支持单聊、群聊、房间聊天多种消息场景 - 完整的离线消息存储与多设备实时同步 - TCP 和 WebSocket 双协议接入 - Docker Compose和Kubernetes一键部署

Commit:c18ba10
Author:alber

1.同步更新文档 2.ack持久化保存

Commit:2358ce3
Author:alber

1. 配置精简 2. 项目目录重构 3. 消息表增加分区

Commit:394b9da
Author:alber

1.重构在线状态模块 2.重构登录模块 3.重构消息发送模块

Commit:2ae8607
Author:alber

消息模块重构

Commit:cf67528
Author:alber

1.消息逻辑重构 2.依赖库升级 3.使用原生TCP实现,为了跨平台运行 4.支持compose环境一键部署

Commit:0f7f724
Author:alber

1.消息协议重构 2.支持k8s部署

Commit:705a7f0
Author:alber

协议格式化

Commit:52079b7
Author:alber

使用ddd重构

Commit:d73a1a3
Author:alber

pb协议优化

Commit:ae44954
Author:alber

增加房间优先队列支持

Commit:c9ddd70
Author:alber

commit

Commit:24f5224
Author:alber

commit

Commit:dd7b5fb
Author:alber

commit

Commit:c4a952d
Author:alber

commit

Commit:c75f523
Author:alber

commit

Commit:3b718f5
Author:alber

commit

Commit:a046a5d
Author:alber

commit

Commit:cb3eac7
Author:alber

commit

Commit:9e5ab02
Author:alber

commit

Commit:d486c70
Author:alber

commit

Commit:f08b499
Author:alber

commit

Commit:2447df3
Author:alber

commit

Commit:8fdeff5
Author:alber

commit

Commit:f53f455
Author:alber

commit

Commit:14f209c
Author:alber

commit

Commit:1a97e64
Author:alber

commit

Commit:a0d1b78
Author:alber

commit

Commit:66dd348
Author:alber

commit

Commit:df94bb1
Author:alber

commit

Commit:2541df0
Author:alber

commit

Commit:9dc4fdc
Author:alber

添加用户信息设置接口

Commit:10e0e51
Author:alber

commit

Commit:8d083f9
Author:alber

commit

Commit:c7ab29d
Author:alber

commit

Commit:82b7059
Author:liupenghui

commit