Control del usuario en USUARIOS_EXCLUIDOS

This commit is contained in:
2025-07-03 12:56:41 +02:00
parent f90ae1682b
commit 6949396ba6
2 changed files with 22 additions and 13 deletions
Submodule python-utilities updated: 5b8c936f0e...f90ae1682b
+12 -3
View File
@@ -84,12 +84,18 @@ async def manejar_respuesta(update: Update, context: CallbackContext):
# Invitar al nuevo guardia al grupo de alertas
try:
if usuario not in USUARIOS_EXCLUIDOS:
await context.bot.unban_chat_member(chat_id=GRUPO_ALERTAS_ID, user_id=usuario)
mensaje = (
"¡Gracias por confirmar que estás de guardia esta semana!\n\n"
f"Únete al grupo de alertas usando este enlace: {ENLACE_INVITACION}"
)
await context.bot.send_message(chat_id=usuario, text=mensaje)
else:
mensaje = (
"Muy gracioso. Si tu siempre estás de guardia parguelas!!!"
)
await context.bot.send_message(chat_id=usuario, text=mensaje)
except Exception as e:
logger.error(f"Error al invitar al usuario {usuario}: {e}")
@@ -98,8 +104,11 @@ async def manejar_respuesta(update: Update, context: CallbackContext):
guardar_guardia(data)
elif respuesta in ['no', 'No', '0']:
if usuario not in USUARIOS_EXCLUIDOS:
await context.bot.send_message(chat_id=usuario, text="Gracias por responder. Como no estás de guardia esta semana, te sacamos del grupo.")
await context.bot.ban_chat_member(chat_id=GRUPO_ALERTAS_ID, user_id=usuario)
else:
await context.bot.send_message(chat_id=usuario, text="Gracias por responder, pero estás en la lista de pringaos que no se escapan de las notificaciones. Te quedas en el grupo.")
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")
@@ -116,7 +125,7 @@ def next_monday():
if dias_para_lunes == 0:
return hoy
else:
return hoy + timedelta(days=dias_para_lunes)
return hoy + datetime.timedelta(days=dias_para_lunes)
# Función principal para iniciar el bot
@@ -136,8 +145,8 @@ def main():
# Programar el mensaje de guardia
ahora = datetime.datetime.now(TIMEZONE)
proximo_lunes = next_monday() #ahora #+ datetime.timedelta(days=(0 - ahora.weekday()))
proximo_lunes = proximo_lunes.replace(hour=8, minute=25, second=0, microsecond=0)
proximo_lunes = next_monday()
proximo_lunes = proximo_lunes.replace(hour=8, minute=30, second=0, microsecond=0)
logger.info(f"La fecha actual es {ahora} y el mensaje se enviará {proximo_lunes}")