# Roblox-Buyer Telegram-бот для проверки Roblox-cookie, получения истории донатов, обновления оплачиваемых cookie и начисления средств продавцам через CryptoBot. ## Возможности - Прием cookie обычным текстом или `.txt`-файлом. - Параллельная проверка cookie Roblox с поддержкой прокси. - Расчет оплаты по lifetime- и yearly-ставкам. - AVG-ценообразование для больших партий донатных cookie. - Обновление cookie перед сохранением и выплатой. - Балансы пользователей, вывод средств, реферальная система, статистика и блокировки. - Админ-панель для управления ставками, магазином, рассылками, казной и пользователями. ## Требования - Python 3.10 или новее. - Токен Telegram-бота. - API-токен CryptoBot для выплат и пополнения казны. - Telegram ID администратора. Установите зависимости в виртуальное окружение: ```powershell python -m venv .venv .\.venv\Scripts\Activate.ps1 python -m pip install aiogram aiohttp requests curl-cffi ``` В Linux или macOS вместо команды активации PowerShell используйте `source .venv/bin/activate`. ## Настройка Скопируйте [.env.example](.env.example) и укажите как минимум: ```text BOT_TOKEN=токен_telegram_бота ADMIN_ID=telegram_id_администратора CRYPTO_PAY_TOKEN=api_токен_cryptobot ``` Приложение получает переменные окружения через `config.py`. Файлы `.env` автоматически не загружаются, поэтому передавайте переменные через shell, менеджер процессов, контейнер или другой загрузчик окружения. Пример для PowerShell: ```powershell $env:BOT_TOKEN = "токен_telegram_бота" $env:ADMIN_ID = "123456789" $env:CRYPTO_PAY_TOKEN = "api_токен_cryptobot" python main.py ``` Основные локальные пути по умолчанию: - `Users/` - записи пользователей. - `filesforcookie/` - временные файлы cookie. - `bot_config.json` - ставки, казна и переключатели функций. - `bot_stats.json` - общая статистика. - `proxies.txt` - необязательный список прокси. - `robsec.txt` - сохраненные обновленные cookie. Эти runtime-файлы исключены из Git. Не добавляйте в репозиторий токены, CryptoBot-токены, Roblox-cookie, записи пользователей или учетные данные прокси. ## Запуск Запустите polling: ```powershell python main.py ``` Пользователь может выполнить `/start`, отправить текст с cookie или загрузить `.txt`-файл. Администратор открывает панель управления командой `/admin`. ## Структура проекта ```text main.py Запуск бота и polling config.py Переменные окружения и значения по умолчанию db/storage.py Хранение конфигурации, статистики и прокси db/users.py Хранение записей пользователей models/ Типизированные модели данных services/roblox.py Проверка Roblox, донаты и обновление cookie services/pricing.py Подбор ставок и расчет выплат services/withdrawals.py CryptoBot-чека и счета казны services/referrals.py Реферальные выплаты services/admin.py Административные операции handlers/ Команды, callback-и и FSM-сценарии keyboards/ Inline-клавиатуры states/admin.py Состояния админской FSM utils/ Парсинг, логирование и общие функции ``` ## Безопасность Roblox-cookie являются учетными данными. Считайте `robsec.txt`, загруженные файлы и каталог `Users/` конфиденциальными данными. Ограничьте доступ к файловой системе, храните резервные копии в зашифрованном виде и удаляйте ненужные данные. Интеграция CryptoBot сейчас использует testnet-endpoint-ы в `services/withdrawals.py`. Перед работой с реальными средствами отдельно проверьте и измените эти endpoint-ы. ## Проверка Проверить синтаксис Python можно командой: ```powershell python -m compileall -q config.py main.py db handlers keyboards models services states utils ``` ## Лицензия MIT. См. [LICENSE](LICENSE).