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): def __init__(self, bot):
self.bot = bot self.bot = bot
self.scheduler = AsyncIOScheduler() self.scheduler = AsyncIOScheduler(timezone='Europe/Ulyanovsk')
def start(self): def start(self):
"""Запуск планировщика""" """Запуск планировщика"""
@ -141,25 +141,24 @@ class Scheduler:
) )
logger.info('✅ Добавлена задача ежедневного прогноза погоды для админа') logger.info('✅ Добавлена задача ежедневного прогноза погоды для админа')
# Еженедельный прогноз в чат по понедельникам (в 09:00) # [ОТКЛЮЧЕНО ПО ТЗ] Еженедельный прогноз в чат по понедельникам и четвергам отключен для группы дома
self.scheduler.add_job( # Жильцы начали активнее общаться, прогноз погоды в общей группе больше не требуется.
self.monday_chat_weather, # Личный прогноз для Александра (daily_admin_weather) выше остается активным.
CronTrigger.from_crontab('0 9 * * 1'), # Пн в 09:00 # self.scheduler.add_job(
id='monday_chat_weather', # self.monday_chat_weather,
name='Прогноз погоды в чат (Понедельник)', # CronTrigger.from_crontab('0 9 * * 1'),
replace_existing=True # id='monday_chat_weather',
) # name='Прогноз погоды в чат (Понедельник)',
logger.info('✅ Добавлена задача прогноза погоды в чат по понедельникам') # replace_existing=True
# )
# Еженедельный прогноз в чат по четвергам (в 09:00) # self.scheduler.add_job(
self.scheduler.add_job( # self.thursday_chat_weather,
self.thursday_chat_weather, # CronTrigger.from_crontab('0 9 * * 4'),
CronTrigger.from_crontab('0 9 * * 4'), # Чт в 09:00 # id='thursday_chat_weather',
id='thursday_chat_weather', # name='Прогноз погоды в чат (Четверг)',
name='Прогноз погоды в чат (Четверг)', # replace_existing=True
replace_existing=True # )
) logger.info('ℹ️ Прогноз погоды в общий чат дома отключен по требованию председателя')
logger.info('✅ Добавлена задача прогноза погоды в чат по четвергам')
# Еженедельный дайджест Александра (суббота в 08:00) # Еженедельный дайджест Александра (суббота в 08:00)
self.scheduler.add_job( self.scheduler.add_job(
@ -550,8 +549,17 @@ class Scheduler:
"""Прогноз в чат по понедельникам (на 3 дня)""" """Прогноз в чат по понедельникам (на 3 дня)"""
try: try:
from services.weather import WeatherService 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() 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( await self.bot.send_message(
ADMIN_CHAT_ID, ADMIN_CHAT_ID,
forecast, forecast,
@ -565,8 +573,17 @@ class Scheduler:
"""Прогноз в чат по четвергам (на остаток недели и выходные)""" """Прогноз в чат по четвергам (на остаток недели и выходные)"""
try: try:
from services.weather import WeatherService 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() 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( await self.bot.send_message(
ADMIN_CHAT_ID, ADMIN_CHAT_ID,
forecast, forecast,