Browse Source

added MESSAGE_DELETE_BULK

tags/1.0-rc
RogueException 9 years ago
parent
commit
eed8fb3833
2 changed files with 34 additions and 0 deletions
  1. +13
    -0
      src/Discord.Net/API/Gateway/MessageDeleteBulkEvent.cs
  2. +21
    -0
      src/Discord.Net/DiscordSocketClient.cs

+ 13
- 0
src/Discord.Net/API/Gateway/MessageDeleteBulkEvent.cs View File

@@ -0,0 +1,13 @@
using Newtonsoft.Json;
using System.Collections.Generic;

namespace Discord.API.Gateway
{
public class MessageDeleteBulkEvent
{
[JsonProperty("channel_id")]
public ulong ChannelId { get; set; }
[JsonProperty("ids")]
public IEnumerable<ulong> Ids { get; set; }
}
}

+ 21
- 0
src/Discord.Net/DiscordSocketClient.cs View File

@@ -805,6 +805,27 @@ namespace Discord
} }
} }
break; break;
case "MESSAGE_DELETE_BULK":
{
await _gatewayLogger.DebugAsync("Received Dispatch (MESSAGE_DELETE_BULK)").ConfigureAwait(false);

var data = (payload as JToken).ToObject<MessageDeleteBulkEvent>(_serializer);
var channel = DataStore.GetChannel(data.ChannelId) as ICachedMessageChannel;
if (channel != null)
{
foreach (var id in data.Ids)
{
var msg = channel.RemoveMessage(id);
await MessageDeleted.RaiseAsync(msg).ConfigureAwait(false);
}
}
else
{
await _gatewayLogger.WarningAsync("MESSAGE_DELETE_BULK referenced an unknown channel.").ConfigureAwait(false);
return;
}
}
break;


//Statuses //Statuses
case "PRESENCE_UPDATE": case "PRESENCE_UPDATE":


Loading…
Cancel
Save