Skip to main content

Community channel overview

A community channel is a large-scale group messaging solution designed for community-style applications. It supports subchannels, user groups, and fine-grained notification controls.

Key characteristics

  • Large membership: Community channels support massive user counts (hundreds of thousands or more).
  • Subchannels: Organize discussions into subchannels within a single community.
  • User groups: Manage member permissions at scale using user groups.
  • Private subchannels: Restrict access to specific subchannels for designated members only.
  • Persistent history: Messages are stored on the server with cloud storage enabled.

Architecture

A community channel has the following structure:

  • Community channel (CommunityChannel): The top-level container.
  • Community subchannels (CommunitySubChannel): Individual channel spaces within the community. A default NCDefault subchannel is created automatically and is visible to all members.
  • User groups: Collections of members that can be bound to subchannels for permission management.

Channel classes

ClassUsage
CommunityChannelManage the community channel itself (settings, unread counts)
CommunitySubChannelSend/receive messages, manage history in a specific subchannel

Next steps