/// <summary> /// When a new message is received /// </summary> /// <param name="message"></param> protected Task OnMessageReceivedAsync(SocketMessage message) { return(Task.Run(async() => { var botUserMention = DiscordClient.CurrentUser.Mention.Replace("!", ""); var isMentioned = message.Content.Contains(botUserMention) || message.Content.Contains(DiscordClient.CurrentUser.Mention); // Create the message object var messageObj = new DiscordReceivedMessage(this, message, isMentioned); // Propagate the event await OnMessageReceivedAsync(messageObj).ConfigureAwait(false); })); }
/// <summary> /// When a new message is deleted /// </summary> /// <param name="cacheable"></param> /// <param name="channel"></param> protected Task OnMessageDeletedAsync(Cacheable <IMessage, ulong> cacheable, ISocketMessageChannel channel) { return(Task.Run(async() => { if (cacheable.Value is SocketMessage socketMessage) { var botUserMention = DiscordClient.CurrentUser.Mention.Replace("!", ""); var isMentioned = socketMessage.Content.Contains(botUserMention) || socketMessage.Content.Contains(DiscordClient.CurrentUser.Mention); // Create the message object var messageObj = new DiscordReceivedMessage(this, socketMessage, isMentioned); // Propagate the event await OnMessageDeletedAsync(messageObj).ConfigureAwait(false); } })); }