fix(scheduler): disable public chat weather broadcasts for LenKom37

This commit is contained in:
Admin 2026-10-13 20:52:48 +04:00
parent 6d530c9d97
commit 8b88344fac

View file

@ -21,7 +21,7 @@ class Scheduler:
def __init__(self, bot):
self.bot = bot
self.scheduler = AsyncIOScheduler()
self.scheduler = AsyncIOScheduler(timezone='Europe/Ulyanovsk')
def start(self):
"""Запуск планировщика"""
@ -141,25 +141,24 @@ class Scheduler:
)
logger.info('✅ Добавлена задача ежедневного прогноза погоды для админа')
# Еженедельный прогноз в чат по понедельникам (в 09:00)
self.scheduler.add_job(
self.monday_chat_weather,
CronTrigger.from_crontab('0 9 * * 1'), # Пн в 09:00
id='monday_chat_weather',
name='Прогноз погоды в чат (Понедельник)',
replace_existing=True
)
logger.info('✅ Добавлена задача прогноза погоды в чат по понедельникам')
# Еженедельный прогноз в чат по четвергам (в 09:00)
self.scheduler.add_job(
self.thursday_chat_weather,
CronTrigger.from_crontab('0 9 * * 4'), # Чт в 09:00
id='thursday_chat_weather',
name='Прогноз погоды в чат (Четверг)',
replace_existing=True
)
logger.info('✅ Добавлена задача прогноза погоды в чат по четвергам')
# [ОТКЛЮЧЕНО ПО ТЗ] Еженедельный прогноз в чат по понедельникам и четвергам отключен для группы дома
# Жильцы начали активнее общаться, прогноз погоды в общей группе больше не требуется.
# Личный прогноз для Александра (daily_admin_weather) выше остается активным.
# self.scheduler.add_job(
# self.monday_chat_weather,
# CronTrigger.from_crontab('0 9 * * 1'),
# id='monday_chat_weather',
# name='Прогноз погоды в чат (Понедельник)',
# replace_existing=True
# )
# self.scheduler.add_job(
# self.thursday_chat_weather,
# CronTrigger.from_crontab('0 9 * * 4'),
# id='thursday_chat_weather',
# name='Прогноз погоды в чат (Четверг)',
# replace_existing=True
# )
logger.info('ℹ️ Прогноз погоды в общий чат дома отключен по требованию председателя')
# Еженедельный дайджест Александра (суббота в 08:00)
self.scheduler.add_job(
@ -550,8 +549,17 @@ class Scheduler:
"""Прогноз в чат по понедельникам (на 3 дня)"""
try:
from services.weather import WeatherService
from config import ADMIN_CHAT_ID
from config import ADMIN_CHAT_ID, ADMIN_USER_ID
forecast = await WeatherService.get_3day_forecast()
if not forecast or forecast.startswith("❌"):
logger.warning(f"Monday weather forecast failed: {forecast}")
await self.bot.send_message(
ADMIN_USER_ID,
f"⚠️ <b>Внимание:</b> Не удалось сгенерировать прогноз погоды на понедельник для общего чата:\n{forecast}",
parse_mode='HTML'
)
return
await self.bot.send_message(
ADMIN_CHAT_ID,
forecast,
@ -565,8 +573,17 @@ class Scheduler:
"""Прогноз в чат по четвергам (на остаток недели и выходные)"""
try:
from services.weather import WeatherService
from config import ADMIN_CHAT_ID
from config import ADMIN_CHAT_ID, ADMIN_USER_ID
forecast = await WeatherService.get_thursday_weekend_broadcast()
if not forecast or forecast.startswith("❌"):
logger.warning(f"Thursday weather forecast failed: {forecast}")
await self.bot.send_message(
ADMIN_USER_ID,
f"⚠️ <b>Внимание:</b> Не удалось сгенерировать прогноз погоды на четверг для общего чата:\n{forecast}",
parse_mode='HTML'
)
return
await self.bot.send_message(
ADMIN_CHAT_ID,
forecast,