LISA — это чат-бот (@lisa_vpn_bot), предоставляющий пользователям безопасный доступ к ресурсам сети Интернет через VPN. Бот разработан для автоматизации взаимодействия с VPN-сервисом, предоставления ключей доступа, управления подписками и анализа статистики использования. Взаимодействие осуществляется через мессенджер Telegram.
- Полная автоматизация взаимодействия с VPN-сервисом через Telegram.
- Интуитивно понятный интерфейс и лёгкость использования.
- Гибкость управления ключами и подписками.
- Интеграция с безопасными методами оплаты Telegram.
- Возможность получения детальной статистики использования.
- Генерация ключей доступа — пользователь может получить ключ для подключения к VPN, выбрав нужный период действия.
- Нотификация — бот уведомляет пользователей об окончании действия подписок и предоставляет возможность их продления.
- Оплата — безопасные платежи внутри Telegram.
- Статистика использования — просмотр объема трафика, средней скорости потребления и других метрик.
- Управление ключами — просмотр активных ключей, их переименование, просмотр, продление, даты окончания активации.
- Инструкции — пошаговая помощь в настройке VPN на различных устройствах (ПК, Android, iOS).
-
Главное меню
- Команда:
/start - Предлагает выбор:
- Получить ключ
- Менеджер ключей
- Инструкция по установке
- О нас
- Команда:
-
Получение ключа
- Выбор типа подключения (VLESS/Outline)
- Выбор периода действия (1 месяц, 3 месяца, 6 месяцев, 12 месяцев или пробный период для новых пользователей)
- Оплата через Telegram
- После оплаты бот отправляет ключ и инструкцию по использованию
-
Менеджер ключей
- Удобный просмотр списка ключей каждого из типов подключения
- Возможные действия:
- Посмотреть объем трафика
- Узнать дату окончания действия ключа
- Продлить ключ
- Переименовать ключ
- Запустить ключ в приложении
-
Инструкции
- Бот предоставляет пошаговую инструкцию с картинками по настройке VPN для выбранного устройства (ПК, Android, iOS) в формате статьи на Telegraph, обеспечивающий наилучший user experience
- Python — основной язык разработки
- Telegram Bot API — для взаимодействия с пользователями
- SQLAlchemy — работа с базой данных
- Платежные API — интеграция с платежными системами Telegram
Таблица Keys
| Поле | Тип | Описание |
|---|---|---|
key_id |
str | Уникальный id VPN-ключа |
user_telegram_id |
str | Telegram ID пользователя |
start_date |
ISO-86 | Дата начала активации ключа |
expiration_date |
ISO-86 | Дата конца активации ключа |
name |
str | Имя ключа |
used_bytes_last_month |
int | Использованные байты в прошлом месяце |
protocol_type |
str | Название протокола (Outline/VLESS) |
server_id |
int | Id сервера, на котором расположен ключ |
Таблица Servers
| Поле | Тип | Описание |
|---|---|---|
id |
int | Id сервера |
ip |
str | Ip сервера (заполняется для VLESS) |
password |
str | Пароль от сервера (заполняется для VLESS) |
api_url |
str | Адрес api для подключения (заполняется для Outline) |
cert_sha256 |
str | Пароль для подключения (заполняется для Outline) |
cnt_users |
int | Число ключей на сервере |
protocol_type |
str | Тип протокола |
Таблица Users
| Поле | Тип | Описание |
|---|---|---|
user_telegram_id |
str | Telegram ID пользователя |
subscription_status |
str | Статус подписки (active/inactive) |
use_trial_period |
bool | Флаг использования пробного периода |
- Поле
server_idв таблице Keys ссылается на полеidв таблице Servers. - Один сервер может быть связан с несколькими ключами, но каждый ключ связан только с одним сервером (многие к одному).
- Поле
user_telegram_idв таблице Keys ссылается на полеuser_telegram_idв таблице Users. - Один пользователь может иметь несколько ключей, но каждый ключ связан только с одним пользователем (один ко многим).