diff --git a/src/Discord.Net.Core/Discord.Net.Core.xml b/src/Discord.Net.Core/Discord.Net.Core.xml index 53e74814b..5baa090bf 100644 --- a/src/Discord.Net.Core/Discord.Net.Core.xml +++ b/src/Discord.Net.Core/Discord.Net.Core.xml @@ -392,18 +392,6 @@ the API version it uses on startup. - - - Gets or sets the level of precision of the rate limit reset response. - - - If set to , this value will be rounded up to the - nearest second. - - - The currently set . - - Gets or sets whether or not rate-limits should use the system clock. @@ -1690,6 +1678,21 @@ A task that represents the asynchronous removal operation. + + + Modifies a message. + + + This method modifies this message with the specified properties. To see an example of this + method and what properties are available, please refer to . + + The snowflake identifier of the message that would be changed. + A delegate containing the properties to modify the message with. + The options to be used when sending the request. + + A task that represents the asynchronous modification operation. + + Broadcasts the "user is typing" message to all users in this channel, lasting 10 seconds. @@ -2282,26 +2285,6 @@ Scan messages sent by all guild members. - - - Provides properties that are used to modify the widget of an with the specified changes. - - - - - Sets whether the widget should be enabled. - - - - - Sets the channel that the invite should place its users in, if not null. - - - - - Sets the channel the invite should place its users in, if not null. - - Provides properties used to modify an with the specified changes. @@ -2511,14 +2494,6 @@ and moved into the AFK voice channel. - - - Gets a value that indicates whether this guild is embeddable (i.e. can use widget). - - - if this guild has a widget enabled; otherwise . - - Gets a value that indicates whether this guild has the widget enabled. @@ -2628,31 +2603,6 @@ none is set. - - - Gets the ID of the default channel for this guild. - - - This property retrieves the snowflake identifier of the first viewable text channel for this guild. - - This channel does not guarantee the user can send message to it, as it only looks for the first viewable - text channel. - - - - A representing the snowflake identifier of the default text channel; 0 if - none can be found. - - - - - Gets the ID of the widget embed channel of this guild. - - - A representing the snowflake identifier of the embedded channel found within the - widget settings of this guild; if none is set. - - Gets the ID of the channel assigned to the widget of this guild. @@ -2886,16 +2836,6 @@ A task that represents the asynchronous modification operation. - - - Modifies this guild's embed channel. - - The delegate containing the properties to modify the guild widget with. - The options to be used when sending the request. - - A task that represents the asynchronous modification operation. - - Modifies this guild's widget. @@ -3133,17 +3073,6 @@ channel in this guild; if none is found. - - - Gets the embed channel (i.e. the channel set in the guild's widget settings) in this guild. - - The that determines whether the object should be fetched from cache. - The options to be used when sending the request. - - A task that represents the asynchronous get operation. The task result contains the embed channel set - within the server's widget settings; if none is set. - - Gets the widget channel (i.e. the channel set in the guild's widget settings) in this guild. @@ -3443,6 +3372,16 @@ of webhooks found within the guild. + + + Gets a collection of emotes from this guild. + + The options to be used when sending the request. + + A task that represents the asynchronous get operation. The task result contains a read-only collection + of emotes found within the guild. + + Gets a specific emote from this guild. @@ -4829,6 +4768,14 @@ A string containing the full invite URL (e.g. https://discord.gg/FTqNnyS). + + + Gets the user that created this invite. + + + A user that created this invite. + + Gets the channel this invite is linked to. @@ -4900,26 +4847,26 @@ invite points to; null if one cannot be obtained. - + - Represents additional information regarding the generic invite object. + Gets the user this invite is linked to via . + + A user that is linked to this invite. + - + - Gets the user that created this invite. + Gets the type of the linked for this invite. - A user that created this invite. + The type of the linked user that is linked to this invite. - + - Gets a value that indicates whether the invite has been revoked. + Represents additional information regarding the generic invite object. - - true if this invite was revoked; otherwise false. - @@ -6211,10 +6158,10 @@ Gets all embeds included in this message. - This property gets a read-only collection of embeds associated with this message. Depending on the message, a sent message may contain one or more embeds. This is usually true when multiple link previews are generated; however, only one can be featured. + A read-only collection of embed objects. @@ -6293,6 +6240,18 @@ The 's attached to this message + + + + Gets the flags related to this message. + + + This value is determined by bitwise OR-ing values together. + + + A message's flags, if any is associated. + + Adds a reaction to this message. @@ -6410,6 +6369,75 @@ The used in the reaction. + + + Represents a discord sticker. + + + + + Gets the ID of this sticker. + + + A snowflake ID associated with this sticker. + + + + + Gets the ID of the pack of this sticker. + + + A snowflake ID associated with the pack of this sticker. + + + + + Gets the name of this sticker. + + + A with the name of this sticker. + + + + + Gets the description of this sticker. + + + A with the description of this sticker. + + + + + Gets the list of tags of this sticker. + + + A read-only list with the tags of this sticker. + + + + + Gets the asset hash of this sticker. + + + A with the asset hash of this sticker. + + + + + Gets the preview asset hash of this sticker. + + + A with the preview asset hash of this sticker. + + + + + Gets the format type of this sticker. + + + A with the format type of this sticker. + + Represents a generic message sent by the system. @@ -6448,19 +6476,6 @@ A task that represents the asynchronous modification operation. - - - Modifies the suppression of this message. - - - This method modifies whether or not embeds in this message are suppressed (hidden). - - Whether or not embeds in this message should be suppressed. - The options to be used when sending the request. - - A task that represents the asynchronous modification operation. - - Adds this message to its channel's pinned messages. @@ -6556,6 +6571,39 @@ Gets the name of the application. + + + Default value for flags, when none are given to a message. + + + + + Flag given to messages that have been published to subscribed + channels (via Channel Following). + + + + + Flag given to messages that originated from a message in another + channel (via Channel Following). + + + + + Flag given to messages that do not display any embeds. + + + + + Flag given to messages that the source message for this crosspost + has been deleted (via Channel Following). + + + + + Flag given to messages that came from the urgent message system. + + Properties that are used to modify an with the specified changes. @@ -6584,6 +6632,20 @@ Gets or sets the components for this message. + + + Gets or sets the flags of the message. + + + Only can be set/unset and you need to be + the author of the message. + + + + + Gets or sets the allowed mentions of the message. + + Contains the IDs sent from a crossposted message or inline reply. @@ -6720,9 +6782,6 @@ The message is an inline reply. - - Only available in API v8. - @@ -6753,6 +6812,21 @@ true if the user has reacted to the message; otherwise false. + + Defines the types of formats for stickers. + + + Default value for a sticker format type. + + + The sticker format type is png. + + + The sticker format type is apng. + + + The sticker format type is lottie. + Specifies the handling type the tag should use. @@ -6876,11 +6950,6 @@ Allows for the addition of reactions to messages. - - - Allows for reading of messages. This flag is obsolete, use instead. - - Allows guild members to view a channel, which includes reading messages in text channels. @@ -7007,9 +7076,6 @@ If true, a user may add reactions. - - If true, a user may join channels. - If true, a user may view channels. @@ -7320,9 +7386,6 @@ If true, a user may view the guild insights. - - If True, a user may join channels. - If True, a user may view channels. @@ -7392,6 +7455,9 @@ Creates a new with the provided packed value. + + Creates a new with the provided packed value after converting to ulong. + Creates a new structure with the provided permissions. @@ -7479,9 +7545,6 @@ If Allowed, a user may add reactions. - - If Allowed, a user may join channels. - If Allowed, a user may join channels. @@ -7542,6 +7605,9 @@ Creates a new OverwritePermissions with the provided allow and deny packed values. + + Creates a new OverwritePermissions with the provided allow and deny packed values after converting to ulong. + Initializes a new struct with the provided permissions. @@ -7818,6 +7884,14 @@ An representing the position of the role in the role list of the guild. + + + Gets the tags related to this role. + + + A object containing all tags related to this role. + + Modifies this role. @@ -7923,6 +7997,38 @@ This value may not be set if the role is an @everyone role. + + + Provides tags related to a discord role. + + + + + Gets the identifier of the bot that this role belongs to, if it does. + + + A if this role belongs to a bot; otherwise + . + + + + + Gets the identifier of the integration that this role belongs to, if it does. + + + A if this role belongs to an integration; otherwise + . + + + + + Gets if this role is the guild's premium subscriber (booster) role. + + + if this role is the guild's premium subscriber role; + otherwise . + + Represents a Discord Team. @@ -8234,6 +8340,11 @@ this user possesses. + + + Whether the user has passed the guild's Membership Screening requirements. + + Gets the level permissions granted to this user to a given channel. @@ -8276,6 +8387,16 @@ A task that represents the asynchronous modification operation. + + + Adds the specified role to this user in the guild. + + The role to be added to the user. + The options to be used when sending the request. + + A task that represents the asynchronous role addition operation. + + Adds the specified role to this user in the guild. @@ -8286,6 +8407,16 @@ A task that represents the asynchronous role addition operation. + + + Adds the specified to this user in the guild. + + The roles to be added to the user. + The options to be used when sending the request. + + A task that represents the asynchronous role addition operation. + + Adds the specified to this user in the guild. @@ -8296,6 +8427,16 @@ A task that represents the asynchronous role addition operation. + + + Removes the specified from this user in the guild. + + The role to be removed from the user. + The options to be used when sending the request. + + A task that represents the asynchronous role removal operation. + + Removes the specified from this user in the guild. @@ -8306,6 +8447,16 @@ A task that represents the asynchronous role removal operation. + + + Removes the specified from this user in the guild. + + The roles to be removed from the user. + The options to be used when sending the request. + + A task that represents the asynchronous role removal operation. + + Removes the specified from this user in the guild. @@ -8321,11 +8472,6 @@ Represents the user's presence status. This may include their online status and their activity. - - - Gets the activity this user is currently doing. - - Gets the current status of this user. @@ -8484,9 +8630,20 @@ Gets the username for this user. - + + + Gets the public flags that are applied to this user's account. + + + This value is determined by bitwise OR-ing values together. + + + The value of public flags for this user. + + + - Gets the direct message channel of this user, or create one if it does not already exist. + Creates the direct message channel of this user. This method is used to obtain or create a channel used to send a direct message. @@ -8501,7 +8658,7 @@ The following example attempts to send a direct message to the target user and logs the incident should it fail. - The options to be used when sending the request. @@ -8629,17 +8786,22 @@ - Flag given to Discord staff. + Flag given to users who are a Discord employee. - Flag given to Discord partners. + Flag given to users who are owners of a partnered Discord server. - + - Flag given to users who have participated in the bug report program. + Flag given to users in HypeSquad events. + + + + + Flag given to users who have participated in the bug report program and are level 1. @@ -8662,6 +8824,36 @@ Flag given to users who subscribed to Nitro before games were added. + + + Flag given to users who are part of a team. + + + + + Flag given to users who represent Discord (System). + + + + + Flag given to users who have participated in the bug report program and are level 2. + + + + + Flag given to users who are verified bots. + + + + + Flag given to users that developed bots and early verified their accounts. + + + + + Flag given to users that are discord certified moderators who has give discord's exam. + + Defines the available Discord user status. @@ -9199,6 +9391,17 @@ This intent includes TYPING_START + + + This intent includes all but and + that are privileged must be enabled for the application. + + + + + This intent includes all of them, including privileged ones. + + Represents a generic Discord client. @@ -9838,22 +10041,6 @@ and an optional reason. - - - Specifies the level of precision to request in the rate limit - response header. - - - - - Specifies precision rounded up to the nearest whole second - - - - - Specifies precision rounded to the nearest millisecond. - - Represents options that should be used when sending a request. @@ -10456,7 +10643,7 @@ The snowflake identifier to resolve. - A representing the time for when the object is geenrated. + A representing the time for when the object is generated. diff --git a/src/Discord.Net.Rest/Discord.Net.Rest.xml b/src/Discord.Net.Rest/Discord.Net.Rest.xml index e19460973..3e0948f7b 100644 --- a/src/Discord.Net.Rest/Discord.Net.Rest.xml +++ b/src/Discord.Net.Rest/Discord.Net.Rest.xml @@ -29,7 +29,7 @@ Gets the name of the application. - + Unknown OAuth token type. @@ -57,6 +57,13 @@ Message content is too long, length must be less or equal to . This operation may only be called with a token. + + Message content is too long, length must be less or equal to . + This operation may only be called with a token. + + + This operation may only be called with a token. + Message content is too long, length must be less or equal to . @@ -78,13 +85,6 @@ and must not be equal to zero. - - must not be equal to zero. - - - must not be equal to zero. - must not be . - must not be equal to zero. @@ -134,12 +134,6 @@ Cannot read from image. - - Unknown permission target. - - - Invalid permission target. - Gets the login state of the client. @@ -505,6 +499,14 @@ null if this is not mentioned in this entry. + + + Gets the type of this channel. + + + The channel type of this channel; null if not applicable. + + Contains a piece of audit log data related to a channel update. @@ -1174,10 +1176,10 @@ - Gets the user of the message that was pinned. + Gets the user of the message that was pinned if available. - A user object representing the user that created the pinned message. + A user object representing the user that created the pinned message or . @@ -1203,10 +1205,10 @@ - Gets the user of the message that was unpinned. + Gets the user of the message that was unpinned if available. - A user object representing the user that created the unpinned message. + A user object representing the user that created the unpinned message or . @@ -1972,6 +1974,9 @@ + + + @@ -2063,6 +2068,9 @@ + + + Message content is too long, length must be less or equal to . @@ -2356,6 +2364,9 @@ + + + @@ -2517,9 +2528,6 @@ is null. - - is null. - is null. @@ -2576,9 +2584,6 @@ - - - @@ -2597,9 +2602,6 @@ - - - @@ -2724,10 +2726,6 @@ is . - - - is . - is . @@ -2880,16 +2878,6 @@ channel in this guild; if none is found. - - - Gets the embed channel (i.e. the channel set in the guild's widget settings) in this guild. - - The options to be used when sending the request. - - A task that represents the asynchronous get operation. The task result contains the embed channel set - within the server's widget settings; if none is set. - - Gets the widget channel (i.e. the channel set in the guild's widget settings) in this guild. @@ -3165,6 +3153,9 @@ The name of the guild. + + + @@ -3226,9 +3217,6 @@ - - - @@ -3518,6 +3506,15 @@ + + + + + + + + + @@ -3547,9 +3544,6 @@ Represents additional information regarding the REST-based invite object. - - - @@ -3562,17 +3556,9 @@ - - - Gets the user that created this invite. - - - - - Regex used to check if some text is formatted as inline code. @@ -3714,6 +3700,9 @@ + + + @@ -3726,6 +3715,9 @@ + + + @@ -3758,6 +3750,9 @@ + + + @@ -3843,6 +3838,9 @@ + + + @@ -3855,9 +3853,6 @@ - - - @@ -3937,6 +3932,9 @@ + + + @@ -4061,6 +4059,9 @@ + + + Resolving permissions requires the parent guild to be downloaded. @@ -4080,15 +4081,27 @@ + + + + + + + + + + + + @@ -4168,6 +4181,9 @@ + + + @@ -4195,9 +4211,9 @@ - + - Returns a direct message channel to this user, or create one if it does not already exist. + Creates a direct message channel to this user. The options to be used when sending the request. @@ -4218,7 +4234,7 @@ A string that resolves to Username#Discriminator of the user. - + @@ -4245,6 +4261,9 @@ + + + @@ -4257,15 +4276,27 @@ + + + + + + + + + + + + @@ -4293,10 +4324,10 @@ - + - + @@ -4378,5 +4409,32 @@ A string containing the filename of this attachment. + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/Discord.Net.Rest/DiscordRestClient.cs b/src/Discord.Net.Rest/DiscordRestClient.cs index 5059d437d..75d829ba0 100644 --- a/src/Discord.Net.Rest/DiscordRestClient.cs +++ b/src/Discord.Net.Rest/DiscordRestClient.cs @@ -46,6 +46,11 @@ namespace Discord.Rest ApiClient.CurrentUserId = user.Id; base.CurrentUser = RestSelfUser.Create(this, user); } + + internal void CreateRestSelfUser(API.User user) + { + base.CurrentUser = RestSelfUser.Create(this, user); + } /// internal override Task OnLogoutAsync() { diff --git a/src/Discord.Net.Rest/Entities/Messages/MessageHelper.cs b/src/Discord.Net.Rest/Entities/Messages/MessageHelper.cs index b24db3960..2062759ff 100644 --- a/src/Discord.Net.Rest/Entities/Messages/MessageHelper.cs +++ b/src/Discord.Net.Rest/Entities/Messages/MessageHelper.cs @@ -65,7 +65,7 @@ namespace Discord.Rest { Content = args.Content, Embed = args.Embed.IsSpecified ? args.Embed.Value.ToModel() : Optional.Create(), - Components = args.Components.IsSpecified ? args.Components.Value?.Components.Select(x => new API.ActionRowComponent(x)).ToArray() : Optional.Unspecified + Components = args.Components.IsSpecified ? args.Components.Value?.Components.Select(x => new API.ActionRowComponent(x)).ToArray() : Optional.Unspecified, Flags = args.Flags.IsSpecified ? args.Flags.Value : Optional.Create(), AllowedMentions = args.AllowedMentions.IsSpecified ? args.AllowedMentions.Value.ToModel() : Optional.Create(), }; @@ -128,11 +128,6 @@ namespace Discord.Rest await client.ApiClient.AddReactionAsync(channelId, messageId, emote is Emote e ? $"{e.Name}:{e.Id}" : UrlEncode(emote.Name), options).ConfigureAwait(false); } - public static async Task AddReactionAsync(ulong channelId, ulong messageId, IEmote emote, BaseDiscordClient client, RequestOptions options) - { - await client.ApiClient.AddReactionAsync(channelId, messageId, emote is Emote e ? $"{e.Name}:{e.Id}" : UrlEncode(emote.Name), options).ConfigureAwait(false); - } - public static async Task AddReactionAsync(IMessage msg, IEmote emote, BaseDiscordClient client, RequestOptions options) { await client.ApiClient.AddReactionAsync(msg.Channel.Id, msg.Id, emote is Emote e ? $"{e.Name}:{e.Id}" : UrlEncode(emote.Name), options).ConfigureAwait(false); diff --git a/src/Discord.Net.WebSocket/Discord.Net.WebSocket.xml b/src/Discord.Net.WebSocket/Discord.Net.WebSocket.xml index 4e9113a97..30689f61f 100644 --- a/src/Discord.Net.WebSocket/Discord.Net.WebSocket.xml +++ b/src/Discord.Net.WebSocket/Discord.Net.WebSocket.xml @@ -83,61 +83,6 @@ This client is not configured with WebSocket support. - - Creates a new REST/WebSocket discord client. - - - - - - Wraps another stream with a timed buffer. - - - Reads the payload from an RTP frame - - - Converts Opus to PCM - - - Header received with no payload. - - - Received payload without an RTP header. - - - Converts PCM to Opus - - - Wraps an IAudioClient, sending voice data on write. - - - Reads the payload from an RTP frame - - - The token has had cancellation requested. - The associated has been disposed. - - - Wraps data in an RTP frame - - - - Decrypts an RTP frame using libsodium. - - - - - Encrypts an RTP frame using libsodium. - - - - Header received with no payload. - - - Received payload without an RTP header. - The token has had cancellation requested. - The associated has been disposed. - Represents the base of a WebSocket-based Discord client. @@ -202,14 +147,6 @@ A read-only collection of private channels that the user currently partakes in. - - - Gets a collection of available voice regions. - - - A read-only collection of voice regions that the user has access to. - - Gets a Discord application information for the logged-in user. @@ -291,14 +228,24 @@ found. - + + + Gets all voice regions. + + The options to be used when sending the request. + + A task that contains a read-only collection of REST-based voice regions. + + + Gets a voice region. The identifier of the voice region (e.g. eu-central ). + The options to be used when sending the request. - A REST-based voice region associated with the identifier; null if the voice region is not - found. + A task that contains a REST-based voice region associated with the identifier; null if the + voice region is not found. @@ -323,6 +270,12 @@ The name of the game. If streaming, the URL of the stream. Must be a valid Twitch URL. The type of the game. + + + Bot accounts cannot set as their activity + type and it will have no effect. + + A task that represents the asynchronous set operation. @@ -336,6 +289,10 @@ Discord will only accept setting of name and the type of activity. + + Bot accounts cannot set as their activity + type and it will have no effect. + Rich Presence cannot be set via this method or client. Rich Presence is strictly limited to RPC clients only. @@ -814,9 +771,6 @@ - - - Provides access to a REST-only client with a shared state from this client. @@ -855,7 +809,10 @@ - + + + + @@ -980,9 +937,6 @@ A collection of group channels that have been opened in this session. - - - Initializes a new REST/WebSocket-based Discord client. @@ -997,9 +951,6 @@ - - - @@ -1018,6 +969,44 @@ + + + Gets a generic channel from the cache or does a rest request if unavailable. + + + + var channel = await _client.GetChannelAsync(381889909113225237); + if (channel != null && channel is IMessageChannel msgChannel) + { + await msgChannel.SendMessageAsync($"{msgChannel} is created at {msgChannel.CreatedAt}"); + } + + + The snowflake identifier of the channel (e.g. `381889909113225237`). + The options to be used when sending the request. + + A task that represents the asynchronous get operation. The task result contains the channel associated + with the snowflake identifier; null when the channel cannot be found. + + + + + Gets a user from the cache or does a rest request if unavailable. + + + + var user = await _client.GetUserAsync(168693960628371456); + if (user != null) + Console.WriteLine($"{user} is created at {user.CreatedAt}."; + + + The snowflake identifier of the user (e.g. `168693960628371456`). + The options to be used when sending the request. + + A task that represents the asynchronous get operation. The task result contains the user associated with + the snowflake identifier; null if the user is not found. + + Clears all cached channels from the client. @@ -1039,7 +1028,10 @@ Clears cached users from the client. - + + + + @@ -1273,28 +1265,6 @@ Setting this property to nulldisables this check. - - - Gets or sets the behavior for on bulk deletes. - - - - If true, the event will not be raised for bulk - deletes, and only the will be raised. If false - , both events will be raised. - - - If unset, both events will be raised, but a warning will be raised the first time a bulk delete event is - received. - - - - - - Gets or sets enabling dispatching of guild subscription events e.g. presence and typing events. - This is not used if are provided. - - Gets or sets the maximum identify concurrency. @@ -1321,7 +1291,8 @@ - Gets or sets gateway intents to limit what events are sent from Discord. Allows for more granular control than the property. + Gets or sets gateway intents to limit what events are sent from Discord. + The default is . For more information, please see @@ -1720,6 +1691,9 @@ + + + @@ -1897,6 +1871,9 @@ + + + @@ -2263,6 +2240,9 @@ + + + @@ -2433,9 +2413,6 @@ - - - @@ -2588,14 +2565,6 @@ A representing the maximum bitrate value allowed by Discord in this guild. - - - Gets the embed channel (i.e. the channel set in the guild's widget settings) in this guild. - - - A channel set within the server's widget settings; if none is set. - - Gets the widget channel (i.e. the channel set in the guild's widget settings) in this guild. @@ -2719,10 +2688,6 @@ is . - - - is . - is . @@ -3026,6 +2991,9 @@ of application commands found within the guild. + + + @@ -3056,12 +3024,6 @@ - - - - - - @@ -3122,9 +3084,6 @@ - - - @@ -3491,6 +3450,98 @@ A task that represents the asynchronous operation of acknowledging the interaction. + + + Gets the unique identifier for this invite. + + + A string containing the invite code (e.g. FTqNnyS). + + + + + Gets the URL used to accept this invite + + + A string containing the full invite URL (e.g. https://discord.gg/FTqNnyS). + + + + + Gets the channel this invite is linked to. + + + A generic channel that the invite points to. + + + + + Gets the guild this invite is linked to. + + + A guild object representing the guild that the invite points to. + + + + + Represents a guild invite + + + + + Gets the unique invite code + + Returns the unique invite code + + + + + + Gets the user who created the invite + + Returns the user who created the invite + + + + + + Gets the maximum number of times the invite can be used, if there is no limit then the value will be 0 + + Returns the maximum number of times the invite can be used, if there is no limit then the value will be 0 + + + + + + Gets whether or not the invite is temporary (invited users will be kicked on disconnect unless they're assigned a role) + + Returns whether or not the invite is temporary (invited users will be kicked on disconnect unless they're assigned a role) + + + + + + Gets the time at which the invite was created + + Returns the time at which the invite was created + + + + + + Gets how long the invite is valid for + + Returns how long the invite is valid for (in seconds) + + + + + + Deletes the invite + + + + @@ -3522,9 +3573,6 @@ - - - @@ -3598,7 +3646,10 @@ - + + + + @@ -3661,6 +3712,9 @@ + + + Returns all attachments included in this message. @@ -3704,6 +3758,9 @@ + + + @@ -3748,6 +3805,9 @@ + + + @@ -3885,6 +3945,9 @@ + + + @@ -3899,9 +3962,6 @@ - - - @@ -3943,6 +4003,9 @@ + + + @@ -4082,6 +4145,9 @@ + + + @@ -4125,15 +4191,27 @@ + + + + + + + + + + + + @@ -4160,9 +4238,6 @@ - - - @@ -4296,6 +4371,9 @@ + + + @@ -4305,9 +4383,6 @@ - - - @@ -4325,7 +4400,7 @@ This property will only include guilds in the same . - + @@ -4436,6 +4511,9 @@ + + + @@ -4450,18 +4528,34 @@ Webhook users cannot be modified. + + + Roles are not supported on webhook users. + Roles are not supported on webhook users. + + + Roles are not supported on webhook users. + Roles are not supported on webhook users. + + + Roles are not supported on webhook users. + Roles are not supported on webhook users. + + + Roles are not supported on webhook users. + Roles are not supported on webhook users. @@ -4531,6 +4625,61 @@ The reason why the gateway has been requested to reconnect. + + Creates a new REST/WebSocket discord client. + + + + + + Wraps another stream with a timed buffer. + + + Reads the payload from an RTP frame + + + Converts Opus to PCM + + + Header received with no payload. + + + Received payload without an RTP header. + + + Converts PCM to Opus + + + Wraps an IAudioClient, sending voice data on write. + + + Reads the payload from an RTP frame + + + The token has had cancellation requested. + The associated has been disposed. + + + Wraps data in an RTP frame + + + + Decrypts an RTP frame using libsodium. + + + + + Encrypts an RTP frame using libsodium. + + + + Header received with no payload. + + + Received payload without an RTP header. + The token has had cancellation requested. + The associated has been disposed. + The sharded variant of , which may contain the client, user, guild, channel, and message. diff --git a/src/Discord.Net.WebSocket/DiscordSocketClient.cs b/src/Discord.Net.WebSocket/DiscordSocketClient.cs index c0f4263fb..3ea599545 100644 --- a/src/Discord.Net.WebSocket/DiscordSocketClient.cs +++ b/src/Discord.Net.WebSocket/DiscordSocketClient.cs @@ -617,6 +617,7 @@ namespace Discord.WebSocket var state = new ClientState(data.Guilds.Length, data.PrivateChannels.Length); var currentUser = SocketSelfUser.Create(this, state, data.User); + Rest.CreateRestSelfUser(data.User); var activities = _activity.IsSpecified ? ImmutableList.Create(_activity.Value) : null; currentUser.Presence = new SocketPresence(Status, null, activities); ApiClient.CurrentUserId = currentUser.Id;