C17 超级群能力收口

C17 是超级群/频道/用户组/私有频道/禁言相关能力的收口项。经过 rev22(会话类型 10)、rev23(频道级消息 channelId)、rev24(private 频道列表可见性 + 各端频道 UI 组件)三轮补齐,Web/Android/Flutter/Electron 四端能力已具备;本页给出能力清单、实现证据、平台状态与剩余边界。

矩阵状态(Lead 汇总)

内部缺口矩阵(含当前版本更新):378 implemented / 129 partial / 59 missing / 11 na / 14 excluded(共 591 行)。

C17-web、C17-android、C17-flutter、C17-electron 已置 implemented;C17-native 仍 missing(C ABI 无频道 op);C17-ios / C17-harmony 保持 partial(reserved,无运行时)。

能力清单与证据​

能力实现证据/入口
超级群会话类型ConversationType.SUPER_GROUP=10;存量 2+super 可读IDL rev22;会话类型指南
频道 CRUD / 加入 / 离开四端 IMLib 8 个频道/用户组语义 op(create/list/join/leave + usergroup create/list/by-user/bind)IDL rev21;频道操作指南
用户组与绑定创建/列表/按用户反查/绑定频道(双向索引)IDL rev21;用户组指南
频道级消息Message.channelId + sendMessage/getHistoryMessages options.channelId;仅频道成员接收、历史可按频道过滤IDL rev23;频道级消息
私有频道消息鉴权private 发送需成员(1003)、收件人/离线/回执/撤回按频道收窄rev23 服务端;私有频道指南
私有频道列表可见性public 群成员可见;private 仅频道成员/群主/管理员;Open API 运行期可选 userIdrev24 服务端;列表可见性
频道 UI 组件Web ChannelSwitcher;Android ChannelListDialog + ChatFragment 频道栏;Flutter ChannelList/ChannelSwitcher;Electron Demo 复用 Webrev24 SDK;频道 UI 组件
Demo 接入Web/Electron Demo 已接入频道切换器(Electron 复用 Web 组件并支持主题切换)rev24 demo

平台状态​

平台状态说明
Web / Android / Flutter / Electron✅ implemented会话类型 + 频道/用户组 op + 频道消息 + 频道 UI 组件(Electron 复用 Web 组件,无独立 IMKit)
Native(C ABI)⛔ missingC ABI 只有 18 个操作,无 channel/usergroup op;无频道 UI。需要频道能力请用 Web/Android/Flutter/Electron SDK 或 Open API
iOS / HarmonyOS🟡 partial(reserved)声明同构、无运行时代码;契约枚举与绑定映射已登记

验收清单​

  1. 创建 groupType=super 群 → 创建 public/private 频道 → 用 listSupergroupChannels 确认列表返回(private 仅成员/管理员可见)。
  2. 以 conversationType=10 + options.channelId 发送频道消息 → 频道成员收到、非成员收不到;历史带 channelId 可过滤。
  3. 非成员读取 private 频道历史 → 1003;非成员发送 → 1003;删除频道后发送 → 1005;非 10 类型带 channelId → 1001。
  4. 用 Web ChannelSwitcher / Android 频道栏 / Flutter ChannelSwitcher 切换频道,确认发送与历史跟随 channelId,切回群级后 channelId 为空。
  5. 回调消费方按 channelId 归档频道消息;无 channelId 计入群级。
  6. Open API supergroup.channel.list:不带 userId 只见 public;带 userId 按该用户过滤(非成员 403/1003、用户不存在 1004)。

剩余边界(不在 C17 内或另行排期)​

项现状
频道成员管理 UI未提供;成员增删用 channel/members/* Server API
频道级未读 / 回执拆分未实现:未读/回执仍按群会话聚合(totalMembers 取频道成员数)
客户端 search / typing 按频道裁剪未实现:Open API 搜索已按可见性过滤;typing 仍群级
默认频道 / 默认免打扰未实现(不自动创建 RCDefault)
Native / iOS / HarmonyOS 运行时无频道运行时(native C ABI 未扩展;iOS/Harmony reserved)
IMKit 契约面频道 UI 组件是 SDK 运行时组件,未写入 sdk-imkit.json;契约文档仍以 10 个契约组件为准

相关链接​