refactor
This commit is contained in:
18
Extensions/RestMessageExtensions.cs
Normal file
18
Extensions/RestMessageExtensions.cs
Normal file
@@ -0,0 +1,18 @@
|
||||
using Discord;
|
||||
using Discord.Rest;
|
||||
|
||||
namespace Kasbot.Extensions
|
||||
{
|
||||
public static class RestMessageExtensions
|
||||
{
|
||||
public static async Task TryDeleteAsync(this RestMessage message, RequestOptions options = null)
|
||||
{
|
||||
try
|
||||
{
|
||||
await message.DeleteAsync(options);
|
||||
}
|
||||
catch { }
|
||||
}
|
||||
|
||||
}
|
||||
}
|
25
Extensions/SocketMessageExtensions.cs
Normal file
25
Extensions/SocketMessageExtensions.cs
Normal file
@@ -0,0 +1,25 @@
|
||||
using Discord;
|
||||
using Discord.WebSocket;
|
||||
|
||||
namespace Kasbot.Extensions
|
||||
{
|
||||
public static class SocketMessageExtensions
|
||||
{
|
||||
private const int MessageDelay = 3_000; // in ms
|
||||
|
||||
public static async Task SendTemporaryMessageAsync(this ISocketMessageChannel channel, string text = null, bool isTTS = false, Embed embed = null, RequestOptions options = null, AllowedMentions allowedMentions = null, MessageReference messageReference = null, MessageComponent components = null, ISticker[] stickers = null, Embed[] embeds = null, MessageFlags flags = MessageFlags.None)
|
||||
{
|
||||
var message = await channel.SendMessageAsync(text, isTTS, embed, options, allowedMentions, messageReference, components, stickers, embeds, flags);
|
||||
await Task.Delay(MessageDelay);
|
||||
await message.DeleteAsync();
|
||||
}
|
||||
|
||||
public static async Task SendTemporaryMessageAsync(this IMessageChannel channel, string text = null, bool isTTS = false, Embed embed = null, RequestOptions options = null, AllowedMentions allowedMentions = null, MessageReference messageReference = null, MessageComponent components = null, ISticker[] stickers = null, Embed[] embeds = null, MessageFlags flags = MessageFlags.None)
|
||||
{
|
||||
var message = await channel.SendMessageAsync(text, isTTS, embed, options, allowedMentions, messageReference, components, stickers, embeds, flags);
|
||||
await Task.Delay(MessageDelay);
|
||||
await message.DeleteAsync();
|
||||
}
|
||||
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user