findFilms/start_all.sh

86 lines
3 KiB
Bash
Raw Normal View History

Подключили Telegram бот с полной функциональностью - Создан полнофункциональный Telegram бот для поиска фильмов и торрентов - Бот дублирует всю функциональность веб-интерфейса - Реализован поиск фильмов через TMDB API с постерами - Добавлен поиск торрентов на всех трекерах (RuTracker, Kinozal, RuTor, NoNameClub) - Автоматическое добавление торрентов в qBittorrent - Интерактивные кнопки для выбора фильмов и торрентов - Обработка ошибок и пользовательских состояний - Docker контейнеризация с правильной сетевой конфигурацией - Увеличен таймаут HTTP запросов до 60 секунд - Добавлена документация и скрипты запуска Команды бота: - /start, /help - справка - /find - начать поиск фильма Файлы: - telegram_bot.py - основной код бота - run_telegram_bot.py - скрипт запуска - Dockerfile.telegram - Docker образ для бота - docker-compose.yml - обновлен с сервисом бота - requirements.txt - добавлена зависимость python-telegram-bot - README.md - обновлена документация - PROJECT_SUMMARY.md - полная сводка проекта
2025-10-09 12:39:19 +03:00
#!/bin/bash
# Скрипт для запуска всего проекта searchTorrentDownl
# Включает веб-приложение и Telegram бота
echo "🚀 Запуск проекта searchTorrentDownl..."
# Проверяем, что мы в правильной директории
if [ ! -f "app.py" ]; then
echo "❌ Ошибка: Запустите скрипт из директории проекта"
exit 1
fi
# Создаем виртуальное окружение если его нет
if [ ! -d "venv" ]; then
echo "📦 Создание виртуального окружения..."
python3 -m venv venv
fi
# Активируем виртуальное окружение
echo "🔧 Активация виртуального окружения..."
source venv/bin/activate
# Устанавливаем зависимости
echo "📥 Установка зависимостей..."
pip install -r requirements.txt
# Проверяем, что qBittorrent запущен
echo "🔍 Проверка qBittorrent..."
if ! curl -s http://localhost:8080/api/v2/app/version > /dev/null; then
echo "⚠️ qBittorrent не запущен. Запустите его командой:"
echo " sudo systemctl start qbittorrent"
echo " или"
echo " sudo -u qbittorrent /usr/bin/qbittorrent-nox --webui-port=8080"
echo ""
echo "🔧 Продолжаем без qBittorrent (поиск фильмов будет работать)..."
fi
# Запускаем основное приложение в фоне
echo "🌐 Запуск веб-приложения..."
python3 app.py &
APP_PID=$!
# Ждем немного, чтобы приложение запустилось
sleep 3
# Проверяем, что приложение запустилось
if ! curl -s http://localhost:8089/api/search/terminator > /dev/null; then
echo "❌ Ошибка запуска веб-приложения"
kill $APP_PID 2>/dev/null
exit 1
fi
echo "✅ Веб-приложение запущено на http://localhost:8089"
# Запускаем Telegram бота
echo "🤖 Запуск Telegram бота..."
python3 run_telegram_bot.py &
BOT_PID=$!
echo ""
echo "🎉 Проект успешно запущен!"
echo ""
echo "📱 Доступные интерфейсы:"
echo " • Веб-интерфейс: http://localhost:8089"
echo " • qBittorrent: http://localhost:8080 (admin/vrubel07)"
echo " • Telegram Bot: @your_bot_username (команда /start)"
echo ""
echo "🛑 Для остановки нажмите Ctrl+C"
# Функция для корректного завершения
cleanup() {
echo ""
echo "🛑 Остановка сервисов..."
kill $APP_PID 2>/dev/null
kill $BOT_PID 2>/dev/null
echo "✅ Все сервисы остановлены"
exit 0
}
# Перехватываем сигнал завершения
trap cleanup SIGINT SIGTERM
# Ждем завершения
wait