feat(subs): UNFINISHED hwid control

This commit is contained in:
agony
2026-06-16 16:24:02 +07:00
parent 7ab2293fe2
commit edfe1e6874
6 changed files with 55 additions and 7 deletions

View File

@@ -1,10 +1,12 @@
import logging
from dataclasses import dataclass
from datetime import UTC, datetime, timedelta
from typing import List
from uuid import UUID
from remnawave import RemnawaveSDK
from remnawave.models import CreateUserRequestDto, UpdateUserRequestDto
from remnawave.models.hwid import HwidDeviceDto
logger = logging.getLogger(__name__)
@@ -349,3 +351,15 @@ async def create_user(
except Exception as exc:
logger.warning("Failed to create user username=%s: %s", username, exc)
return None
async def get_hwid_list(
sdk: RemnawaveSDK,
user_uuid: str
) -> List[HwidDeviceDto] | None:
try:
resp = await sdk.hwid.get_hwid_user(user_uuid)
return resp.devices
except Exception as exc:
logger.exception("failed to fetch hwid list for user=%s", user_uuid)
return

View File

@@ -2,8 +2,9 @@ import datetime
import logging
import math
from aiogram.types import Message, User as TelegramUser
from aiogram.types import InlineKeyboardMarkup, Message, User as TelegramUser
from remnawave import RemnawaveSDK
from remnawave.models.hwid import HwidDeviceDto
from sqlalchemy.ext.asyncio import AsyncSession
from bot.texts import NO_SUBSCRIPTION, NOTHING_PLACEHOLDER, SUBSCRIPTION_INFORMATION