3
0
Fork 0
mirror of https://github.com/ZeppelinBot/Zeppelin.git synced 2025-05-11 04:45:02 +00:00

Allow Automod to distinguish whether mod actions are manual or automatic (#179)

This commit is contained in:
Nils 2021-04-28 21:06:33 +02:00 committed by GitHub
parent 90b6f4bc86
commit 51db942d97
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
18 changed files with 106 additions and 32 deletions

View file

@ -33,7 +33,12 @@ export const BanAction = automodAction({
const modActions = pluginData.getPlugin(ModActionsPlugin);
for (const userId of userIdsToBan) {
await modActions.banUserId(userId, reason, { contactMethods, caseArgs, deleteMessageDays });
await modActions.banUserId(userId, reason, {
contactMethods,
caseArgs,
deleteMessageDays,
isAutomodAction: true,
});
}
},
});

View file

@ -33,7 +33,7 @@ export const KickAction = automodAction({
const modActions = pluginData.getPlugin(ModActionsPlugin);
for (const member of membersToKick) {
if (!member) continue;
await modActions.kickMember(member, reason, { contactMethods, caseArgs });
await modActions.kickMember(member, reason, { contactMethods, caseArgs, isAutomodAction: true });
}
},
});

View file

@ -49,7 +49,14 @@ export const MuteAction = automodAction({
const mutes = pluginData.getPlugin(MutesPlugin);
for (const userId of userIdsToMute) {
try {
await mutes.muteUser(userId, duration, reason, { contactMethods, caseArgs }, rolesToRemove, rolesToRestore);
await mutes.muteUser(
userId,
duration,
reason,
{ contactMethods, caseArgs, isAutomodAction: true },
rolesToRemove,
rolesToRestore,
);
} catch (e) {
if (e instanceof RecoverablePluginError && e.code === ERRORS.NO_MUTE_ROLE_IN_CONFIG) {
pluginData.getPlugin(LogsPlugin).log(LogType.BOT_ALERT, {

View file

@ -33,7 +33,7 @@ export const WarnAction = automodAction({
const modActions = pluginData.getPlugin(ModActionsPlugin);
for (const member of membersToWarn) {
if (!member) continue;
await modActions.warnMember(member, reason, { contactMethods, caseArgs });
await modActions.warnMember(member, reason, { contactMethods, caseArgs, isAutomodAction: true });
}
},
});