downgrade discord client, because of reactions fetch bug (see DSharpPlus/DSharpPlus#524)

This commit is contained in:
13xforever 2020-01-27 01:14:33 +05:00
parent d3ec06189b
commit ca1cb2857e
4 changed files with 12 additions and 17 deletions

View File

@ -140,7 +140,7 @@ namespace CompatBot.Commands
return;
}
await ctx.Client.ReportAsync("👀 Message report", msg, new[] {ctx.Message.Author}, comment, ReportSeverity.Medium).ConfigureAwait(false);
await ctx.Client.ReportAsync("👀 Message report", msg, new[] {ctx.Client.GetMember(ctx.Message.Author)}, comment, ReportSeverity.Medium).ConfigureAwait(false);
await msg.ReactWithAsync(Config.Reactions.Moderated).ConfigureAwait(false);
await ctx.ReactWithAsync(Config.Reactions.Success, "Message reported").ConfigureAwait(false);
}

View File

@ -24,13 +24,13 @@
</ItemGroup>
<ItemGroup>
<PackageReference Include="DSharpPlus" Version="4.0.0-nightly-00656" />
<PackageReference Include="DSharpPlus.CommandsNext" Version="4.0.0-nightly-00656" />
<PackageReference Include="DSharpPlus.Interactivity" Version="4.0.0-nightly-00656" />
<PackageReference Include="DSharpPlus" Version="4.0.0-nightly-00640" />
<PackageReference Include="DSharpPlus.CommandsNext" Version="4.0.0-nightly-00640" />
<PackageReference Include="DSharpPlus.Interactivity" Version="4.0.0-nightly-00640" />
<PackageReference Include="DuoVia.FuzzyStrings" Version="2.0.1" />
<PackageReference Include="Google.Apis.Drive.v3" Version="1.43.0.1807" />
<PackageReference Include="ksemenenko.ColorThief" Version="1.1.1.4" />
<PackageReference Include="MathParser.org-mXparser" Version="4.4.1" />
<PackageReference Include="MathParser.org-mXparser" Version="4.4.2" />
<PackageReference Include="MegaApiClient" Version="1.7.1" />
<PackageReference Include="Microsoft.AspNet.WebApi.Client" Version="5.2.7" />
<PackageReference Include="Microsoft.EntityFrameworkCore" Version="3.1.0" />

View File

@ -156,6 +156,9 @@ namespace CompatBot.EventHandlers
return;
var users = await message.GetReactionsAsync(emoji).ConfigureAwait(false);
if (users.Any(u => u.IsCurrent))
return;
var members = users
.Select(u => channel.Guild
.GetMemberAsync(u.Id)
@ -164,15 +167,7 @@ namespace CompatBot.EventHandlers
.Select(t => t.Unwrap().ConfigureAwait(false).GetAwaiter().GetResult())
.Where(m => m != null)
.ToList();
var reporters = new List<DiscordMember>(Config.Moderation.StarbucksThreshold);
foreach (var member in members)
{
if (member.IsCurrent)
return;
if (member.Roles.Any())
reporters.Add(member);
}
var reporters = members.Where(m => m.Roles.Any()).ToList();
if (reporters.Count < Config.Moderation.StarbucksThreshold)
return;

View File

@ -122,14 +122,14 @@ namespace CompatBot.Utils
return await logChannel.SendMessageAsync(embed: embedBuilder.Build()).ConfigureAwait(false);
}
public static async Task<DiscordMessage> ReportAsync(this DiscordClient client, string infraction, DiscordMessage message, IEnumerable<DiscordUser> reporters, string comment, ReportSeverity severity)
public static async Task<DiscordMessage> ReportAsync(this DiscordClient client, string infraction, DiscordMessage message, IEnumerable<DiscordMember> reporters, string comment, ReportSeverity severity)
{
var getLogChannelTask = client.GetChannelAsync(Config.BotLogId);
var embedBuilder = MakeReportTemplate(client, infraction, message, severity);
var reportText = string.IsNullOrEmpty(comment) ? "" : comment.Sanitize() + Environment.NewLine;
embedBuilder.Description = (reportText + embedBuilder.Description).Trim(EmbedPager.MaxDescriptionLength);
var members = reporters.Select(client.GetMember);
embedBuilder.AddField("Reporters", string.Join(Environment.NewLine, members.Select(GetMentionWithNickname)));
var mentions = reporters.Select(GetMentionWithNickname);
embedBuilder.AddField("Reporters", string.Join(Environment.NewLine, mentions));
var logChannel = await getLogChannelTask.ConfigureAwait(false);
return await logChannel.SendMessageAsync(embed: embedBuilder.Build()).ConfigureAwait(false);
}