feat(bot): add proxy error config (#544)
This commit is contained in:
@@ -248,6 +248,13 @@ public class Checks
|
||||
_proxy.ShouldProxy(channel, msg, context);
|
||||
_matcher.TryMatch(context, autoproxySettings, members, out var match, msg.Content, msg.Attachments.Length > 0, true, ctx.Config.CaseSensitiveProxyTags);
|
||||
|
||||
var canProxy = await _proxy.CanProxy(channel, msg, context);
|
||||
if (canProxy != null)
|
||||
{
|
||||
await ctx.Reply(canProxy);
|
||||
return;
|
||||
}
|
||||
|
||||
await ctx.Reply("I'm not sure why this message was not proxied, sorry.");
|
||||
}
|
||||
catch (ProxyService.ProxyChecksFailedException e)
|
||||
|
||||
@@ -95,6 +95,13 @@ public class Config
|
||||
"enabled"
|
||||
));
|
||||
|
||||
items.Add(new(
|
||||
"Proxy error",
|
||||
"Whether to send an error message when proxying fails.",
|
||||
EnabledDisabled(ctx.Config.ProxyErrorMessageEnabled),
|
||||
"enabled"
|
||||
));
|
||||
|
||||
await ctx.Paginate<PaginatedConfigItem>(
|
||||
items.ToAsyncEnumerable(),
|
||||
items.Count,
|
||||
@@ -413,4 +420,27 @@ public class Config
|
||||
await ctx.Reply("Proxy tags are now case insensitive.");
|
||||
}
|
||||
}
|
||||
|
||||
public async Task ProxyErrorMessageEnabled(Context ctx)
|
||||
{
|
||||
if (!ctx.HasNext())
|
||||
{
|
||||
if (ctx.Config.ProxyErrorMessageEnabled) { await ctx.Reply("Proxy error messages are currently **enabled**."); }
|
||||
else { await ctx.Reply("Proxy error messages are currently **disabled**. Messages that fail to proxy (due to message or attachment size) will not throw an error message."); }
|
||||
return;
|
||||
}
|
||||
|
||||
if (ctx.MatchToggle(true))
|
||||
{
|
||||
await ctx.Repository.UpdateSystemConfig(ctx.System.Id, new() { ProxyErrorMessageEnabled = true });
|
||||
|
||||
await ctx.Reply("Proxy error messages are now enabled.");
|
||||
}
|
||||
else
|
||||
{
|
||||
await ctx.Repository.UpdateSystemConfig(ctx.System.Id, new() { ProxyErrorMessageEnabled = false });
|
||||
|
||||
await ctx.Reply("Proxy error messages are now disabled. Messages that fail to proxy (due to message or attachment size) will not throw an error message.");
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user