added MESSAGE_DELETE_BULK

This commit is contained in:
RogueException
2016-06-12 17:23:47 -03:00
parent 6adb6b1882
commit eed8fb3833
2 changed files with 34 additions and 0 deletions

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; }
}
}

View File

@@ -805,6 +805,27 @@ namespace Discord
}
}
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
case "PRESENCE_UPDATE":