license login feature

This commit is contained in:
2026-09-01 22:25:23 +03:00
parent c25e071b29
commit d6986057d1
11 changed files with 1062 additions and 19 deletions
+9
View File
@@ -1,5 +1,6 @@
#pragma once
#include <QDateTime>
#include <QJsonObject>
#include <QObject>
#include <QString>
@@ -12,6 +13,9 @@ struct AuthResult
{
bool ok = false;
bool twoFactorRequired = false;
// Вход в Microsoft прошёл, но копии игры на аккаунте нет: чинится только
// покупкой, поэтому обрабатывается отдельно от прочих ошибок.
bool licenseMissing = false;
QString error;
QString playerName; // ${auth_player_name}
@@ -19,6 +23,11 @@ struct AuthResult
QString accessToken; // ${auth_access_token}
QString clientToken; // ${clientid}
QString userType; // ${user_type}: legacy / msa / ELYBY
// Только для аккаунтов Microsoft.
QString refreshToken; // продлевает сессию без ввода пароля
QString xuid; // ${auth_xuid}
QDateTime expiresAt; // UTC-время, когда протухает accessToken
};
// Yggdrasil-клиент Ely.by плюс офлайн-режим. Все сетевые методы асинхронные: