Skip to main content

概念解释

什么是频道?

频道(Channel)是 WuKongIM 中消息传输的载体,定义了消息的发送目标和接收范围。每个频道都有唯一的标识符和类型,用于组织和管理不同的通讯场景。

为什么频道很重要?

  • 消息路由:频道决定了消息发送到哪里,是消息传输的基础
  • 权限控制:不同类型的频道有不同的权限和管理规则
  • 场景区分:通过频道类型区分一对一聊天和群组聊天等不同场景

与其他概念的关系

  • 消息(Message):所有消息都必须指定目标频道才能发送
  • 用户(User):用户通过频道进行交流,可以是频道的创建者或参与者
  • 会话(Conversation):每个会话对应一个频道,会话列表实际上是用户参与的频道列表

核心结构

频道是消息传输的载体,包含以下核心属性:

频道类型

  • 个人频道 (1):一对一私聊
  • 群组频道 (2):多人群组聊天
  • 客服频道(3): 客服频道,不做权限判断
  • 社区频道(4): 社区频道,类似discord的频道
  • 社区话题频道(5): 社区话题频道,类似discord的频道下的子频道
  • 资讯频道(6): 资讯频道(有临时订阅者的概念,查看资讯的时候加入临时订阅,退出资讯的时候退出临时订阅)
  • 直播频道(9): 直播频道(直播频道不会保存最近会话数据)
  • 访客频道(10): 访客频道 (频道id即为访客id,此频道只支持一个访客订阅者,多个客服订阅者,可以取代客服频道用于客服场景)
  • 单聊Agent频道(11): 单聊Agent频道(AI Agent频道,频道ID内部结构为UID@AgentID的结构,类似单聊频道,此频道会针对于AI Agent场景做优化)
  • 群聊Agent频道(12): 群聊Agent频道(AI Agent群聊频道,类似群聊频道,此频道会针对于多Agent协同场景做优化)

频道示例

相关 API 端点

EasySDK 代码示例

发送消息到不同类型频道

频道类型说明

个人频道 (person)
  • channelId 为对方用户的 ID
  • 用于一对一私聊
  • 例如:发送给用户 “user123”,channelId 就是 “user123”
群组频道 (group)
  • channelId 为群组的 ID
  • 用于多人群组聊天
  • 例如:发送到群组 “group123”,channelId 就是 “group123”
频道通过 channel_idchannel_type 组合唯一标识,是消息传输的基础载体。