add xray client id to the clients table

This commit is contained in:
Cyril Anisimov 2024-08-13 14:56:22 +02:00
parent 393e289784
commit 3d7a46d058
3 changed files with 127 additions and 13 deletions

View file

@ -3,6 +3,8 @@
#include <QFile>
#include <QJsonDocument>
#include <QJsonObject>
#include <QUuid>
#include <qlogging.h>
#include "containers/containers_defs.h"
#include "core/controllers/serverController.h"
@ -13,8 +15,8 @@ XrayConfigurator::XrayConfigurator(std::shared_ptr<Settings> settings, const QSh
{
}
QString XrayConfigurator::createConfig(const ServerCredentials &credentials, DockerContainer container, const QJsonObject &containerConfig,
ErrorCode &errorCode)
QString XrayConfigurator::createConfig(const ServerCredentials &credentials, DockerContainer container,
const QJsonObject &containerConfig, ErrorCode &errorCode)
{
QString config = m_serverController->replaceVars(amnezia::scriptData(ProtocolScriptType::xray_template, container),
m_serverController->genVarsForScript(credentials, container, containerConfig));
@ -25,11 +27,13 @@ QString XrayConfigurator::createConfig(const ServerCredentials &credentials, Doc
QString xrayUuid = m_serverController->getTextFileFromContainer(container, credentials, amnezia::protocols::xray::uuidPath, errorCode);
xrayUuid.replace("\n", "");
qDebug() << "===>> xrayUuid: " << xrayUuid;
QString xrayShortId =
m_serverController->getTextFileFromContainer(container, credentials, amnezia::protocols::xray::shortidPath, errorCode);
xrayShortId.replace("\n", "");
QString xrayUserId = QUuid::createUuid().toString(QUuid::WithoutBraces);
if (errorCode != ErrorCode::NoError) {
return "";
}
@ -37,6 +41,8 @@ QString XrayConfigurator::createConfig(const ServerCredentials &credentials, Doc
config.replace("$XRAY_CLIENT_ID", xrayUuid);
config.replace("$XRAY_PUBLIC_KEY", xrayPublicKey);
config.replace("$XRAY_SHORT_ID", xrayShortId);
config.replace("$XRAY_USER_ID", xrayUserId);
qDebug() << "===>> xrayUserId: " << xrayUserId;
return config;
}