Fixed edit message queue

This commit is contained in:
RogueException
2015-12-09 23:11:38 -04:00
parent a0cbe5d3b2
commit 954fea856f

View File

@@ -353,22 +353,31 @@ namespace Discord
{ {
while (_pendingMessages.TryDequeue(out queuedMessage)) while (_pendingMessages.TryDequeue(out queuedMessage))
{ {
SendMessageResponse response = null;
var msg = queuedMessage.Message; var msg = queuedMessage.Message;
try try
{ {
response = await _api.SendMessage( if (msg.Id < 0)
{
await _api.SendMessage(
msg.Channel.Id,
queuedMessage.Text,
queuedMessage.MentionedUsers,
IdConvert.ToString(msg.Id), //Nonce
msg.IsTTS)
.ConfigureAwait(false);
RaiseMessageSent(msg);
}
else
{
await _api.EditMessage(
msg.Id,
msg.Channel.Id, msg.Channel.Id,
queuedMessage.Text, queuedMessage.Text,
queuedMessage.MentionedUsers, queuedMessage.MentionedUsers);
IdConvert.ToString(msg.Id), //Nonce }
msg.IsTTS)
.ConfigureAwait(false);
} }
catch (WebException) { break; } catch (WebException) { break; }
catch (HttpException) { msg.State = MessageState.Failed; } catch (HttpException) { msg.State = MessageState.Failed; }
RaiseMessageSent(msg);
} }
await Task.Delay(interval).ConfigureAwait(false); await Task.Delay(interval).ConfigureAwait(false);
} }