Skip to content

About

Bot interno de CODES para su servidor de Discord

Resources

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

CODES Discord Bot (Python)

Bot de Discord que consulta un endpoint de eventos cada 12 horas (configurable), detecta cambios y cuando hay actualizacion:

  • Borra todos los mensajes del canal configurado.
  • Publica un embed con color, logo y miniatura configurables.

Requisitos

  • Python 3.10+
  • Un bot de Discord agregado a tu servidor con permisos:
    • Ver canal
    • Leer historial de mensajes
    • Administrar mensajes
    • Enviar mensajes
    • Insertar enlaces

Instalacion

python -m venv .venv
.venv\Scripts\activate
pip install -r requirements.txt

Configuracion

  1. Copiar .env.example a .env
  2. Completar en el archivo .env el token del bot:
    • DISCORD_TOKEN: token del bot.
  3. Copiar config.example.json a config.json
  4. Configurar las opciones en config.json. Algunas variables importantes:
    • CHANNEL_ID: id del canal de texto donde se publicara.
    • ENDPOINT_URL: URL del endpoint GET.
    • POLL_INTERVAL_HOURS: cada cuantas horas consultar (default 12).
    • EMBED_COLOR_HEX: color del embed en formato #RRGGBB.

Comportamiento de publicacion:

  • Al iniciar, el bot siempre borra el canal configurado y publica el estado actual del endpoint.
  • Luego, vuelve a publicar solo cuando detecta cambios en el endpoint.

Si el endpoint corre en local (por ejemplo localhost:5173), usa http:// y no https:// para evitar errores SSL como WRONG_VERSION_NUMBER.

Ejecutar

python bot.py

Como detecta cambios

  • El bot guarda un hash SHA-256 de la respuesta JSON en STATE_FILE (default bot_state.json).
  • Si el hash cambia respecto del ultimo guardado, considera que hubo actualizacion y publica nuevamente.

Nota sobre el endpoint

Tu endpoint acepta limit entre 1 y 20. El bot envia ?limit=ENDPOINT_LIMIT en cada consulta.

About

Bot interno de CODES para su servidor de Discord

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages