Features Overview

The Discord Social SDK introduces several concepts that, at first glance, can be confusing due to their naming. Here’s a clear rundown of the core features and what they actually represent:

User

The simplest and most intuitive concept.

  • Represents a Discord user with an ID, username, and avatar.

  • Exactly what you’d expect.

Lobby

Despite the name, a Lobby is not a traditional game lobby.

  • More like a temporary DM group or chat room between users.

  • Can be linked to a server channel but is otherwise ephemeral.

  • Primarily used for chat, voice, and presence integration within a small group.

  • Metadata exists but is static created at the time of creation and cant be updated after.

  • Cannot be used for matchmaking; there is no search or filtering. You can either be invited to a lobby or ask to join your friend who has a lobby.

  • Members in a lobby do have metadata that can be updated at run time.

Guild

Simply a Discord Server.

  • A persistent community that a user is a member of.

  • The SDK currently supports listing your guilds but exposes limited server details.

Channel

A text or voice channel within a Discord server (Guild).

  • Channels can be linked to Lobbies to integrate game social features with server channels.

  • Channels are persistent and part of the broader server structure.

Call

A voice connection state associated with a Lobby or a Server Channel.

  • Not a separate entity, but the state when voice chat is active in a channel or lobby.

  • Provides voice communication capability within the SDK.

Rich Presence (Activity)

Not truly “Rich Presence” as you might expect.

  • Represents the user’s current Activity within the app/game.

  • Carries metadata like join secrets and party info to enable invites and join requests.

  • Limited to the app context and does not cover full presence or game state.

Last updated