22
33# 🤖 ACM Bot - Discord
44
5- ### Bot de Discord multipropósito con TypeScript y Bun
5+ ### Bot de Discord multipropósito con TypeScript, Bun y Railway
66
77[ ![ TypeScript] ( https://img.shields.io/badge/TypeScript-5.5-blue?logo=typescript )] ( https://www.typescriptlang.org/ )
88[ ![ Bun] ( https://img.shields.io/badge/Bun-Runtime-black?logo=bun )] ( https://bun.sh/ )
99[ ![ Discord.js] ( https://img.shields.io/badge/Discord.js-14.25-5865F2?logo=discord )] ( https://discord.js.org/ )
10+ [ ![ Railway] ( https://img.shields.io/badge/Railway-Volume-blueviolet?logo=railway )] ( https://railway.app/ )
1011[ ![ License] ( https://img.shields.io/badge/License-Private-red )] ( )
1112
1213</div >
3738- Validación de correos electrónicos
3839- Prevención de reutilización de correos
3940- Soporte SMTP y HTTP API
41+ - ** Retry logic inteligente** (3 intentos automáticos)
42+ - ** Rate limiting** (30s cooldown)
4043
4144🎤 ** Voice Master**
4245- Canales de voz temporales personalizables
4952- Notificaciones a roles específicos
5053- Canal dedicado para anuncios
5154
55+ 📊 ** Monitoreo y Métricas** ⭐ NUEVO
56+ - Sistema de logging profesional con request IDs
57+ - Métricas en tiempo real (error rate, latencia)
58+ - ** Alertas automáticas** al canal de admins
59+ - Comando ` /metrics ` para visualización
60+ - Tracking de errores por comando y tipo
61+
62+ 💾 ** Persistencia con Railway Volume** ⭐ NUEVO
63+ - Almacenamiento en volumen local (latencia ~ 2ms)
64+ - Sin dependencias externas (antes AWS S3)
65+ - Configuración automática en Railway
66+ - Backup y restauración sencillos
67+
5268📅 ** Gestión de Eventos**
5369- Creación de eventos programados
5470- Soporte para eventos externos y de voz
@@ -123,24 +139,24 @@ GUILD_ID_TEST=id_servidor_pruebas
123139GUILD_ID_PROD=id_servidor_produccion
124140
125141# SMTP (para verificación de email)
126- SMTP_HOST=smtp.ejemplo.com
127- SMTP_PORT=587
128- SMTP_USER=tu_usuario
129- SMTP_PASS=tu_contraseña
142+ SMTP_API_KEY=tu_smtp_api_key
143+ SMTP_API_URL=https://api.smtp2go.com/v3/email/send
130144SMTP_FROM=noreply@ejemplo.com
145+ SMTP_API_TIMEOUT_MS=30000
131146
132- # AWS S3 (opcional, para persistencia)
133- AWS_S3_BUCKET_NAME=nombre_del_bucket
134- AWS_ACCESS_KEY_ID=tu_access_key
135- AWS_SECRET_ACCESS_KEY=tu_secret_key
136- AWS_DEFAULT_REGION=us-east-1
147+ # Railway Volume (auto-configurado en Railway, usa ./data en local)
148+ RAILWAY_VOLUME_MOUNT_PATH=/data
137149```
138150
151+ > ** 💡 Para Railway:** Solo necesitas crear un Volume en Settings → Volumes con mount path ` /data ` . Railway configura la variable automáticamente.
152+ >
153+ > ** 💡 Para desarrollo local:** El bot crea automáticamente la carpeta ` ./data ` en el directorio del proyecto.
154+
139155### Configuración Inicial del Servidor
140156
1411571 . ** Ejecutar el comando de setup**
142158```
143- /setup
159+ /setup role_admin:@Admin role_junta:@Junta role_verify:@Verified ...
144160```
145161
1461622 . ** Configurar los siguientes elementos:**
@@ -162,9 +178,18 @@ AWS_DEFAULT_REGION=us-east-1
162178| Comando | Descripción | Permisos |
163179| ---------| -------------| ----------|
164180| ` /setup ` | Configura roles y canales del bot | Administrador |
181+ | ` /config-reset confirmacion:CONFIRMAR ` | ⚠️ Elimina toda la configuración | Guild Owner |
165182| ` /presence set\|clear ` | Configura la presencia del bot | Administrador |
166183| ` /clear [valor] [unidad] ` | Elimina mensajes (por cantidad o tiempo) | Manage Messages |
167184
185+ ### 📊 Monitoreo ⭐ NUEVO
186+
187+ | Comando | Descripción | Permisos |
188+ | ---------| -------------| ----------|
189+ | ` /metrics ` | Muestra métricas en tiempo real | Admin/Junta |
190+
191+ ** Métricas mostradas:** Error rate (🔴🟡🟢), requests/errors, uptime, rate limits, top errores
192+
168193### 📢 Comunicación
169194
170195| Comando | Descripción | Permisos |
@@ -183,14 +208,10 @@ AWS_DEFAULT_REGION=us-east-1
183208
184209| Comando | Descripción | Permisos |
185210| ---------| -------------| ----------|
186- | ` /verify start [email] ` | Inicia verificación por email | Usuario |
211+ | ` /verify start [email] ` | Inicia verificación (cooldown 30s) | Usuario |
187212| ` /verify code [otp] ` | Completa la verificación | Usuario |
188213
189- ### 🛠️ Utilidades
190-
191- | Comando | Descripción | Permisos |
192- | ---------| -------------| ----------|
193- | ` /ping ` | Verifica la latencia del bot | Usuario |
214+ ** Mejoras:** Retry automático (3x), rate limiting, OTP 10min, logging completo
194215
195216---
196217
0 commit comments