← 返回
沟通协作

Teamgram Biz Service

Documents the biz_service core business layer in Teamgram Server with 6 RPC helpers covering user, chat, dialog, message, updates, and verification code mana...
为 Teamgram 服务器的 biz_service 核心业务层编写文档,提供 6 个 RPC 辅助函数,覆盖用户、聊天、对话框、消息、更新和验证码管理。
zhihang9978
沟通协作 clawhub v1.0.0 1 版本 100000 Key: 无需
★ 0
Stars
📥 456
下载
💾 9
安装
1
版本
#latest

概述

业务逻辑层:biz_service(6 个 helper)

概述

biz_service 是一个"组合服务",在一个 gRPC server 中注册 6 个子服务:

  • RPCChat — 群组/频道管理
  • RPCCode — 验证码管理
  • RPCDialog — 对话管理
  • RPCMessage — 消息构造/权限校验/写DB
  • RPCUpdates — Updates 构造
  • RPCUser — 用户读取/搜索

etcd 注册

它们都以 service.biz_service 注册到 etcd,供 BFF/msg/sync 等发现调用。

典型调用关系

调用方目标 helper场景
---------
BFF.messagesbiz_service.message构造消息/权限校验/写DB
BFF.usersbiz_service.user用户读取/搜索
BFF.contactsbiz_service.user + biz_service.dialog联系人与对话
BFF.chatsbiz_service.chat群/频道管理
BFF.updatesbiz_service.updatesupdates 构造
BFF.authorizationbiz_service.code + biz_service.user登录注册流程

配置

Name: service.biz_service
ListenOn: 127.0.0.1:20500
Etcd:
  Key: service.biz_service
  Hosts:
    - 127.0.0.1:2379
Mysql:
  DSN: root:@tcp(127.0.0.1:3306)/teamgram?charset=utf8mb4&parseTime=true
Cache:
  - Host: 127.0.0.1:6379

6 个 helper 详解

RPCUser

  • 用户注册、查询、搜索
  • 手机号→用户映射
  • 用户资料读写(名字、头像、简介等)
  • 在线状态查询
  • 被调用最频繁的 helper,几乎所有 BFF 模块都依赖

RPCChat

  • 创建/删除群组
  • 群成员管理(添加/删除/设管理员)
  • 群标题/头像/权限设置
  • 群迁移到超级群
  • 群禁言/封禁权限管理

RPCDialog

  • 对话列表查询(分页、筛选)
  • 对话置顶/归档/标记未读
  • 对话未读数管理(read_inbox_max_id / unread_count)
  • 会话 TTL 设置
  • 对话文件夹管理

RPCMessage

  • 消息构造与入库(inbox/outbox 双写模型)
  • 消息权限校验(是否被禁言、是否被屏蔽等)
  • 消息 ID 生成(依赖 idgen 服务的 Snowflake ID)
  • 消息编辑/删除/转发
  • 消息搜索(全文、hashtag)

RPCUpdates

  • Updates 序列号管理(pts/qts/seq)
  • 差异更新构造(getDifference)
  • 状态查询(getState)
  • 确保客户端与服务端状态同步

RPCCode

  • 验证码生成与校验
  • 短信/App code 管理
  • 验证码过期与重试逻辑
  • 支持自定义验证码发送插件(VerifyCodeInterface)

关键代码路径

  • 主服务入口:app/service/biz/
  • 各 helper 实现:app/service/biz/internal/core/
  • DAO 层:app/service/biz/internal/dao/
  • 配置文件:teamgramd/etc/biz_service.yaml

Source Code References

  • Repository: https://github.com/teamgram/teamgram-server (Apache-2.0)

版本历史

共 1 个版本

  • v1.0.0 当前
    2026-03-30 07:31 安全 安全

安全检测

腾讯云安全 (Keen)

安全,无风险
查看报告

腾讯云安全 (Sanbu)

安全,无风险
查看报告

🔗 相关推荐

communication-collaboration

Slack

steipete
当需要通过 slack 工具从 Clawdbot 控制 Slack 时使用,包括在频道或私信中回复消息或置顶/取消置顶项目。
★ 157 📥 47,688
communication-collaboration

Himalaya

lamelas
{"answer":"通过IMAP/SMTP管理邮件的CLI。可在终端使用 `himalaya` 收发、回复、转发、搜索及整理邮件。支持多账户与MML(MIME元语言)编写邮件。"}
★ 68 📥 45,595
communication-collaboration

imap-smtp-email

gzlicanyi
使用IMAP/SMTP读取和发送邮件;检查新/未读邮件、获取内容、搜索邮箱、标记已读/未读、发送带附件的邮件。支持...
★ 114 📥 52,443