This commit is contained in:
Artem Tsyrulnikov
2026-02-03 22:20:56 +03:00
parent 7c8589e000
commit 09145e510a
10 changed files with 124 additions and 101 deletions

View File

@@ -9,6 +9,7 @@ from aiogram.types import (
InputMediaDocument,
InputMediaPhoto,
InputMediaVideo,
LinkPreviewOptions,
)
from shared.telegram_base import TelegramBase
@@ -23,14 +24,14 @@ class TelegramBot(TelegramBase, TelegramBotWriter):
text: str,
chat_id: int,
parse_mode: str | None = None,
disable_preview: bool = False,
disable_preview: bool = True,
reply_to_message_id: int | None = None,
) -> int:
message = await self.bot.send_message(
chat_id=chat_id,
text=text,
parse_mode=parse_mode,
disable_web_page_preview=disable_preview,
link_preview_options=LinkPreviewOptions(is_disabled=disable_preview),
reply_to_message_id=reply_to_message_id,
)
return message.message_id
@@ -49,7 +50,7 @@ class TelegramBot(TelegramBase, TelegramBotWriter):
chat_id: int,
buttons: list[list[InlineKeyboardButton]],
parse_mode: str | None = None,
disable_preview: bool = False,
disable_preview: bool = True,
reply_to_message_id: int | None = None,
) -> int:
keyboard = InlineKeyboardMarkup(inline_keyboard=buttons)
@@ -58,7 +59,7 @@ class TelegramBot(TelegramBase, TelegramBotWriter):
text=text,
reply_markup=keyboard,
parse_mode=parse_mode,
disable_web_page_preview=disable_preview,
link_preview_options=LinkPreviewOptions(is_disabled=disable_preview),
reply_to_message_id=reply_to_message_id,
)
return message.message_id
@@ -110,6 +111,7 @@ class TelegramBot(TelegramBase, TelegramBotWriter):
parse_mode=parse_mode,
reply_markup=keyboard,
reply_to_message_id=reply_to_message_id,
link_preview_options=LinkPreviewOptions(is_disabled=True),
)
return message.message_id
@@ -128,9 +130,17 @@ class TelegramBot(TelegramBase, TelegramBotWriter):
for index, item in enumerate(media_items):
item_caption = caption if index == 0 else None
if item.media_type == 'photo':
group.append(InputMediaPhoto(media=item.media_file_id, caption=item_caption, parse_mode=parse_mode))
group.append(InputMediaPhoto(
media=item.media_file_id,
caption=item_caption,
parse_mode=parse_mode,
))
elif item.media_type == 'video':
group.append(InputMediaVideo(media=item.media_file_id, caption=item_caption, parse_mode=parse_mode))
group.append(InputMediaVideo(
media=item.media_file_id,
caption=item_caption,
parse_mode=parse_mode,
))
else:
raise ValueError(f'Unsupported media type for group: {item.media_type}')

View File

@@ -115,7 +115,7 @@ def _build_info_message(
# Add empty line before footer
lines.append('')
lines.append('Пост ниже')
lines.append('Пост ниже 👇')
return '\n'.join(lines)