VRRSS vrenaissance

VRRSS // DEVELOPER DOCUMENTATION

API, Unity SDK и интеграция проверки лицензий

VRRSSHubAPI.dll #

Библиотека реализующая API для VRenaissance Hub.


Перечисления #

LicenseStatus #

Описание: Статус проверки лицензии.

enum LicenseStatus
{
  Success,
  NotFound,
  SignNotFound,
  InvalidKey,
  DecryptFailed,
  SignMismatch,
  ParsingFailed,
  DataMismatch,
  Expired,
  FileExpired,
  UnhandledError,
  Canceled,
};

Значения #

Имя Значение
Success Лицензия действительна
NotFound Файл лицензии не найден
SignNotFound Файл подписи не найден
InvalidKey Открытый ключ недействителен
DecryptFailed Не удалось расшифровать файл лицензии
SignMismatch Подпись не соответствует лицензии
ParsingFailed Не удалось разобрать файл лицензии
DataMismatch Регистрационные данные лицензии не совпадают
Expired Срок действия лицензии истек
FileExpired Срок действия файла лицензии истек
UnhandledError Необработанная ошибка при проверке лицензии
Canceled Проверка лицензии была отменена

MessageType #

Описание: Тип окна сообщения.

enum MessageType
{
  None,
  Error,
  Question,
  Warning,
  Information
};

Значения #

Имя Описание
None Неопределенный тип сообщения
Error Сообщение об ошибке
Question Сообщение с вопросом
Warning Предупреждающее сообщение
Information Информационное сообщение


Типы #

LICENSE_CALLBACK #

Описание: Представляет делегат для обработки результата проверки лицензии.

typedef void(__stdcall* LICENSE_CALLBACK)(LicenseStatus status);

Параметры #

status #

Тип: LicenseStatus
Описание: Статус, с которым завершилась проверка лицензии.

Функции #

SendHUBCommand #

Описание: Отправляет пользовательскую команду для VRenaissance Hub.

extern "C" HUBAPI_API void SendHUBCommand(const wchar_t* command);

Параметры #

command #

Тип: const wchar_t*
Описание: Команда.

Пример использования #

SendHUBCommand(L"window?command=maximize");

InitGame #

Описание: Инициализирует игру в VRenaissance Hub по ее идентификатору.

extern "C" HUBAPI_API bool InitGame(const wchar_t* gameId);

Параметры #

gameId #

Тип: const wchar_t*
Описание: Идентификатор игры.

Результат #

Тип: bool Описание: Успешность инициализации игры.

Пример использования #

bool isGameInitialized = InitGame(L"com.stvdev.netoa");

InitGameWithLicense #

Описание: Инициализирует игру в VRenaissance Hub по ее идентификатору и запускает цикл проверки лицензии. Проверка лицензии будет выполняться каждые 5 минут до завершения игрового процесса.

extern "C" HUBAPI_API void InitGameWithLicense(const wchar_t* gameId, LICENSE_CALLBACK callback);

Параметры #

gameId #

Тип: const wchar_t*
Описание: Идентификатор игры.

callback #

Тип: LICENSE_CALLBACK
Описание: Вызывается после завершения проверки лицензии. Передает результаты проверки как LicenseStatus. Вызывается каждые 5 минут после вызова функции.

Note

Вызов callback происходит не в том же потоке, в котором была вызвана функция InitGameWithLicense.

Пример использования #

void OnLicenseVerificationCompleted(LicenseStatus status)
{
    if (status != LicenseStatus::Success && status != LicenseStatus::Canceled)
    {
        // Invalid license processing...
    }
}

void RunLicenseCheck()
{
    InitGameWithLicense(L"com.stvdev.netoa", OnLicenseVerificationCompleted);
}

CancelLicenseVerification #

Описание: Останавливает цикл проверки лицензии, если он запущен. После остановки callback будет вызван со статусом LicenseStatus::Canceled.

extern "C" HUBAPI_API void CancelLicenseVerification();

Пример использования #

CancelLicenseVerification();

ShowHUBMessage #

Описание: Отображает диалоговое окно с сообщением в VRenaissance Hub.

extern "C" HUBAPI_API void ShowHUBMessage(const wchar_t* body, const wchar_t* header, MessageType type);

Параметры #

body #

Тип: const wchar_t*
Описание: Текст сообщения.

Тип: const wchar_t*
Описание: Заголовок сообщения.

type #

Тип: MessageType
Описание: Тип сообщения.

Пример использования #

ShowHUBMessage(L"Something went wrong.", L"Oops...", MessageType::Error);