diff --git a/web/app.py b/web/app.py
index 5bffb3c..abfc74a 100644
--- a/web/app.py
+++ b/web/app.py
@@ -1266,25 +1266,28 @@ async def api_generate_digest(username: str = Depends(get_current_admin)):
# Сохраняем
digest_id = await service.save_digest(digest_data, status='pending_approval')
- # Отправляем превью админу в личку
- from bot_instance import get_bot
- from aiogram.types import InlineKeyboardMarkup, InlineKeyboardButton
+ # Отправляем превью админу в личку через HTTP
+ from config import get_proxy_url
- bot = get_bot()
- keyboard = InlineKeyboardMarkup(inline_keyboard=[
- [InlineKeyboardButton(text="🌐 Утвердить в веб-панели", url="http://localhost:8000/digests")],
- ])
-
- await bot.send_message(
- config.ADMIN_USER_ID,
- f"📰 Дайджест за неделю готов!\n\n"
- f"Неделя #{digest_data['week_number']}/{digest_data['year']}\n"
- f"Период: {digest_data['period_start'].strftime('%d.%m')} - {digest_data['period_end'].strftime('%d.%m.%Y')}\n\n"
- f"Зайдите в веб-панель для утверждения:\n"
- f"http://localhost:8000/digests",
- parse_mode='HTML',
- reply_markup=keyboard
- )
+ async with aiohttp.ClientSession() as http_session:
+ url = f"https://api.telegram.org/bot{config.BOT_TOKEN}/sendMessage"
+ keyboard = {
+ "inline_keyboard": [
+ [{"text": "🌐 Утвердить в веб-панели", "url": "http://localhost:8000/digests"}]
+ ]
+ }
+ payload = {
+ 'chat_id': config.ADMIN_USER_ID,
+ 'text': f"📰 Дайджест за неделю готов!\n\n"
+ f"Неделя #{digest_data['week_number']}/{digest_data['year']}\n"
+ f"Период: {digest_data['period_start'].strftime('%d.%m')} - {digest_data['period_end'].strftime('%d.%m.%Y')}\n\n"
+ f"Зайдите в веб-панель для утверждения:\n"
+ f"http://localhost:8000/digests",
+ 'parse_mode': 'HTML',
+ 'reply_markup': json.dumps(keyboard)
+ }
+ async with http_session.post(url, json=payload, proxy=get_proxy_url()) as resp:
+ await resp.json()
return JSONResponse({
"success": True,