diff --git a/bot.py b/bot.py index 77f2794..237cda0 100644 --- a/bot.py +++ b/bot.py @@ -79,7 +79,7 @@ async def start(update: Update, context: ContextTypes.DEFAULT_TYPE) -> None: "Используй /help для списка команд." ) -# --- Команда /help (ИСПРАВЛЕНО форматирование Markdown) --- +# --- Команда /help (МАКСИМАЛЬНО УПРОЩЕНО ФОРМАТИРОВАНИЕ) --- async def help_command(update: Update, context: ContextTypes.DEFAULT_TYPE) -> None: if update.message is None: logger.warning("Received an update without a message object in help handler.") @@ -89,14 +89,16 @@ async def help_command(update: Update, context: ContextTypes.DEFAULT_TYPE) -> No help_text = ( "Вот список доступных команд:\n\n" - "**/start** - Начать работу с ботом и проверить подключение к qBittorrent.\n" - "**/status** - Показать текущий статус всех активных загрузок и управлять ими.\n" - "**/stop_torrent** - Выбрать и остановить загрузку торрента (устаревает, используйте /status).\n" - "**/help** - Показать это справочное сообщение.\n\n" - "Также вы можете отправить мне `magnet-ссылку` или `URL torrent-файла` " # ИСПРАВЛЕНО: Использованы обратные апострофы + "/start - Начать работу с ботом и проверить подключение к qBittorrent.\n" + "/status - Показать текущий статус всех активных загрузок и управлять ими.\n" + "/stop_torrent - Выбрать и остановить загрузку торрента (устаревает, используйте /status).\n" + "/help - Показать это справочное сообщение.\n\n" + "Также вы можете отправить мне magnet-ссылку или URL torrent-файла " "для добавления загрузки. Бот предложит выбрать категорию и директорию." ) - await update.message.reply_text(help_text, parse_mode="Markdown") + # Используем parse_mode="HTML" или вообще не указываем его, чтобы избежать проблем с Markdown + # Для самого простого текста, можно вообще убрать parse_mode + await update.message.reply_text(help_text) # --- Команда /status --- @@ -137,9 +139,7 @@ async def status(update: Update, context: ContextTypes.DEFAULT_TYPE) -> None: elif minutes > 0: eta_str = f"{int(minutes)}мин {int(seconds)}с" else: - eta_str = f"{int(seconds)}с" - else: - eta_str = "Завершено" + eta_str = "Завершено" message_text = ( @@ -242,7 +242,7 @@ async def start_torrent_callback(update: Update, context: ContextTypes.DEFAULT_T await query.edit_message_text(f"Торрент ({torrent_hash[:6]}...) успешно запущен (возобновлен).") except APIError as e: logger.error(f"Error resuming torrent {torrent_hash}: {e}") - await query.edit_message_text(f"Ошибка при запуске торrenta: {e}") + await query.edit_message_text(f"Ошибка при запуске торрента: {e}") except Exception as e: logger.error(f"An unexpected error occurred during torrent resuming: {e}") await query.edit_message_text(f"Произошла непредвиденная ошибка: {e}") @@ -310,9 +310,9 @@ async def send_directory_options(query, context): try: available_paths = [ qb.app.default_save_path, - "/share/Data/Films", # ЗАМЕНИТЕ НА СВОИ АКТУАЛЬНЫЕ ПУТИ - "/share/Data/Serials", - "/share/Data/torrents", + "/share/Data/torrents", # ЗАМЕНИТЕ НА СВОИ АКТУАЛЬНЫЕ ПУТИ + "/share/Data/Films", + "/share/Data/Serials", ] available_paths = sorted(list(set([p.replace(os.sep, '/') for p in available_paths if p])))