public static DiscordColor GetColorForMessage(BroadCaptureML.Model.Enum.MessageType type) { DiscordColor color; switch (type) { case BroadCaptureML.Model.Enum.MessageType.Buy: color = new DiscordColor(255, 196, 93); break; case BroadCaptureML.Model.Enum.MessageType.Sell: color = new DiscordColor(6, 194, 88); break; case BroadCaptureML.Model.Enum.MessageType.Trade: color = new DiscordColor(55, 146, 203); break; case BroadCaptureML.Model.Enum.MessageType.BuyAndSell: color = new DiscordColor(255, 255, 255); break; case BroadCaptureML.Model.Enum.MessageType.SellOrTrade: color = new DiscordColor(0, 0, 0); break; case BroadCaptureML.Model.Enum.MessageType.Other: default: color = new DiscordColor(255, 0, 0); break; } return(color); }
private async Task CheckReservation(string message, DiscordChannel channel, BroadCaptureML.Model.Enum.MessageType messageType) { var guild = channel.Guild; foreach (var reserve in this._dbContext.Reservations) { if (reserve.Expired) { await this._dbContext.Reservations.DeleteAsync(reserve); continue; } if (message.ToLower().Contains(reserve.Keyword)) { var member = await guild.GetMemberAsync((ulong)reserve.OwnerId); if (member != null && !shortLiveUidBuffer.Contains((ulong)reserve.OwnerId)) { shortLiveUidBuffer.Add((ulong)reserve.OwnerId); var embed = DiscordEmbedHelpers.GenerateEmbedMessage($"Notification for {reserve.Keyword}", message, "Brought to you by Coalescense with love <3", (await discordClientFactory.Client.GetOwnerAsync()).AvatarUrl, DiscordColorHelpers.GetColorForMessage(messageType)); var dm = await member.CreateDmChannelAsync(); await dm.SendMessageAsync(embed : embed); } } } }