Skip to main content

Group channel overview

Group channels are a common multi-user messaging pattern in chat apps. Nexconn group channels support member management, muting, offline push notifications, and message history sync for scenarios such as interest groups, workplace teams, and customer service.

Key points:

  • Nexconn provides full group management capabilities via both Server API and client SDK, including creating and dismissing groups, member management, and profile updates. Group and member profiles (avatars, names, member cards, etc.) are managed by Nexconn.
  • There is no limit on the number of groups per App Key. Each group supports up to 3,000 members. Contact Nexconn sales to increase this limit.
  • There is no limit on how many groups a single user can join.

Service configuration

Some basic features and premium services for group channels can be enabled and configured on the Console IM service pages.

Group management features

Nexconn provides comprehensive group management features via both Server API and client SDK. When group operations occur, members receive status notification callbacks for events such as creation, join, invite, kick, leave, dismiss, add/remove admin, and transfer ownership.

tip

Notifications use the message mechanism, so they count toward message distribution and downstream statistics.

FeatureDescriptionClient APIServer API
Create groupCreate a group. The creator becomes the channel owner by default.[Create Group (Client)][Create Group (Server)]
Update group profileUpdate the group name, avatar, description, and other built-in or custom profile fields.[Update Group Profile (Client)][Update Group Profile (Server)]
Get multiple group profilesRetrieve profile information for multiple groups.[Get Group Profiles (Client)][Get Group Profiles (Server)]
Kick membersRemove specified users from a group. Only users with kick permission can perform this.[Kick Members (Client)][Kick Members (Server)]
Transfer ownershipTransfer the channel owner role to another member, with an option to leave the group.[Transfer Ownership (Client)][Transfer Ownership (Server)]
Join groupA user joins a specified group. No limit on joined groups.[Join Group (Client)][Join Group (Server)]
Leave groupA user leaves a specified group and stops receiving new messages.[Leave Group (Client)][Leave Group (Server)]
Dismiss groupDismiss a group. Only the channel owner can dismiss. All membership is removed.[Dismiss Group (Client)][Dismiss Group (Server)]
Kick user from all groupsRemove a user from all groups where they are not the owner.N/A[Kick from All Groups (Server)]
Add channel adminAssign a member as channel admin.[Add Admin (Client)][Add Admin (Server)]
Remove channel adminRemove admin role, reverting to channel member.[Remove Admin (Client)][Remove Admin (Server)]
Get members (paginated)Retrieve member info for a group with pagination.[Get Members (Client)][Get Members (Server)]
Get specific membersRetrieve info for specified members in a group.[Get Specific Members (Client)][Get Specific Members (Server)]
Update member profileSet a member's nickname and custom info within the group.[Update Member Profile (Client)][Update Member Profile (Server)]
Set group aliasSet a personal alias for a group, visible only to the current user.[Set Group Alias (Client)][Set Group Alias (Server)]
Favorites (follow users)Follow specific channel members so their messages bypass Do Not Disturb.[Favorites (Client)][Favorites (Server)]
Query groups for appRetrieve all groups under an App Key with pagination.N/A[Query App Groups (Server)]
Query user's groupsRetrieve all groups a user has joined with pagination.[Query User Groups (Client)][Query User Groups (Server)]
Import groupsImport groups created externally. Set owner and permissions first to use full management features.N/A[Import Groups (Server)]

Group messaging features

Group messaging features are similar to direct channel messaging and share some APIs and configurations.

FeatureDescriptionClient APIServer API
Send messagesSend text, images, GIFs, custom messages, etc. Supports @mentions.[Send Message][Send Group Message]
Send targeted messagesSend messages to specific members within a group. Other members do not receive them.[Send Targeted Message][Send Targeted Group Message]
Receive messagesListen for and receive messages in real time, or receive offline messages on reconnect.[Receive Messages]N/A
Read receiptsSend a read receipt request to check message read status in a group.[Read Receipts]N/A
Missed messagesMissed messages are stored for 1-7 days (default 7). Storage duration and message count are configurable.[Offline Message Config]N/A
Push notificationsReceive push notifications for new group messages while offline.[Android Push Guide]N/A
Recall messagesRecall a sent message.[Recall Message (Client)][Recall Message (Server)]
Search messagesSearch local messages in a channel by keyword or user.[Search Messages]N/A
Get historyRetrieve history from local database or server. Server history requires cloud message storage.[Get History]N/A
Insert messagesInsert messages into the local database without actually sending.[Insert Messages]N/A
Delete messagesDelete messages locally or from the server by channel.[Delete Messages][Clear Messages]
Message extensionsAdd key-value metadata to messages. Supports add, delete, and query operations.[Message Extensions][Message Extensions (Server)]
Custom message typesDefine custom message types when built-in types are insufficient.[Custom Message Types]N/A

By default, new members can only see messages sent after they joined. To view pre-join history, enable:

  • Cloud message storage from the Console. Available on Starter or Pro plans.
  • Enable pre-join history access by new member under Chat > Chat settings > Group Channels in the Console.

Group channel features

Group channel features are similar to direct channel features and share some APIs and configurations.

FeatureDescriptionClient APIServer API
Retrieve channelsThe SDK generates channels from sent/received messages. Retrieve the channel list from the local database.[Retrieve Channels]N/A
Get unread messagesGet unread messages from a channel to jump to the first unread or display all @mentions.[Get Unread Messages]N/A
Handle unread countGet or clear unread counts for UI display.[Handle Unread Count]N/A
Delete channelsDelete one or more channels from the channel list.[Delete Channels]N/A
DraftsSave draft text to a channel.[Drafts]N/A
Typing statusConfigure whether the user receives new message alerts in a group channel.[Typing Status]N/A
Manage channel tagsCreate and manage tag data for organizing channels. Up to 20 tags per user.[Manage Tag Data]N/A
Tag channelsAssign tags to channels for grouping.[Tag Channels]N/A
Pin channelsPin a channel to the top of the channel list.[Pin Channels (Client)][Pin Channels (Server)]
Do Not DisturbControl push notifications for missed messages by channel or channel type.[Do Not Disturb (Client)][Do Not Disturb (Server)]
Multi-device status syncSync channel status (pin, DND) across devices in real time.Multi-device channel status syncN/A
Multi-device read syncSync read status across devices for the same user account.Multi-device unread syncN/A

Comparison with open and community channels

For differences between channel types and a full feature list, see: