Watchcat - Discord Auto-Moderation
Watchcat es un módulo de Node.js que proporciona funcionalidades de auto-moderación para bots de Discord. Con Watchcat, puedes mantener un ambiente seguro y limpio en tu servidor de Discord mediante la detección y eliminación automática de contenido inapropiado, spam, mensajes duplicados y enlaces no deseados.
Métodos y Características
-
Filtrado de Palabras: Watchcat puede detectar y eliminar mensajes que contengan palabras específicas definidas por el usuario para mantener un lenguaje apropiado en el servidor.
checkMessage(message)
: Verifica si el mensaje contiene alguna de las palabras filtradas. Si es así, elimina el mensaje.
-
Detección de Spam: Con la función de seguimiento de spam, Watchcat puede imponer una sanción automática a los miembros que envíen mensajes repetitivos en un corto período de tiempo.
checkSpam(userId, guild)
: Realiza un seguimiento de los mensajes enviados por un usuario y aplica una sanción de ban si supera el número máximo de mensajes permitidos en el tiempo establecido.
-
Mensajes Duplicados: Watchcat rastrea los mensajes duplicados y aplica acciones de moderación a los miembros que repitan el mismo mensaje varias veces.
duplicateMessageFilter(message)
: Rastrea los mensajes duplicados enviados por un usuario y aplica una sanción de ban si supera el número máximo de mensajes duplicados permitidos en el tiempo establecido.
-
Anti-Enlaces: Watchcat detecta los enlaces en los mensajes y puede eliminarlos, evitando así la divulgación de enlaces no deseados en el servidor.
antiLink(message)
: Detecta los enlaces en el mensaje y elimina el mensaje, aplicando una sanción de ban al usuario que envió el enlace.
Propiedades
-
filterWords
: Un array de palabras que se utilizarán para filtrar mensajes. Los mensajes que contengan alguna de estas palabras serán eliminados.
-
maxMessages
: Número máximo de mensajes que un usuario puede enviar dentro del timeFrame antes de ser sancionado por spam.
-
timeFrame
: Período de tiempo en segundos durante el cual se contabilizarán los mensajes del usuario para detectar spam.
-
duplicateMsgMax
: Número máximo de mensajes duplicados permitidos antes de que se aplique la sanción por enviar mensajes duplicados.
-
duplicateMsgTime
: Período de tiempo en segundos durante el cual se contabilizarán los mensajes duplicados del usuario.
-
spamBanReason
: Mensaje de razón para la sanción de ban en caso de spam. Este mensaje puede ser personalizado por el usuario.
-
duplicateMsgBanReason
: Mensaje de razón para la sanción de ban en caso de mensajes duplicados. Este mensaje puede ser personalizado por el usuario.
-
linkBanReason
: Mensaje de razón para la sanción de ban en caso de envío de enlaces. Este mensaje puede ser personalizado por el usuario.
Modo de Uso
Para usar Watchcat en tu bot de Discord, sigue estos pasos:
- Importa la clase Watchcat en tu bot de Discord:
const Watchcat = require('watchcat.js');
- Crea una instancia de Watchcat con las opciones personalizadas que desees:
const autoModeration = new Watchcat({
filterWords: ['hi', 'bye', 'bad'],
maxMessages: 5,
timeFrame: 60,
duplicateMsgMax: 3,
duplicateMsgTime: 8,
spamBanReason: 'Detected spamming',
duplicateMsgBanReason: 'Sending duplicate messages',
linkBanReason: 'Sending links',
});
- En el evento de mensaje de tu bot de Discord, llama a los métodos relevantes de Watchcat para aplicar la moderación:
client.on('messageCreate', (message) => {
autoModeration.checkMessage(message);
autoModeration.checkSpam(message.author.id, message.guild);
autoModeration.duplicateMessageFilter(message);
autoModeration.antiLink(message);
});
Ejemplos
const autoModeration = new Watchcat({
filterWords: ['spam', 'badword', 'inappropriate'],
});
client.on('messageCreate', (message) => {
autoModeration.checkMessage(message);
});
const autoModeration = new Watchcat({
maxMessages: 3,
timeFrame: 10,
});
client.on('messageCreate', (message) => {
autoModeration.checkSpam(message.author.id, message.guild);
});
const autoModeration = new Watchcat({
duplicateMsgMax: 2,
duplicateMsgTime: 5,
});
client.on('messageCreate', (message) => {
autoModeration.duplicateMessageFilter(message);
});
const autoModeration = new Watchcat();
client.on('messageCreate', (message) => {
autoModeration.antiLink(message);
});
Instalación
Para comenzar a utilizar el paquete Watchcat, instálalo a través de npm:
npm install watchcat.js
Para obtener más información sobre cómo utilizar el paquete y explorar todas sus funciones, háblame a mi Discord jainagam3r45
.