@@ -0,0 +1,12 @@ | |||||
using Newtonsoft.Json; | |||||
namespace Discord.API.Gateway | |||||
{ | |||||
internal class GuildJoinRequestDeleteEvent | |||||
{ | |||||
[JsonProperty("user_id")] | |||||
public ulong UserId { get; set; } | |||||
[JsonProperty("guild_id")] | |||||
public ulong GuildId { get; set; } | |||||
} | |||||
} |
@@ -335,6 +335,13 @@ namespace Discord.WebSocket | |||||
remove { _guildUpdatedEvent.Remove(value); } | remove { _guildUpdatedEvent.Remove(value); } | ||||
} | } | ||||
internal readonly AsyncEvent<Func<SocketGuild, SocketGuild, Task>> _guildUpdatedEvent = new AsyncEvent<Func<SocketGuild, SocketGuild, Task>>(); | internal readonly AsyncEvent<Func<SocketGuild, SocketGuild, Task>> _guildUpdatedEvent = new AsyncEvent<Func<SocketGuild, SocketGuild, Task>>(); | ||||
/// <summary>Fired when a user leaves without agreeing to the member screening </summary> | |||||
public event Func<ulong, ulong, Task> GuildJoinRequestDeleted | |||||
{ | |||||
add { _guildJoinRequestDeletedEvent.Add(value); } | |||||
remove { _guildJoinRequestDeletedEvent.Remove(value); } | |||||
} | |||||
internal readonly AsyncEvent<Func<ulong, ulong, Task>> _guildJoinRequestDeletedEvent = new AsyncEvent<Func<ulong, ulong, Task>>(); | |||||
#endregion | #endregion | ||||
#region Users | #region Users | ||||
@@ -485,6 +485,7 @@ namespace Discord.WebSocket | |||||
client.GuildStickerCreated += (sticker) => _guildStickerCreated.InvokeAsync(sticker); | client.GuildStickerCreated += (sticker) => _guildStickerCreated.InvokeAsync(sticker); | ||||
client.GuildStickerDeleted += (sticker) => _guildStickerDeleted.InvokeAsync(sticker); | client.GuildStickerDeleted += (sticker) => _guildStickerDeleted.InvokeAsync(sticker); | ||||
client.GuildStickerUpdated += (before, after) => _guildStickerUpdated.InvokeAsync(before, after); | client.GuildStickerUpdated += (before, after) => _guildStickerUpdated.InvokeAsync(before, after); | ||||
client.GuildJoinRequestDeleted += (userId, guildId) => _guildJoinRequestDeletedEvent.InvokeAsync(userId, guildId); | |||||
} | } | ||||
#endregion | #endregion | ||||
@@ -1004,6 +1004,14 @@ namespace Discord.WebSocket | |||||
} | } | ||||
} | } | ||||
break; | break; | ||||
case "GUILD_JOIN_REQUEST_DELETE": | |||||
{ | |||||
await _gatewayLogger.DebugAsync("Received Dispatch (GUILD_JOIN_REQUEST_DELETE)").ConfigureAwait(false); | |||||
var data = (payload as JToken).ToObject<GuildJoinRequestDeleteEvent>(_serializer); | |||||
await TimedInvokeAsync(_guildJoinRequestDeletedEvent, nameof(GuildJoinRequestDeleted), data.UserId, data.GuildId).ConfigureAwait(false); | |||||
} | |||||
break; | |||||
#endregion | #endregion | ||||
#region Channels | #region Channels | ||||