Chat Unity v3
Chat Unity
Chat
Unity
Home
/
Chat
/
Unity

Channel types

Sendbird's SDKs and API provide two basic types of channels. Each type is designed and implemented to support a wide variety of use cases that your business requires. This page presents the differences and characteristics of the two types.


Open channel

An open channel is a public chat that can handle millions of online users. In open channels, anyone can easily participate without permission.

  • Ephemeral: Messages in an ephemeral open channel are not saved in Sendbird's database. This means that old messages pushed out by new ones can't be retrieved as they are one-time data. On the other hand, messages in a persistent open channel are permanently stored in the database, which is the default.

Group channel

A group channel is a private chat. A user may join the chat only through an invitation by another user who is already a member of the chatroom.

  • Distinct: The distinct option determines whether to resume an old channel or to create an entirely new one when someone attempts to open a new channel with a pre-existing member combination. If there is a group channel with those members, the attempt will re-start the existing channel that has their chat history. This is similar to Twitter-style 1-on-1 direct messaging and more. The default value is false.
  • 1-on-1 messaging: 1-on-1 messaging is a private channel between two users. By changing the value of the channel's distinct property, you can reuse the channel with the same members like Twitter-style 1-on-1 direct messaging.
  • Group messaging: Group messaging is a private channel among multiple users. You can invite up to hundreds of members into a group channel like WhatsApp-style closed group chat.

Open channel vs. Group channel

Open channelGroup channel

Maximum number in a channel

Up to millions of participants

100 members

Access control

Public

Invitation required

Class name

OpenChannel

GroupChannel

Number of members

Over a few thousand

Less than a few hundred

How to create

Sendbird Dashboard / Platform API / Client SDK

Client SDK / Platform API

Operators

Supported

N/A

Ban user

Supported

N/A

Mute user

Supported

N/A

Freeze channel

Supported

N/A

Push notifications

N/A

Supported

Unread counts

N/A

Supported

Read receipts

N/A

Supported

Typing indicators

N/A

Supported