private static async Task SendMailNotification(ulong channel, JsonClasses.Mail mail, string from, string mention, bool displaySummary) { // var stamp = DateTime.Parse(mail.timestamp).ToString(SettingsManager.Settings.Config.ShortTimeFormat); var sList = await PrepareBodyMessage(mail.body); var body = sList[0]; var fits = sList[1]; var urls = sList[2]; var fields = body.SplitToLines(1923); /* var embed = new EmbedBuilder() * .WithThumbnailUrl(SettingsManager.Settings.Resources.ImgMail); * var cnt = 0; * foreach (var field in fields) * { * if (cnt == 0) * embed.AddField($"{LM.Get("mailSubject")} {mail.subject}", string.IsNullOrWhiteSpace(field) ? "---" : field); * else * embed.AddField($"-", string.IsNullOrWhiteSpace(field) ? "---" : field); * cnt++; * } * embed.WithFooter($"{LM.Get("mailDate")} {stamp}");*/ var ch = APIHelper.DiscordAPI.GetChannel(channel); await APIHelper.DiscordAPI.SendMessageAsync(ch, $"{mention} {from}"); foreach (var field in fields) { await APIHelper.DiscordAPI.SendMessageAsync(ch, $".\r\n{field}"); } if (displaySummary && !string.IsNullOrEmpty(fits)) { var list = fits.SplitToLines(1950, "</a>", true).ToList(); for (var i = 0; i < list.Count; i++) { var res = list[i]; if (i != list.Count - 1 && !res.EndsWith("```")) { res += "```"; } if (!res.StartsWith("```")) { res = res.Insert(0, "```"); } await APIHelper.DiscordAPI.SendMessageAsync(ch, $".\r\n{res}"); } } if (displaySummary && !string.IsNullOrEmpty(urls)) { var list = urls.SplitToLines(1950); foreach (var s in list) { await APIHelper.DiscordAPI.SendMessageAsync(ch, $".\r\n{s}"); } } }
private async Task SendMailNotification(ulong channel, JsonClasses.Mail mail, string labelNames) { var sender = await APIHelper.ESIAPI.GetCharacterData(Reason, mail.from); var labels = string.IsNullOrEmpty(labelNames) ? null : $"{LM.Get("mailLabels")} {labelNames} | "; var stamp = DateTime.Parse(mail.timestamp).ToString(SettingsManager.Get("config", "shortTimeFormat")); var embed = new EmbedBuilder() .WithThumbnailUrl(SettingsManager.Get("resources", "imgMail")) .AddField($"{LM.Get("mailSubject")} {mail.subject}", await PrepareBodyMessage(mail.body)) .WithFooter($"{labels}{LM.Get("mailDate")} {stamp}"); var ch = APIHelper.DiscordAPI.GetChannel(channel); await APIHelper.DiscordAPI.SendMessageAsync(ch, string.Format(LM.Get("mailMsgTitle"), sender?.name), embed.Build()).ConfigureAwait(false); }