Interface IGuildUser
Represents a generic guild user.
Inherited Members
Namespace: Discord
Assembly: Discord.Net.Core.dll
Syntax
public interface IGuildUser : IUser, ISnowflakeEntity, IEntity<ulong>, IMentionable, IPresence, IVoiceState
Properties
| Improve this Doc View SourceGuild
Gets the guild for this user.
Declaration
IGuild Guild { get; }
Property Value
| Type | Description |
|---|---|
| IGuild | A guild object that this user belongs to. |
GuildId
Gets the ID of the guild for this user.
Declaration
ulong GuildId { get; }
Property Value
| Type | Description |
|---|---|
| System.UInt64 | An System.UInt64 representing the snowflake identifier of the guild that this user belongs to. |
GuildPermissions
Gets the guild-level permissions for this user.
Declaration
GuildPermissions GuildPermissions { get; }
Property Value
| Type | Description |
|---|---|
| GuildPermissions | A GuildPermissions structure for this user, representing what permissions this user has in the guild. |
JoinedAt
Gets when this user joined the guild.
Declaration
DateTimeOffset? JoinedAt { get; }
Property Value
| Type | Description |
|---|---|
| System.Nullable<System.DateTimeOffset> | A System.DateTimeOffset representing the time of which the user has joined the guild;
|
Nickname
Gets the nickname for this user.
Declaration
string Nickname { get; }
Property Value
| Type | Description |
|---|---|
| System.String | A string representing the nickname of the user; |
PremiumSince
Gets the date and time for when this user's guild boost began.
Declaration
DateTimeOffset? PremiumSince { get; }
Property Value
| Type | Description |
|---|---|
| System.Nullable<System.DateTimeOffset> | A System.DateTimeOffset for when the user began boosting this guild; |
RoleIds
Gets a collection of IDs for the roles that this user currently possesses in the guild.
Declaration
IReadOnlyCollection<ulong> RoleIds { get; }
Property Value
| Type | Description |
|---|---|
| System.Collections.Generic.IReadOnlyCollection<System.UInt64> | A read-only collection of System.UInt64, each representing a snowflake identifier for a role that this user possesses. |
Remarks
This property returns a read-only collection of the identifiers of the roles that this user possesses. For WebSocket users, a Roles property can be found in place of this property. Due to the REST implementation, only a collection of identifiers can be retrieved instead of the full role objects.
Methods
| Improve this Doc View SourceAddRoleAsync(IRole, RequestOptions)
Adds the specified role to this user in the guild.
Declaration
Task AddRoleAsync(IRole role, RequestOptions options = null)
Parameters
| Type | Name | Description |
|---|---|---|
| IRole | role | The role to be added to the user. |
| RequestOptions | options | The options to be used when sending the request. |
Returns
| Type | Description |
|---|---|
| System.Threading.Tasks.Task | A task that represents the asynchronous role addition operation. |
AddRolesAsync(IEnumerable<IRole>, RequestOptions)
Adds the specified roles to this user in the guild.
Declaration
Task AddRolesAsync(IEnumerable<IRole> roles, RequestOptions options = null)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Collections.Generic.IEnumerable<IRole> | roles | The roles to be added to the user. |
| RequestOptions | options | The options to be used when sending the request. |
Returns
| Type | Description |
|---|---|
| System.Threading.Tasks.Task | A task that represents the asynchronous role addition operation. |
GetPermissions(IGuildChannel)
Gets the level permissions granted to this user to a given channel.
Declaration
ChannelPermissions GetPermissions(IGuildChannel channel)
Parameters
| Type | Name | Description |
|---|---|---|
| IGuildChannel | channel | The channel to get the permission from. |
Returns
| Type | Description |
|---|---|
| ChannelPermissions | A ChannelPermissions structure representing the permissions that a user has in the specified channel. |
Examples
The following example checks if the current user has the ability to send a message with attachment in this channel; if so, uploads a file via SendFileAsync(String, String, Boolean, Embed, RequestOptions, Boolean).
if (currentUser?.GetPermissions(targetChannel)?.AttachFiles)
await targetChannel.SendFileAsync("fortnite.png");
|
Improve this Doc
View Source
KickAsync(String, RequestOptions)
Kicks this user from this guild.
Declaration
Task KickAsync(string reason = null, RequestOptions options = null)
Parameters
| Type | Name | Description |
|---|---|---|
| System.String | reason | The reason for the kick which will be recorded in the audit log. |
| RequestOptions | options | The options to be used when sending the request. |
Returns
| Type | Description |
|---|---|
| System.Threading.Tasks.Task | A task that represents the asynchronous kick operation. |
ModifyAsync(Action<GuildUserProperties>, RequestOptions)
Modifies this user's properties in this guild.
Declaration
Task ModifyAsync(Action<GuildUserProperties> func, RequestOptions options = null)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Action<GuildUserProperties> | func | The delegate containing the properties to modify the user with. |
| RequestOptions | options | The options to be used when sending the request. |
Returns
| Type | Description |
|---|---|
| System.Threading.Tasks.Task | A task that represents the asynchronous modification operation. |
Remarks
This method modifies the current guild user with the specified properties. To see an example of this method and what properties are available, please refer to GuildUserProperties.
RemoveRoleAsync(IRole, RequestOptions)
Removes the specified role from this user in the guild.
Declaration
Task RemoveRoleAsync(IRole role, RequestOptions options = null)
Parameters
| Type | Name | Description |
|---|---|---|
| IRole | role | The role to be removed from the user. |
| RequestOptions | options | The options to be used when sending the request. |
Returns
| Type | Description |
|---|---|
| System.Threading.Tasks.Task | A task that represents the asynchronous role removal operation. |
RemoveRolesAsync(IEnumerable<IRole>, RequestOptions)
Removes the specified roles from this user in the guild.
Declaration
Task RemoveRolesAsync(IEnumerable<IRole> roles, RequestOptions options = null)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Collections.Generic.IEnumerable<IRole> | roles | The roles to be removed from the user. |
| RequestOptions | options | The options to be used when sending the request. |
Returns
| Type | Description |
|---|---|
| System.Threading.Tasks.Task | A task that represents the asynchronous role removal operation. |