Build structured chat experiences with sophisticated channel management and member governance
Feature | Community | Private Community | Live | Conversation | Broadcast |
---|---|---|---|---|---|
Discoverable by | All users | Members & admins | Members & admins | Members only | All users |
Message privileges | Joined members | Joined members | Joined members | Joined members | Admins only |
Moderation access | ✅ Yes | ✅ Yes | ✅ Yes | ❌ No | ✅ Yes |
Member Size | Medium | Medium | Huge | Small | Huge |
Creation method | SDK, Console | SDK, Console | SDK, Console | SDK only | SDK, Console |
Realtime events | Automatic | Automatic | Subscription | Automatic | Subscription |
@Mention Support | ✅ Full | ✅ Full | ✅ Full | ❌ None | ❌ None |
Console Visibility | ✅ Yes | ✅ Yes | ✅ Yes | ❌ No | ✅ Yes |
Property | Type | Description |
---|---|---|
channelId | String | Unique identifier for the channel |
defaultSubchannelId | String | ID of the single subchannel (1:1 relationship) |
userId | String | ID of the user who created the channel |
displayName | String | Channel name for displaying |
isDistinct | Boolean | Whether the channel enforces unique member combinations |
Property | Type | Description |
---|---|---|
type | AmityChannelType | Channel type (Community, Live, Conversation, Broadcast) |
isPublic | Boolean | Public/private status for community channels |
isMuted | Boolean | Channel mute status for the current user |
tags | Array<String> | Tags for search and categorization |
Property | Type | Description |
---|---|---|
isRateLimited | Boolean | Whether rate limiting is enabled |
rateLimit | Integer | Maximum messages allowed within rate limit period |
metadata | JsonObject | Custom fields for extended functionality |
avatarFileId | String | ID of the channel’s avatar image |
Property | Type | Description |
---|---|---|
memberCount | Integer | Total number of channel members |
messageCount | Integer | Total number of messages in the channel |
unreadCount | Integer | Number of unread messages for current user |
lastActivity | DateTime | Timestamp of last channel activity |
createdAt | DateTime | Channel creation timestamp |
updatedAt | DateTime | Last modification timestamp |
defaultSubchannelId
represents the single subchannel created with each channel. This 1:1 relationship simplifies development while maintaining all the powerful messaging capabilities you need.Channel Design
Technical Implementation
Channel Management
Growth & Scaling