Un bot antispam de Discord vigila la velocidad a la que escribe un miembro, si repite el mismo mensaje y a cuántas personas menciona a la vez, y en cuanto supera un límite que tú configuras, le aplica un timeout automáticamente. Bien configurado, detecta en segundos a los bots de raid y a los que hacen flood, sin tocar a un miembro que simplemente escribe deprisa. Esta guía explica exactamente qué se considera spam, cómo funcionan los umbrales y los timeouts de Noxyr por dentro, y cómo ajustarlos para que los miembros reales nunca caigan en el filtro.
¿Qué se considera spam?
La mayoría de configuraciones antispam de Discord vigilan tres patrones distintos, y cualquiera de ellos puede activar una respuesta por sí solo:
- Frecuencia de mensajes: demasiados mensajes de una misma persona en un periodo corto. Esto detecta el flood de copiar y pegar y las cuentas de raid automatizadas.
- Contenido duplicado: el mismo mensaje (o uno casi idéntico) enviado una y otra vez. Esto detecta el patrón de "entro y pego el mismo enlace de estafa en cinco canales".
- Menciones masivas: un solo mensaje que avisa a muchos más usuarios o roles de los que avisaría un mensaje normal, incluidos
@everyoney@here.
Un miembro solo necesita activar uno de los tres. Alguien que envía seis mensajes normales seguidos, sin repetir contenido y sin mencionar a nadie, no se ve afectado en absoluto.
Cómo funcionan los umbrales y los timeouts antispam de Noxyr
Noxyr lleva una ventana deslizante por miembro y por servidor. Cada mensaje que envía ese miembro dentro de la ventana se añade a ella; lo que sea más antiguo que la duración de la ventana sale automáticamente. En cada mensaje nuevo se ejecutan tres comprobaciones sobre esa ventana:
- Máximo de mensajes / ventana: si el miembro ha enviado más mensajes de los configurados dentro de la ventana (por defecto: más de 6 en 8 segundos), eso es un disparo por frecuencia.
- Límite de duplicados: antes de comparar, el contenido se recorta, se pasa a minúsculas y se colapsan los espacios sobrantes, así que "¡Hola!!" y "¡hola!!" cuentan como el mismo mensaje. Cuando entran esa cantidad de duplicados dentro de la ventana (por defecto: 4), es un disparo.
- Límite de menciones: Noxyr cuenta los usuarios y roles mencionados en el mensaje. Si el mensaje menciona a
@everyoneo a@here, se suman 100 a ese recuento, lo que garantiza un disparo sin importar tu límite configurado, porque nadie pone un límite de menciones ni de lejos tan alto.
La primera comprobación que se dispara activa la respuesta; el bot no espera a ver si una segunda también se dispararía. Cuando eso ocurre, pueden pasar dos cosas según tus ajustes:
- Timeout: el miembro recibe un timeout durante los minutos configurados (por defecto 10, hasta 7 días desde el comando, con el límite máximo de 28 días de Discord). Esto solo ocurre si el rol del bot está por encima del del miembro, igual que con cualquier otra acción de moderación.
- Borrado de mensajes: si está activado (lo está por defecto), el bot borra hasta los últimos 10 mensajes registrados de ese miembro en el canal donde se produjo el disparo. No persigue los mensajes que el miembro haya publicado en otros canales durante la misma ráfaga.
Tras un disparo, la ventana de ese miembro se reinicia vacía, así que una sola ráfaga solo activa una acción, y no una por cada mensaje que supere el límite.
Cómo configurarlo
Todo lo anterior se configura con /security antispam o desde la página de Seguridad del panel:
- enabled: el antispam está desactivado por defecto, incluso cuando el propio módulo de Seguridad está activado, así que activar el módulo nunca empieza a moderar a nadie por sorpresa.
- max_messages y window_seconds: el límite de frecuencia y la duración de la ventana.
- duplicate_limit: cuántas repeticiones hacen falta para que cuente como spam.
- mention_limit: cuántas menciones en un mensaje hacen falta para que cuente como mención masiva.
- timeout_minutes: cuánto dura el timeout.
- delete_messages: si el spam también se limpia.
/security status muestra en un único embed los valores actuales del antispam y del anti-nuke, que es la forma más rápida de comprobar qué está activo de verdad antes de cambiar nada.
Evitar falsos positivos
Un filtro de spam que pone en timeout a miembros reales hace que la gente se vaya. Hay algunas cosas que evitan que eso pase:
- Los admins quedan exentos automáticamente. Cualquiera con el permiso de Administrador, o con un rol que hayas añadido como rol de admin en el panel, se omite por completo. Los anuncios y las menciones de sorteos que publica el staff nunca activan el límite de menciones.
- Los mensajes de bots y webhooks nunca se inspeccionan. Solo los mensajes humanos llegan a la comprobación antispam, así que un webhook de anuncios u otro bot que publique rápido en un canal de registros no es un problema.
- Sube la ventana antes que el recuento. Si los que escriben deprisa en un chat general muy activo se acercan al límite de frecuencia, ampliar un poco
window_seconds(por ejemplo de 8 a 12) suele ser más suave que subirmax_messages, ya que da más margen a la conversación normal sin abrir mucho más la puerta a un flood real. - Vigila duplicate_limit con el contenido de plantillas. Las comunidades que usan plantillas de copiar y pegar (publicaciones LFG, macros de tickets, respuestas de solicitudes) pueden chocar con la comprobación de duplicados. Sube un poco el límite en lugar de desactivar por completo la detección de duplicados.
- Desactiva delete_messages mientras ajustas. Con el borrado desactivado, el spam sigue recibiendo timeout pero los mensajes permanecen visibles, lo que facilita ver exactamente qué activó el filtro y ajustar los números con pruebas reales.
- Ahora mismo ningún disparo del antispam publica un embed de alerta, como hace el anti-nuke. El registro de auditoría de Discord sigue registrando cada timeout que aplica el bot, así que revísalo ahí (o usa
/security statuspara ver los ajustes actuales) si quieres revisar lo que pasó.
Bot antispam de Discord frente al AutoMod integrado de Discord
El AutoMod nativo de Discord puede bloquear mensajes con enlaces de tipo spam o palabras clave marcadas, y tiene su propia regla de spam de menciones, todo configurable en los ajustes del servidor. Es realmente útil y no cuesta nada activarlo. Donde se queda corto frente a un bot antispam de Discord dedicado es en que cada protección es una regla separada que construyes una a una en el editor de reglas, y ninguna de ellas sigue el comportamiento general de un miembro a lo largo de varios mensajes, como sí hace una ventana deslizante por miembro. AutoMod reacciona a un solo mensaje de forma aislada; no tiene el concepto nativo de "esta persona ha enviado seis mensajes en ocho segundos" o "esta es la cuarta copia del mismo mensaje en este minuto".
Un filtro basado en bot, como el de Noxyr, agrupa el límite de frecuencia, la detección de duplicados y los límites de menciones detrás de un solo interruptor, aplica las mismas exenciones de admin en todas partes, y te da un único lugar (el panel o /security status) para ver y cambiar todos los números a la vez, en lugar de una pila de reglas independientes. Usar los dos a la vez no es un conflicto. Los filtros de palabras clave y de enlaces de AutoMod detectan cosas que un filtro por frecuencia nunca detectará, y un filtro antispam por miembro detecta patrones de flood que AutoMod no está diseñado para seguir.
Preguntas frecuentes
¿El antispam está activado por defecto? No. El módulo de Seguridad sí viene activado por defecto, pero el antispam en sí hay que activarlo por separado con /security antispam enabled:True o desde el panel.
¿Pondrá en timeout a un moderador que hace spam de reacciones o respuestas rápidas? No, si tiene Administrador o un rol de admin configurado. Añade al staff de confianza a tus roles de admin desde la página de Roles del panel si todavía no tienen Administrador.
¿Borra mensajes en todos los canales donde publicó el miembro? No, solo en el canal donde se produjo el disparo, y solo hasta los últimos 10 mensajes registrados allí.
¿Cuál es la diferencia entre esto y el anti-nuke? El antispam vigila a los miembros normales que envían mensajes. El anti-nuke vigila acciones destructivas de nivel admin, como el borrado masivo de canales o roles. Se configuran por separado y pueden funcionar de forma independiente; consulta la guía completa de anti-nuke para la segunda mitad del módulo de seguridad de Noxyr.
¿Puedo poner límites distintos por canal? Por ahora no; los límites se aplican a todo el servidor, aunque el borrado solo afecta al canal donde se produjo la ráfaga.
El antispam es un interruptor más dentro del módulo de Seguridad gratuito de Noxyr, junto con el anti-nuke, la verificación y los registros de moderación. Añade Noxyr gratis y actívalo desde la documentación de seguridad, o lee la página completa de funciones del bot de seguridad para ver todo lo que cubre el módulo.