fix(scheduler): disable public chat weather broadcasts for LenKom37
This commit is contained in:
parent
6d530c9d97
commit
8b88344fac
1 changed files with 39 additions and 22 deletions
|
|
@ -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,
|
||||
|
|
|
|||
Loading…
Reference in a new issue