We tried to keep Chat SDK simple and name things as they are. Still, certain terms might not be clear at first sight or are PubNub-specific. When in doubt, refer to this simple list.
|Channel||A room created for at least two people to have a conversation. Channel members can send messages, receive messages, and react to them. You can also forward messages to other channels, quote, or pin them to the channel, and much more. What you can do on a given channel depends on its type and the permissions you have (granted or revoked through Access Manager).||Channels|
|Direct vs. group vs. public channel||Three types of channels you can create with the Chat SDK using three separate methods. The choice of a method/channel type depends on how many people you want to have in a given conversation. |
When you create a direct channel, you can invite only one person to a conversation when creating a channel, while group channels allow you to invite multiple members.
Public channels, on the other hand, don't require invites. Anyone can join them as they are meant for larger audiences, like in virtual events. They also have certain limitations in place - you'll get errors when trying to implement such Chat SDK features as typing indicator, invites, or read receipts in public channels since these features are neither useful nor practical for large audiences.
|Direct, group, and public channels|
|Connect vs. subscribe vs. join||Connecting to a channel lets you "watch" what is happening on that channel and see all new messages. This way, you become subscribed to this channel (or "present" on this channel) and receive all message-related events. To become a member of this channel, you must explicitly join it. In some cases, like a group channel, you can join a given channel only when invited by another member of this channel or its admin (depending on the channel permissions).||Watch, Invites, Membership|
|Thread vs. channel||The term ||Threads|
|Message vs. thread message||A message that starts a thread is a regular ||Threads|
|Message vs. draft message||A draft message is a message you create, modify, but have not sent to a channel (published) yet. For example, when you prepare a message that adds links or mentions, you operate on a message draft (||Links, Mentions|
|Membership||An object that describes a relation between a channel and a user and its status - whether a user joined a channel and became its member, or left the channel.||Membership|
|Message action vs. message reaction||You can perform various actions on a message (such as deleting or editing). When you add or remove an emoji to/from a message, you react to it, so you add/remove a message reaction. PubNub Message Reactions API handles both actions and reactions.||Reactions|