POST /api/chat_messages/enter_chat
notices 数组,返回当前用户未关闭的安全提醒POST /api/user/chat_notices/dismiss
POST /api/chats/list
name / cname 置空、artist 置空)POST /api/chats/new_chats
POST /api/chats/create
POST /api/groups/list
POST /api/groups/new_groups
POST /api/groups/info
ChatCreated
ChatUpdated
ChatMessageCreated
ChatMessageTranslateSuccessed
GroupCreated
GroupUpdated
GroupMessageCreated
POST /api/chat_messages/enter_chatnotices 数组;next / prev / current 结构不变。| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
chat_id | number | 是 | 私聊 ID,必须是当前用户参与的私聊 |
size | number | 否 | 每页消息数,默认 20,范围 1 ~ 50 |
notices 数组说明:
recipient_user_id 等于当前登录用户)且未关闭(dismissed_at 为空)的提醒。sort 降序、id 升序排序。title / content 为多语言对象,前端按聊天语言选择对应语言;_lang 为默认语言。code:模板业务编码,稳定标识,不随数据库 ID 变化。visibility:single 表示仅你可见;multiple 表示双方可见。is_dismissible:为 false 时前端不渲染关闭按钮。link_url:站内路径(/ 开头)或 https:// 地址,可能为 null。sort:提醒展示顺序,数字越大越靠上。422:chat_id 不是当前用户参与的私聊,或参数校验失败无新增,沿用原有错误语义。
POST /api/user/chat_notices/dismiss| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
notice_id | number | 是 | 安全提醒投放记录 ID(notices[].id) |
404:投放记录不存在、不属于当前用户或当前用户已不在该私聊(统一返回 404,避免探测其他用户的记录)422:该提醒不可关闭(is_dismissible=false)chats / groups 系列接口返回的用户对象统一脱敏。| 字段 | 封禁用户 | 普通用户 |
|---|---|---|
name | ""(空字符串) | 原值 |
cname | ""(空字符串) | 原值 |
artist | null | 画师对象或 null |
is_user_banned | true | false |
id / roles | 保留 | 不变 |
封禁用户示例:
统一使用 user.is_user_banned 判断并渲染多语言名称:
至少替换以下区域中的直接名称访问:私聊列表、私聊消息气泡、私聊标题或成员信息、与私聊关联的用户快捷卡片。
封禁用户头像使用统一封禁头像;名称和头像不可跳转个人主页。
中、英、日分别配置“被封禁的用户”文案,不要复用仅表示状态的“已封禁”标签文案。
无新增,沿用原有错误语义。
chat.users / group.users 用户对象与接口返回保持一致。name / cname 置空、artist 置空、is_user_banned=true)。涉及事件:
ChatCreated / ChatUpdated / ChatMessageCreated / ChatMessageTranslateSuccessedGroupCreated / GroupUpdated / GroupMessageCreated前端收到广播后,应使用与接口相同的 displayUserName 逻辑渲染用户名称,避免在消息气泡中展示空名称。
enter_chat 响应中的 notices 渲染顶部安全提醒栏;提醒位于消息列表之上,不跟随消息滚动。visibility=single 时展示“仅你可见”、多语言正文、有 link_url 时展示“了解更多”、is_dismissible=true 时展示关闭按钮。POST /api/user/chat_notices/dismiss,后端成功后再从本地列表移除;请求失败时保留提醒并给出轻量错误提示。v-html。chat_id 更新。displayUserName。enter_chat 只新增 notices 字段,旧前端忽略该字段,不影响原有消息分页。chat_notices/dismiss 为全新接口,不影响旧逻辑。