控制台功能索引
控制台(/console/)是开发者与运营的日常操作入口:创建应用、管理用户/群组/聊天室、追踪消息与连接、处置封禁、处理内容审核、配置回调/推送/限流/告警,以及把只读视图嵌入客户后台。本组文档按 31 个模块拆分,每页给出概念、前置条件、操作步骤、真实 Admin API 参数表、可执行 curl、常见问题与相关链接。
概念
- 控制台是纯静态 SPA(
console/),所有数据来自/api/admin/**;页面本身不持有业务状态。 - 鉴权有两种:根密钥
X-Admin-Secret,或子账号X-Admin-Account+X-Admin-Token(RBAC,viewer 只读)。 - 应用级隔离:除
/api/admin/apps、/api/admin/accounts、/api/admin/stats*、/api/admin/api-metadata外,接口都以/api/admin/apps/{appkey}/…开头。 - 写操作会记录操作日志;封禁、解散群、销毁聊天室等动作不可逆或需要二次确认。
- 自托管版没有购买/计费/套餐/发票流程;「服务开通」「配额」都只是配置,不是订单。
| 分组 | 模块 | 控制台入口 | Admin API 前缀 | 文档 |
|---|---|---|---|---|
| 概览与运营 | 概览仪表盘 | #stats | /api/admin/apps/{appkey}/metrics/overview | 概览仪表盘 |
| 概览与运营 | 统计维度 | #stats | /api/admin/apps/{appkey}/stats/dimensions | 统计维度 |
| 概览与运营 | 监控与告警 | #alerts | /api/admin/apps/{appkey}/alerts | 监控与告警 |
| 概览与运营 | 操作日志 | #audit | /api/admin/apps/{appkey}/audit | 操作日志 |
| 概览与运营 | 数据导出 | #messages | /api/admin/apps/{appkey}/messages/export | 数据导出 |
| 用户与群组 | 用户管理 | #users | /api/admin/apps/{appkey}/users | 用户管理 |
| 用户与群组 | 测试用户 | #testusers | /api/admin/apps/{appkey}/test-users | 测试用户 |
| 用户与群组 | 封禁用户 | #bans | /api/admin/apps/{appkey}/bans | 封禁用户 |
| 用户与群组 | 群组管理 | #groups | /api/admin/apps/{appkey}/groups | 群组管理 |
| 用户与群组 | 聊天室管理 | #chatrooms | /api/admin/apps/{appkey}/chatrooms | 聊天室管理 |
| 消息与连接 | 消息追踪 | #messages | /api/admin/apps/{appkey}/messages | 消息追踪 |
| 消息与连接 | 连接明细 | #connections | /api/admin/apps/{appkey}/connections | 连接明细 |
| 消息与连接 | 系统会话 | #messages | /api/admin/apps/{appkey}/messages?conversationType=4 | 系统会话 |
| 消息与连接 | 消息路由 | #apiconfig | /api/admin/apps/{appkey}/features | 消息路由 |
| 配置与安全 | 应用与密钥 | #apps | /api/admin/apps | 应用与密钥 |
| 配置与安全 | 回调服务 | #callbacks | /api/admin/apps/{appkey}/callbacks | 回调服务 |
| 配置与安全 | 敏感词 | #sensitive | /api/admin/apps/{appkey}/sensitive-words | 敏感词 |
| 配置与安全 | 内容审核 | #moderation | /api/admin/apps/{appkey}/moderation/tasks | 内容审核 |
| 配置与安全 | 接口调频 | #ratelimit | /api/admin/apps/{appkey}/ratelimit | 接口调频 |
| 配置与安全 | 敏感接口 | #ratelimit | /api/admin/apps/{appkey}/ratelimit | 敏感接口 |
| 配置与安全 | 子账号与 RBAC | #accounts | /api/admin/accounts | 子账号与 RBAC |
| 推送与 AI | 推送通道 | #push | /api/admin/apps/{appkey}/push/channels | 推送通道 |
| 推送与 AI | 推送统计 | #push | /api/admin/apps/{appkey}/push/stats | 推送统计 |
| 推送与 AI | 翻译与机器人 | #ai | /api/admin/apps/{appkey}/translation | 翻译与机器人 |
| 平台设置 | 服务开通 | #services | /api/admin/apps/{appkey}/services | 服务开通 |
| 平台设置 | 配额 | #services | /api/admin/apps/{appkey}/services | 配额 |
| 平台设置 | 功能配置 | #features | /api/admin/apps/{appkey}/features | 功能配置 |
| 平台设置 | API 调试器 | #debug | /api/admin/api-metadata | API 调试器 |
| 平台设置 | 文件与图片 | (无独立 tab) | /api/apps/{appkey}/files | 文件与图片 |
| 平台设置 | 版本与发布 | #apiconfig | /api/__contract/introspect | 版本与发布 |
| 平台设置 | 租户设置 | #apps | /api/admin/apps | 租户设置 |
先读「概览仪表盘 → 应用与密钥 → 用户/群组/聊天室」,再按需进入「消息与连接」「配置与安全」「推送与 AI」「平台设置」。所有页面共享同一套鉴权与应用上下文。
前置条件
- 服务端已启动,
curl -sS http://127.0.0.1:8080/health返回{"ok":true}。 - 浏览器可访问控制台;或直接用 curl 调 Admin API。
- 持有
IM_ADMIN_SECRET(未设置时为dev-admin)。
步骤
- 打开控制台并填入密钥
访问
http://127.0.0.1:8080/console/,在右上角密钥框填入 Admin Secret;密钥保存在本机 localStorage,不会上传到第三方。 - 创建/选择应用
首次使用先在「应用与密钥」创建应用(AppKey 1-64 字符);创建响应里的
appSecret只出现一次。 - 进入模块页
顶部 tab 切换模块;31 个模块的详细操作、参数与 curl 见上表对应文档页。没有独立 tab 的模块(如文件与图片、版本与发布)会在页面内说明入口。
- 验证接口连通
curl -sS -X GET "http://127.0.0.1:8080/api/admin/apps" \ -H 'X-Admin-Secret: dev-admin'
参数表
| 分组 | 模块数 | 代表能力 | 关键接口 |
|---|---|---|---|
| 概览与运营 | 5 | 指标看板、维度统计、告警、审计、CSV 导出 | metrics/overview、stats/dimensions、audit |
| 用户与群组 | 5 | 用户/测试用户/封禁、群治理、聊天室治理 | users、bans、groups、chatrooms |
| 消息与连接 | 4 | 消息检索与轨迹、在线连接、系统会话、路由配置 | messages、connections、features |
| 配置与安全 | 7 | 应用密钥、回调、敏感词、审核、限流、敏感接口、RBAC | apps、callbacks、ratelimit、accounts |
| 推送与 AI | 3 | 6 个推送通道、推送统计、翻译与机器人 | push/channels、push/stats、translation、bots |
| 平台设置 | 7 | 服务开通/配额/功能开关、调试器、文件、版本、租户 | services、features、api-metadata |
| 控制台嵌入 | 1 | 一次性 token + 只读 iframe 视图 | embed/token、/api/embed/session |
示例
列出应用(含软删除)
curl -sS -X GET "http://127.0.0.1:8080/api/admin/apps" \
-H 'X-Admin-Secret: dev-admin'
# 含已软删除应用
curl -sS -X GET "http://127.0.0.1:8080/api/admin/apps?includeDeleted=1" \
-H 'X-Admin-Secret: dev-admin'全局统计
curl -sS -X GET "http://127.0.0.1:8080/api/admin/stats" \
-H 'X-Admin-Secret: dev-admin'
curl -sS -X GET "http://127.0.0.1:8080/api/admin/stats/trend?days=7" \
-H 'X-Admin-Secret: dev-admin'常见问题
控制台一直提示 401
密钥与服务端 IM_ADMIN_SECRET 不一致;清掉 localStorage 中的 im.admin.secret 后重新输入。
应用列表为空
服务端刚启动且数据目录为空;先在「应用与密钥」创建应用,或确认 IM_DATA_DIR 指向了正确的历史数据目录。
切应用后页面数据没变
切换应用只改变后续请求的 {appkey},已渲染页面需要刷新或重新进入 tab。
viewer 账号点按钮报 403
RBAC 下 viewer 只读;写操作需要 operator/admin/owner 角色(或直接用根密钥)。
为什么没有“购买/升级套餐”入口?
自托管版没有计费与套餐;能力由「服务开通」「功能配置」「配额」控制,不产生费用。
文档里的路径都能直接调吗?
能。每页参数表都来自冻结的 Admin API 契约与运行时路由;标注“未实现”的能力不会给出假端点。