频道、频道素材
这篇解决什么
运营号怎么单向推、素材和消息怎么拆。读完能对上 im_channel / im_channel_material,以及 C 端不能往频道发消息。
默认端口 48080。先完成 IM 功能设计。
示意图:素材可反复推。富文本 content 只在详情接口返回,不进推送 payload。
从哪改
| 名称 | 说明 | 仓库路径 |
|---|---|---|
| 运营频道 | @RequestMapping("/im/manager/channel") | ruoyi-office/yudao-module-im/.../manager/channel/ImChannelManagerController.java |
| 运营素材 | /im/manager/channel-material | ImChannelMaterialManagerController |
| C 端素材详情 | GET /im/channel/material/get | ImChannelMaterialController |
| C 端拉消息 | GET /im/channel/message/pull | ImChannelMessageController |
| 频道表 | im_channel | ImChannelDO |
| 素材表 | im_channel_material | ImChannelMaterialDO |
运营页:views/im/manager/channel/list/、material/。C 端会话在 views/im/home/。
code 对外,id 给前端当会话 targetId。status 用 CommonStatusEnum:0 开启,1 关闭。
素材类型 ImChannelMaterialTypeEnum:1 站内富文本(详情拉 content),2 外链(点 url)。
用户只能 pull 增量,没有 C 端发送接口。运营推送落 im_channel_message,见 私聊、群聊、频道消息。
字段
| 名称 | 说明 | 仓库路径 |
|---|---|---|
code / name / avatar / sort | 业务码、名称、头像、排序 | ImChannelDO |
channelId | 素材所属频道 | ImChannelMaterialDO |
type | 1 富文本 / 2 外链 | 同上 |
title / coverUrl / summary | 卡片字段 | 同上 |
content / url | 详情 HTML 或跳转 | 同上 |
不是群公告
频道是运营单向号。群公告在 im_group.notice,见 群组、群成员。
推送不要带富文本全文
DO 注释写明:推送 payload 不带 content,避免撑爆长连接。客户端点卡片再 GET /im/channel/material/get。
按本仓库 DO 生成的 ER。
配置与操作
走 频道管理(7590)下的 频道列表(7591,/im/channel/list)。填 code、name、avatar、sort,status 用 CommonStatusEnum:0 开启 / 1 关闭。code 对外,id 给前端当会话 targetId。
保存后再走 频道素材(7596,/im/channel/material)。类型 1 站内富文本(详情拉 content)或 2 外链(点 url)。推送走 频道消息(7901,/im/channel/message):POST /im/manager/channel-message/send 只带 materialId,receiverUserIds 空则全员广播。权限字 im:manager:channel-message:send。C 端只有 GET /im/channel/message/pull 和素材详情,没有发送接口。推送 payload 不带富文本全文。开启见 IM 功能设计。

本系统截图:IM 即时通讯 → 频道管理 → 频道列表。运营单向号,不是群。

本系统截图:频道素材。1 富文本 / 2 外链。推送在频道消息页点「立即推送」。
