/ SDKs / Unreal
SDKs
Chat SDKs Unreal v3
Chat SDKs Unreal
Chat SDKs
Unreal
Version 3

Overview

Copy link

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

Note: By default, the Allow creating open channels and Allow creating group channels options are turned on which means that open channels and group channels can be created by any user with Sendbird Chat SDK. This may grant access to unwanted data or operations, leading to potential security concerns. To manage your access control settings, you can turn on or off each option in Settings > Application > Security > Access control list on Sendbird Dashboard.


Open channel

Copy link

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

Copy link

A group channel is a chat that allows close interactions among a limited number of users. In order to join a group channel, an invitation from a channel member is required by default. Depending on how you implement the joining process in your application, a user who is invited to a group channel can accept or decline the invitation. However, various properties can be leveraged to design different types of group channels that suit your use cases, such as Twitter-style 1-to-1 direct messaging, WhatsApp-style group chat, and more.

  • Public vs. Private: A public group channel can be joined by any user without an invitation. Users can freely join a channel if they want to. On the other hand, a private group channel only accepts invited users by default.

  • Distinct: The distinct option (Default: false) determines whether to create a completely new channel when someone starts a channel with the same member combination that already exists. By default, if there is already a channel with the same group of members, it will retrieve the existing channel and its previous chat history.

  • Ephemeral: Messages in an ephemeral group 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 group channel are permanently stored in the database, which is the default.


Open channel vs. Group channel

Copy link

The optimal use cases for each channel type can vary because different channels support different features. The following tables compare open channels and group channels in terms of possible use cases and supported features.

Use cases

Copy link

Choose which channel type to use based on key factors such as the duration of a chat and the number of users participating in it. The following table lists possible use cases for each channel type.

TypeUsed for

Open channel

- Short-lived live events, such as concerts and streaming.
- News-feed type messaging to massive audience, such as Twitter-style feed.
- Events that don't require a permanent membership.

Group channel

- Private 1-to-1 conversations, such as clinical consultations and Instagram-style Direct Messages.
- Public 1-to-N conversations, such as small group discussions among students.
- Invitation-only chat with a handful group of users.

Features

Copy link

The following table compares the difference among two types of channels.

Open channelGroup channel

Maximum number in a channel

Up to millions of participants

100 members

Accessible by

Anyone within the application

Invited users only if private or anyone if public

Ephemeral messaging

Supported

Supported

Online presence

N/A

N/A

Last message

N/A

Supported

UIKit

N/A

N/A

Operators

Supported

N/A

Ban users

Supported

N/A

Mute users

Supported

N/A

Freeze channels

N/A

N/A

Delivery receipts

N/A

N/A

Read receipts

N/A

Supported

Unread counts

N/A

Supported

Typing indicators

N/A

N/A

Mention others in message

Supported

Supported

Mention counts

N/A

N/A

Reactions

N/A

N/A

Spam flood protection

Supported

Supported

Chatbot interface

Supported

Supported

Smart throttling

Supported (Default: true)

Supported (Default: false)

Push notifications

N/A

Supported

* Push notifications for every message sent.

Get a channel with its participant list or member list

N/A

Supported

Pagination for participant list or member list

Supported

Supported

Order of channel list

- Chronological

- Chronological
- Latest last message