Channels
Our channels let you implement different types of chat messaging capabilities into your applications easily

Channels

Our channels enable developers to implement different types of chat messaging capabilities into their applications easily.
Users can create and join channels where they will be able to participate and chat with other users. A channel can support up to 300,000 members and can contain an unlimited number of messages. Any message exchanged in the channels will be pushed to all other members of the channel in real-time.

Channel Description

Name
Data Type
Description
Attributes
channelId
String
ID of the channel
isDistinct
Boolean
Is channel distinct?
metadata
Object
Additional properties to support custom fields
type
String
Type of channel
Enum:[standard, private, conversation, broadcast, community, live]
tags
Array.<String>
Tags used for searching
isMuted
Boolean
Is this channel muted?
Computed by using muteTimeout
isRateLimited
Boolean
This channel has limited sending rate?
Computed by using muteTimeout
muteTimeout
string($date-time)
Date/time to disable mute
rateLimit
Integer
Number of messages within rate limit
rateLimitWindow
Integer
Waiting time interval before reseting rateLimit to 0
rateLimitTimeout
string($date-time)
Date/time to suppress limitation of sending rate
displayName
String
Channel name for displaying
messageAutoDeleteEnabled
Boolean
Will message in this channel be deleted when the user will flag until flag limit?
autoDeleteMessageByFlagLimit
Number
Number of flags that will force a message to be deleted automatically
memberCount
Integer
Number of members in channel
messageCount
Integer
Number of messages in channel
lastActivity
string($date-time)
Date/time of user's last activity related to the channel (E.g. add/remove member)
createdAt
string($date-time)
Date/time the channel was created
updatedAt
string($date-time)
Date/time the channel was last updated
avatar
Object
Data of the avatar

Channel Types

Amity's Chat SDK supports the creations of 4 types of chat channels. Each type is designed to match a particular use case for chat channels. Here's a table showing what features each channel offers:
Channel Type
Discoverable by
Message sending privileges
Moderation access
Community
All users and admins
Users and admins
All Moderation tools
Live
Only members and admins
Users and admins
All Moderation tools
Broadcast
All users and admins
Admins
Admin Moderation tools
Conversation
Only members
Users
No Moderation tools

Community

All community channels are visible on the Amity Social Cloud Console.

The community channel is our default channel type and can be discovered by all users and admins. It acts as a public chat channel that showcases all of the features that our SDKs have to offer.
Typical use cases:
  • Team collaboration
  • Online gaming
  • Celebrity fan club
  • Live streaming
  • Any type of public chat

Live

All live channels are visible on the Amity Social Cloud Console.

Live channels offers the ability for users and admins to create channels with exclusive memberships. The live channel is identical to our Community channel in features with the caveat that users will not be able to discover the channel when querying for all channels unless they are already a member of it. However users and admins can still invite other users to join the channel.
Typical use cases:
  • Healthcare
  • Project Discussion
  • Any type of private chat
Community and Live channel types can use our SDK moderation tools:
  • Message and user flagging
  • Muting/Unmuting users
  • Banning/Unbanning users from channel
  • Profanity filters
  • Whitelisted URLs
  • User rate-limiting

Broadcast

All broadcast channels are visible on the Amity Social Cloud Console.
The Broadcast channel is heavily adopted by corporate users who constantly promote or advertise their products, or make the announcement to drive awareness. Unlike other channel types, broadcast channels only allow admin users to send messages from Console, and everyone else in the channel will be under read-only mode.
Since this is a one-way communication channel, tailored moderation tools are provided as well, for instance, users won't be able to flag message/user in the channel.
Typical use cases:
  • Marketing & Advertising
  • School/Government Announcements

Conversation

Conversation channels are NOT visible on the Amity Social Cloud Console.
The Conversation channel is our solution to 1-on-1 messaging. Unlike the other channel types, a Conversation channel can be created simply by knowing the userId of the user we want to converse with. Users can start conversations with any other user and only they will be able to see their conversation.
There are no moderation tools for Conversation channels. Users will be able to converse freely with no oversight!
Typical use cases:
  • Hospitality
  • Financial Consultancy
  • Customer Support
Since this is similar to 1-on-1 messaging, Conversation channels have some limitations. The following are not allowed:
  • Join and leave channel
  • Ban and unban channel members
  • Add and remove channel members
Last modified 18d ago