Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Bot de Telegram en Python

Este repositorio contiene un bot de Telegram en Python para gestionar roles de alumno y profesor.

Requisitos

  • Python 3.10 o superior instalado.
  • Un token de bot de Telegram (obtenido de @BotFather en Telegram).

Configuración

  1. Crea un bot con @BotFather y copia el token.
  2. Guarda el token en la variable de entorno BOT_TOKEN:
    setx BOT_TOKEN "TU_TOKEN_AQUI"
  3. Instala las dependencias:
    python -m pip install -r requirements.txt

Ejecución

python bot.py

Ejecución en otro ordenador

Para ejecutar el bot en otro ordenador, sigue estos pasos:

  1. Clona el repositorio en el nuevo ordenador:

    git clone <URL_DEL_REPOSITORIO>
    cd <NOMBRE_DEL_REPOSITORIO>
  2. Configura el entorno:

    • Asegúrate de tener Python 3.10 o superior instalado.
    • Crea un entorno virtual (opcional pero recomendado):
      python -m venv .venv
      .\.venv\Scripts\activate
    • Instala las dependencias:
      python -m pip install -r requirements.txt
  3. Configura el token del bot:

    • Obtén el token de @BotFather en Telegram.
    • Configura la variable de entorno BOT_TOKEN:
      setx BOT_TOKEN "TU_TOKEN_AQUI"
  4. Ejecuta el bot:

    python bot.py

Funcionalidades

  • /menu: Muestra los comandos disponibles según tu rol.
  • /register: Selecciona rol de alumno o profesor.
  • /debug: Activa modo de pruebas para permitir el cambio de rol temporalmente.
  • /submit_meme: Permite a los alumnos enviar memes para su revisión.
  • /submit_document: Permite a los alumnos enviar documentos para su revisión.
  • /correct_document <id>: Permite a los alumnos corregir envíos previos especificando el ID del envío.
  • /pending: Permite a los profesores ver una lista de envíos pendientes, con botones para revisarlos.
  • /review <id>: Permite a los profesores revisar un envío específico, aceptarlo o rechazarlo con contexto detallado.
  • /ranking: Muestra el ranking de alumnos. Los profesores ven el ranking completo, mientras que los alumnos solo ven a los estudiantes inmediatamente por encima y por debajo de ellos.
  • /my_submissions: Permite a los alumnos consultar una lista de sus envíos realizados.
  • /memes: Muestra una galería de memes aceptados, permitiendo reacciones y comentarios.
  • /stats: Muestra estadísticas personales, como envíos realizados, créditos recibidos y otorgados.
  • /seed_test_data: Permite a los profesores generar datos de prueba, incluyendo estudiantes y envíos ficticios.

Notas importantes

  • El rol se fija después de la primera selección y no puede cambiarse en la misma sesión.
  • Usa BOT_TOKEN como variable de entorno; no dejes el token en bot.py.

Solución de Problemas

  • Asegúrate de que el token sea correcto.
  • Verifica que tengas conexión a internet.
  • Si hay errores, revisa la consola para mensajes de error.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages