chore: remove unused file
All checks were successful
Build and Push Docker Image / build (push) Successful in 1m38s
All checks were successful
Build and Push Docker Image / build (push) Successful in 1m38s
This commit is contained in:
parent
c2f7d2a88e
commit
54e6f938e7
@ -1,50 +0,0 @@
|
||||
import json
|
||||
import logging
|
||||
from typing import Optional, Union
|
||||
from pyxui import XUI, errors
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
class XuiServiceWrapper:
|
||||
def __init__(self, host: str, username: str, password: str):
|
||||
self.xui = XUI(host, username, password)
|
||||
|
||||
def login(self):
|
||||
"""Авторизация в XUI"""
|
||||
return self.xui.login()
|
||||
|
||||
def get_client(self, inbound_id: int, email: Optional[str] = None, uuid: Optional[str] = None) -> Union[dict, None]:
|
||||
"""Безопасное получение клиента (работает и для SS, и для VLESS/VMess)"""
|
||||
try:
|
||||
inbounds = self.xui.get_inbounds()
|
||||
for inbound in inbounds["obj"]:
|
||||
if inbound["id"] != inbound_id:
|
||||
continue
|
||||
|
||||
settings = json.loads(inbound["settings"])
|
||||
for client in settings["clients"]:
|
||||
if (email and client.get("email") == email) or (uuid and client.get("id") == uuid):
|
||||
return client
|
||||
|
||||
return None
|
||||
except errors.NotFound:
|
||||
logger.warning(f"Клиент не найден: inbound_id={inbound_id}, email={email}, uuid={uuid}")
|
||||
return None
|
||||
except Exception as e:
|
||||
logger.error(f"Ошибка при поиске клиента {email or uuid}: {e}")
|
||||
return None
|
||||
|
||||
def get_client_stats(self, inbound_id: int, email: str) -> Union[dict, None]:
|
||||
"""Получение статистики клиента"""
|
||||
try:
|
||||
inbounds = self.xui.get_inbounds()
|
||||
for inbound in inbounds["obj"]:
|
||||
if inbound["id"] != inbound_id:
|
||||
continue
|
||||
for client in inbound.get("clientStats", []):
|
||||
if client.get("email") == email:
|
||||
return client
|
||||
return None
|
||||
except Exception as e:
|
||||
logger.error(f"Ошибка при получении статистики клиента {email}: {e}")
|
||||
return None
|
||||
Loading…
x
Reference in New Issue
Block a user