From 766a0f7f6d6cf36c9d80454b49c0e91390f9899e Mon Sep 17 00:00:00 2001 From: JJ Date: Fri, 24 Jan 2025 08:16:36 +0100 Subject: [PATCH] Se actualiza el grupo a supergrupo, cambia el id --- telegram-bot-guardias.py | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/telegram-bot-guardias.py b/telegram-bot-guardias.py index 74859d4..c7cfe44 100644 --- a/telegram-bot-guardias.py +++ b/telegram-bot-guardias.py @@ -30,7 +30,11 @@ GUARDIA_FILE = 'guardia.json' USUARIOS_GUARDIA = [132308323, 127382235] # ID del grupo de alertas -GRUPO_ALERTAS_ID = -4542155833 +GRUPO_ALERTAS_ID = -1002252938840 + +# Grupo Alertas ID: -4542155833 + +# telegram.error.ChatMigrated: Group migrated to supergroup. New chat id: -1002252938840 # Función para cargar los datos de guardia desde el archivo def cargar_guardia(): @@ -51,14 +55,14 @@ async def enviar_mensaje_guardia(context: CallbackContext): ultimo_guardia = data.get("ultimo_guardia") for usuario in USUARIOS_GUARDIA: - await context.bot.send_message(chat_id=usuario, text="¿Estás de guardia esta semana? Responde con 'sí' o 'no'.") + await context.bot.send_message(chat_id=usuario, text="¿Estás de guardia esta semana? Responde con un '1' o un 'sí' si esta semana te toca guardia o con un '0' o un 'no' en caso contrario. Gracias.") # Función para manejar las respuestas de los usuarios async def manejar_respuesta(update: Update, context: CallbackContext): usuario = update.message.from_user.id respuesta = update.message.text.lower() - if respuesta == 'sí': + if respuesta in ['sí', 'Sí', 'Si', 'si', '1']: data = cargar_guardia() ultimo_guardia = data.get("ultimo_guardia") @@ -74,8 +78,10 @@ async def manejar_respuesta(update: Update, context: CallbackContext): data["ultimo_guardia"] = usuario guardar_guardia(data) - elif respuesta == 'no': + elif respuesta in ['no', 'No', '0']: await context.bot.send_message(chat_id=usuario, text="Gracias por responder. No estás de guardia esta semana.") + else: + await context.bot.send_message(chat_id=usuario, text="No entiendo tu respuesta. Responde con un 1 o un Si, si estás de guardia. Con un 0 o un No en caso contrario. Gracias") # Función principal para iniciar el bot def main(): @@ -90,7 +96,7 @@ def main(): # el lunes es days=(7 - ahora.weekday()) # el viernes es days=(4 - ahora.weekday()) proximo_lunes = ahora + datetime.timedelta(days=(4 - ahora.weekday())) - proximo_lunes = proximo_lunes.replace(hour=8, minute=2, second=0, microsecond=0) + proximo_lunes = proximo_lunes.replace(hour=8, minute=9, second=0, microsecond=0) application.job_queue.run_repeating(enviar_mensaje_guardia, interval=datetime.timedelta(weeks=1), first=proximo_lunes)