# 🚀 SoloBot **SoloBot**! Бот для API 3x-UI VPN на протоколе vless Бот для vless ## 📋 Оглавление 1. [Описание](#Описание) 2. [Стек технологий](#Стек) 3. [Установка](#установка) 4. [Конфигурация](#конфигурация) 5. [Запуск](#запуск) 6. [Автор](#SoloBot) --- ## 📖 Описание Бот реализует такие функции: - выдача ключей на пробный период - выдача ключей на период 1мес/3мес/полгода/год - продление ключей на эти периоды - клиент может полностью руководить своим ключом: * удаление * продление * просмотр информации (сервер, сколько осталось, сам ключ) - смена локации (ключ перемещается с одного сервера на другой) - клиент может иметь несколько ключей (несколько устройств) - реферальная программа по пригласительной ссылке - инструкции - пополнение баланса через сервис Юкасса - периодические бэкапы базы данных клиентов - функции уведомлений: * произвольные: можно через админку отправить любое информационное сообщение * о не использованном пробнике * о истекающих ключах (за сутки/6 часов/момент истечения) - чат поддержки/канал/ - автоматическое продление ключа, если у клиента есть баланс на нужную сумму --- ## 💻 Стек Проект использует следущие компоненты - **Python** версии 3.8 или выше - **Git** для клонирования репозитория - **Virtualenv** для создания виртуального окружения (рекомендуется) - **postgresql** база данных - **nginx** для работы с нужными вебхуками - **aiogram** используется новейшая версия 3.13 - **youkassa** для работы с кассой - **aiohttp** для api запросов к панелям Проект полностью асинхронный, что обеспечивает высокую скорость работы --- ## ⚙️ Установка ### 1️⃣ Шаг 1: Клонирование репозитория Клонируйте репозиторий и перейдите в его директорию: ```bash git clone https://github.com/Vladless/Solo_bot.git cd solo_bot ``` ### 2️⃣ Шаг 2: Создание и активация виртуального окружения ``` python3 -m venv venv source venv/bin/activate ``` ### 3️⃣ Шаг 3: Установка зависимостей ``` pip install -r requirements.txt ``` ### 🛠️ Конфигурация Для правильной работы вам нужно: * установить и запустить postgresql, создать пользователя для работы с базой данных и выдать ему права * Настроить ваш сервер на работу с ботом, выпустить SSL сертификат для домена * Настроить вебхуки и пути до них в NGINX * Создать файл config.py в корневой папке проекта с вашими данными: ``` API_TOKEN = токен вашего бота телеграм ADMIN_USERNAME = логин от вашей панели x-ray ADMIN_PASSWORD = пароль от вашей панели x-ray ADD_CLIENT_URL = f"{API_URL}/panel/api/inbounds/addClient" GET_INBOUNDS_URL = f"{API_URL}/panel/api/inbounds/list/" AUTH_URL = f"{API_URL}/login/" DATABASE_URL = путь к вашей базе данных, имеет вид "postgresql://{user}:{password}@{Ip-adress}:{port}/{имя базы данных}" ADMIN_ID = ID телеграм профиля администратора CHANNEL_URL = ссылка на ваш телеграм канал YOOKASSA_SECRET_KEY = ваш ключ юкассы YOOKASSA_SHOP_ID = ваш шопайди WEBHOOK_HOST = адрес вашего сервера для вебхуков WEBHOOK_PATH = '/webhook/' WEBHOOK_URL = f"{WEBHOOK_HOST}{WEBHOOK_PATH}" SUPPORT_CHAT_URL = ваша ссылка на поддержку полная версия конфигурации доступна через поддержку нашего бота ``` ### 🚀 Запуск введите команду из виртуального окружения ``` python main.py ``` ### 🔗 SoloBot в Telegram и Полная версия Попробуйте SoloBot прямо сейчас в Telegram [по этой ссылке](https://t.me/SoloNetVPN_bot). Вы также можете поддержать автора или купить полную версию бота с сопровождением по установке в поддержке бота! Полная пошаговая инстуркция по запуску бота предоставляется в поддержке бота