Show / Hide Table of Contents

Class SocketUser

Represents a WebSocket-based user.

Inheritance
System.Object
SocketEntity<System.UInt64>
SocketUser
SocketGroupUser
SocketGuildUser
SocketSelfUser
SocketUnknownUser
SocketWebhookUser
Implements
IUser
ISnowflakeEntity
IEntity<System.UInt64>
IMentionable
IPresence
Inherited Members
SocketEntity<UInt64>.Id
System.Object.Equals(System.Object)
System.Object.Equals(System.Object, System.Object)
System.Object.ReferenceEquals(System.Object, System.Object)
System.Object.GetHashCode()
System.Object.GetType()
System.Object.MemberwiseClone()
Namespace: Discord.WebSocket
Assembly: Discord.Net.WebSocket.dll
Syntax
public abstract class SocketUser : SocketEntity<ulong>, IUser, ISnowflakeEntity, IEntity<ulong>, IMentionable, IPresence

Properties

| Improve this Doc View Source

ActiveClients

Gets the set of clients where this user is currently active.

Declaration
public IImmutableSet<ClientType> ActiveClients { get; }
Property Value
Type Description
System.Collections.Immutable.IImmutableSet<ClientType>
| Improve this Doc View Source

Activity

Gets the activity this user is currently doing.

Declaration
public IActivity Activity { get; }
Property Value
Type Description
IActivity
| Improve this Doc View Source

AvatarId

Gets the identifier of this user's avatar.

Declaration
public abstract string AvatarId { get; }
Property Value
Type Description
System.String
| Improve this Doc View Source

CreatedAt

Gets when the snowflake was created.

Declaration
public DateTimeOffset CreatedAt { get; }
Property Value
Type Description
System.DateTimeOffset

A System.DateTimeOffset representing when the entity was first created.

| Improve this Doc View Source

Discriminator

Gets the per-username unique ID for this user.

Declaration
public string Discriminator { get; }
Property Value
Type Description
System.String
| Improve this Doc View Source

DiscriminatorValue

Gets the per-username unique ID for this user.

Declaration
public abstract ushort DiscriminatorValue { get; }
Property Value
Type Description
System.UInt16
| Improve this Doc View Source

IsBot

Gets a value that indicates whether this user is identified as a bot.

Declaration
public abstract bool IsBot { get; }
Property Value
Type Description
System.Boolean

true if the user is a bot application; otherwise false.

Remarks

This property retrieves a value that indicates whether this user is a registered bot application (indicated by the blue BOT tag within the official chat client).

| Improve this Doc View Source

IsWebhook

Gets a value that indicates whether this user is a webhook user.

Declaration
public abstract bool IsWebhook { get; }
Property Value
Type Description
System.Boolean

true if the user is a webhook; otherwise false.

| Improve this Doc View Source

Mention

Returns a special string used to mention this object.

Declaration
public string Mention { get; }
Property Value
Type Description
System.String

A string that is recognized by Discord as a mention (e.g. <@168693960628371456>).

| Improve this Doc View Source

MutualGuilds

Gets mutual guilds shared with this user.

Declaration
public IReadOnlyCollection<SocketGuild> MutualGuilds { get; }
Property Value
Type Description
System.Collections.Generic.IReadOnlyCollection<SocketGuild>
| Improve this Doc View Source

Status

Gets the current status of this user.

Declaration
public UserStatus Status { get; }
Property Value
Type Description
UserStatus
| Improve this Doc View Source

Username

Gets the username for this user.

Declaration
public abstract string Username { get; }
Property Value
Type Description
System.String

Methods

| Improve this Doc View Source

GetAvatarUrl(ImageFormat, UInt16)

Gets the avatar URL for this user.

Declaration
public string GetAvatarUrl(ImageFormat format = ImageFormat.Auto, ushort size = 128)
Parameters
Type Name Description
ImageFormat format

The format to return.

System.UInt16 size

The size of the image to return in. This can be any power of two between 16 and 2048.

Returns
Type Description
System.String

A string representing the user's avatar URL; null if the user does not have an avatar in place.

Remarks

This property retrieves a URL for this user's avatar. In event that the user does not have a valid avatar (i.e. their avatar identifier is not set), this property will return null. If you wish to retrieve the default avatar for this user, consider using GetDefaultAvatarUrl() (see example).

| Improve this Doc View Source

GetDefaultAvatarUrl()

Gets the default avatar URL for this user.

Declaration
public string GetDefaultAvatarUrl()
Returns
Type Description
System.String

A string representing the user's avatar URL.

Remarks

This property retrieves a URL for this user's default avatar generated by Discord (Discord logo followed by a random color as its background). This property will always return a value as it is calculated based on the user's DiscriminatorValue (discriminator % 5).

| Improve this Doc View Source

GetOrCreateDMChannelAsync(RequestOptions)

Gets the direct message channel of this user, or create one if it does not already exist.

Declaration
public Task<IDMChannel> GetOrCreateDMChannelAsync(RequestOptions options = null)
Parameters
Type Name Description
RequestOptions options

The options to be used when sending the request.

Returns
Type Description
System.Threading.Tasks.Task<IDMChannel>

A task that represents the asynchronous operation for getting or creating a DM channel. The task result contains the DM channel associated with this user.

Remarks

This method is used to obtain or create a channel used to send a direct message.

warning

In event that the current user cannot send a message to the target user, a channel can and will still be created by Discord. However, attempting to send a message will yield a HttpException with a 403 as its HttpCode. There are currently no official workarounds by Discord.

| Improve this Doc View Source

ToString()

Gets the full name of the user (e.g. Example#0001).

Declaration
public override string ToString()
Returns
Type Description
System.String

The full name of the user.

Overrides
System.Object.ToString()

Implements

IUser
ISnowflakeEntity
IEntity<TId>
IMentionable
IPresence
  • Improve this Doc
  • View Source
Back to top Generated by DocFX