fix(logclean): use application ID rather than bot user ID when needed
This commit is contained in:
parent
0419ced0d2
commit
84e7e71f88
@ -49,7 +49,7 @@ public class LoggerCleanService
|
|||||||
new LoggerBot("Pancake", 239631525350604801, fuzzyExtractFunc: ExtractPancake),
|
new LoggerBot("Pancake", 239631525350604801, fuzzyExtractFunc: ExtractPancake),
|
||||||
new LoggerBot("Logger", 298822483060981760, ExtractLogger), // webhook
|
new LoggerBot("Logger", 298822483060981760, ExtractLogger), // webhook
|
||||||
new LoggerBot("Patron Logger", 579149474975449098, ExtractLogger), // webhook (?)
|
new LoggerBot("Patron Logger", 579149474975449098, ExtractLogger), // webhook (?)
|
||||||
new LoggerBot("Dyno", 155149108183695360, ExtractDyno), // webhook
|
new LoggerBot("Dyno", 155149108183695360, ExtractDyno, applicationId: 161660517914509312), // webhook
|
||||||
new LoggerBot("Dyno Premium", 168274283414421504, ExtractDyno), // webhook
|
new LoggerBot("Dyno Premium", 168274283414421504, ExtractDyno), // webhook
|
||||||
new LoggerBot("Auttaja", 242730576195354624, ExtractAuttaja), // webhook
|
new LoggerBot("Auttaja", 242730576195354624, ExtractAuttaja), // webhook
|
||||||
new LoggerBot("GenericBot", 295329346590343168, ExtractGenericBot),
|
new LoggerBot("GenericBot", 295329346590343168, ExtractGenericBot),
|
||||||
@ -66,6 +66,9 @@ public class LoggerCleanService
|
|||||||
new LoggerBot("ProBot Prime", 567703512763334685, fuzzyExtractFunc: ExtractProBot), // webhook (?)
|
new LoggerBot("ProBot Prime", 567703512763334685, fuzzyExtractFunc: ExtractProBot), // webhook (?)
|
||||||
}.ToDictionary(b => b.Id);
|
}.ToDictionary(b => b.Id);
|
||||||
|
|
||||||
|
private static Dictionary<ulong, LoggerBot> _botsByApplicationId
|
||||||
|
=> _bots.Values.ToDictionary(b => b.ApplicationId);
|
||||||
|
|
||||||
private readonly IDiscordCache _cache;
|
private readonly IDiscordCache _cache;
|
||||||
private readonly DiscordApiClient _client;
|
private readonly DiscordApiClient _client;
|
||||||
|
|
||||||
@ -92,7 +95,7 @@ public class LoggerCleanService
|
|||||||
// If this message is from a *webhook*, check if the application ID matches one of the bots we know
|
// If this message is from a *webhook*, check if the application ID matches one of the bots we know
|
||||||
// If it's from a *bot*, check the bot ID to see if we know it.
|
// If it's from a *bot*, check the bot ID to see if we know it.
|
||||||
LoggerBot bot = null;
|
LoggerBot bot = null;
|
||||||
if (msg.WebhookId != null && msg.ApplicationId != null) _bots.TryGetValue(msg.ApplicationId.Value, out bot);
|
if (msg.WebhookId != null && msg.ApplicationId != null) _botsByApplicationId.TryGetValue(msg.ApplicationId.Value, out bot);
|
||||||
else if (msg.Author.Bot) _bots.TryGetValue(msg.Author.Id, out bot);
|
else if (msg.Author.Bot) _bots.TryGetValue(msg.Author.Id, out bot);
|
||||||
|
|
||||||
// If we didn't find anything before, or what we found is an unsupported bot, bail
|
// If we didn't find anything before, or what we found is an unsupported bot, bail
|
||||||
@ -376,18 +379,21 @@ public class LoggerCleanService
|
|||||||
public class LoggerBot
|
public class LoggerBot
|
||||||
{
|
{
|
||||||
public ulong Id;
|
public ulong Id;
|
||||||
|
public ulong ApplicationId;
|
||||||
public string Name;
|
public string Name;
|
||||||
|
|
||||||
public Func<Message, ulong?> ExtractFunc;
|
public Func<Message, ulong?> ExtractFunc;
|
||||||
public Func<Message, FuzzyExtractResult?> FuzzyExtractFunc;
|
public Func<Message, FuzzyExtractResult?> FuzzyExtractFunc;
|
||||||
|
|
||||||
public LoggerBot(string name, ulong id, Func<Message, ulong?> extractFunc = null,
|
public LoggerBot(string name, ulong id, Func<Message, ulong?> extractFunc = null,
|
||||||
Func<Message, FuzzyExtractResult?> fuzzyExtractFunc = null)
|
Func<Message, FuzzyExtractResult?> fuzzyExtractFunc = null,
|
||||||
|
ulong? applicationId = null)
|
||||||
{
|
{
|
||||||
Name = name;
|
Name = name;
|
||||||
Id = id;
|
Id = id;
|
||||||
FuzzyExtractFunc = fuzzyExtractFunc;
|
FuzzyExtractFunc = fuzzyExtractFunc;
|
||||||
ExtractFunc = extractFunc;
|
ExtractFunc = extractFunc;
|
||||||
|
ApplicationId = applicationId ?? id;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user