LootLocker Unreal SDK 10.7.0
Game backend SDK for Unreal Engine
Loading...
Searching...
No Matches
LootLockerConnectedAccountsRequestHandler.h
Go to the documentation of this file.
1// Copyright (c) 2021 LootLocker
2
3#pragma once
4
5
6#include "CoreMinimal.h"
9#include "LootLockerConnectedAccountsRequestHandler.generated.h"
10
11//==================================================
12// Data Type Definitions
13//==================================================
16UENUM(BlueprintType, Category = "LootLocker")
21{
22 Guest = 0,
23 Google = 1,
24 Apple = 2,
25 Steam = 3,
27 Credentials = 5, // White Label Login
29 Xbox = 7,
31 Twitch = 9,
32 Discord = 10,
34};
35
36
39UENUM(BlueprintType, Category = "LootLocker")
44{
45 web = 0,
47 ios = 2,
49};
50
51
55USTRUCT(BlueprintType, Category = "LootLocker")
57{
58 GENERATED_BODY()
62 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
67 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
68 FString Provider_name = "";
69};
70
71//==================================================
72// Request Definitions
73//==================================================
77USTRUCT(BlueprintType, Category = "LootLocker")
79{
80 GENERATED_BODY()
84 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
85 FString Id_token = "";
86};
87
91USTRUCT(BlueprintType, Category = "LootLocker")
93{
94 GENERATED_BODY()
98 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
99 FString Id_token = "";
103 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
104 FString Platform = "";
105};
106
110USTRUCT(BlueprintType, Category = "LootLocker")
112{
113 GENERATED_BODY()
117 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
118 FString Authorization_code = "";
119};
120
124USTRUCT(BlueprintType, Category = "LootLocker")
126{
127 GENERATED_BODY()
131 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
132 FString Token = "";
133};
134
138USTRUCT(BlueprintType, Category = "LootLocker")
140{
141 GENERATED_BODY()
145 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
146 FString Environment = "";
150 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
151 FString Code = "";
152};
153
157USTRUCT(BlueprintType, Category = "LootLocker")
159{
160 GENERATED_BODY()
164 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
165 FString Token = "";
166};
167
171USTRUCT(BlueprintType, Category = "LootLocker")
173{
174 GENERATED_BODY()
178 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
179 FString Authorization_code = "";
180};
181
185USTRUCT(BlueprintType, Category = "LootLocker")
187{
188 GENERATED_BODY()
192 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
193 FString Steam_ticket = "";
194};
195
199USTRUCT(BlueprintType, Category = "LootLocker")
201{
202 GENERATED_BODY()
206 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
207 FString Xbox_user_token = "";
208};
209
213USTRUCT(BlueprintType, Category = "LootLocker")
215{
216 GENERATED_BODY()
220 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
221 FString Nsa_id_token = "";
222};
223
227USTRUCT(BlueprintType, Category = "LootLocker")
229{
230 GENERATED_BODY()
234 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
235 FString Auth_code = "";
236};
237
241USTRUCT(BlueprintType, Category = "LootLocker")
243{
244 GENERATED_BODY()
248 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
249 FString Code = "";
253 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
254 FString Nonce = "";
255};
256
260USTRUCT(BlueprintType, Category = "LootLocker")
262{
263 GENERATED_BODY()
267 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
268 FString Source_token = "";
272 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
273 FString Target_token = "";
277 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
278 TArray<FString> Identity_providers;
279};
280
284USTRUCT(BlueprintType, Category = "LootLocker")
286{
287 GENERATED_BODY()
291 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
296 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
297 FString Provider_name = "";
298};
299
300//==================================================
301// Response Definitions
302//==================================================
303
307USTRUCT(BlueprintType, Category = "LootLocker")
309{
310 GENERATED_BODY()
314 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
316};
317
321USTRUCT(BlueprintType, Category = "LootLocker")
323{
324 GENERATED_BODY()
328 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
330};
331
332//==================================================
333// Delegate Definitions
334//==================================================
337
345
346//==================================================
347// API Class Definition
348//==================================================
349
351UCLASS()
352class LOOTLOCKERSDK_API ULootLockerConnectedAccountsRequestHandler : public UObject
353{
354 GENERATED_BODY()
355public:
357
359 static FString DisconnectAccount(const FLootLockerPlayerData& PlayerData, const ELootLockerAccountProvider AccountToDisconnect, const FLootLockerDefaultDelegate& OnComplete);
360 static FString ConnectGoogleAccount(const FLootLockerPlayerData& PlayerData, const FString& IdToken, const FLootLockerAccountConnectedResponseDelegate& OnComplete);
361 static FString ConnectGoogleAccount(const FLootLockerPlayerData& PlayerData, const FString& IdToken, EGoogleAccountProviderPlatform Platform, const FLootLockerAccountConnectedResponseDelegate& OnComplete);
362 static FString ConnectAppleAccountByRestSignIn(const FLootLockerPlayerData& PlayerData, const FString& AuthorizationCode, const FLootLockerAccountConnectedResponseDelegate& OnComplete);
363 static FString ConnectEpicAccount(const FLootLockerPlayerData& PlayerData, const FString& Token, const FLootLockerAccountConnectedResponseDelegate& OnComplete);
364 static FString ConnectPlaystationAccount(const FLootLockerPlayerData& PlayerData, const FString& Environment, const FString& Code, const FLootLockerAccountConnectedResponseDelegate& OnComplete);
365 static FString ConnectDiscordAccount(const FLootLockerPlayerData& PlayerData, const FString& Token, const FLootLockerAccountConnectedResponseDelegate& OnComplete);
366 static FString ConnectTwitchAccount(const FLootLockerPlayerData& PlayerData, const FString& AuthorizationCode, const FLootLockerAccountConnectedResponseDelegate& OnComplete);
367 static FString ConnectSteamAccount(const FLootLockerPlayerData& PlayerData, const FString& SteamTicket, const FLootLockerAccountConnectedResponseDelegate& OnComplete);
368 static FString ConnectXboxAccount(const FLootLockerPlayerData& PlayerData, const FString& XboxUserToken, const FLootLockerAccountConnectedResponseDelegate& OnComplete);
369 static FString ConnectNintendoAccount(const FLootLockerPlayerData& PlayerData, const FString& NSAIdToken, const FLootLockerAccountConnectedResponseDelegate& OnComplete);
370 static FString ConnectGooglePlayGamesAccount(const FLootLockerPlayerData& PlayerData, const FString& AuthCode, const FLootLockerAccountConnectedResponseDelegate& OnComplete);
371 static FString ConnectRemoteSessionAccount(const FLootLockerPlayerData& PlayerData, const FString& Code, const FString& Nonce, const FLootLockerAccountConnectedResponseDelegate& OnComplete);
372 static FString TransferIdentityProvidersBetweenAccounts(const FLootLockerPlayerData& SourcePlayerData, const FLootLockerPlayerData& TargetPlayerData, TArray<ELootLockerAccountProvider> ProvidersToTransfer, const FLootLockerListConnectedAccountsResponseDelegate& OnComplete);
373};
void(* FLootLockerDefaultDelegate)(FLootLockerResponse)
Definition LootLockerResponse.h:38
static FString ConnectXboxAccount(const FLootLockerPlayerData &PlayerData, const FString &XboxUserToken, const FLootLockerAccountConnectedResponseDelegate &OnComplete)
ULootLockerConnectedAccountsRequestHandler()
Definition LootLockerConnectedAccountsRequestHandler.h:356
static FString ConnectTwitchAccount(const FLootLockerPlayerData &PlayerData, const FString &AuthorizationCode, const FLootLockerAccountConnectedResponseDelegate &OnComplete)
static FString ConnectRemoteSessionAccount(const FLootLockerPlayerData &PlayerData, const FString &Code, const FString &Nonce, const FLootLockerAccountConnectedResponseDelegate &OnComplete)
static FString ListConnectedAccounts(const FLootLockerPlayerData &PlayerData, const FLootLockerListConnectedAccountsResponseDelegate &OnComplete)
static FString ConnectGoogleAccount(const FLootLockerPlayerData &PlayerData, const FString &IdToken, EGoogleAccountProviderPlatform Platform, const FLootLockerAccountConnectedResponseDelegate &OnComplete)
static FString ConnectPlaystationAccount(const FLootLockerPlayerData &PlayerData, const FString &Environment, const FString &Code, const FLootLockerAccountConnectedResponseDelegate &OnComplete)
static FString ConnectSteamAccount(const FLootLockerPlayerData &PlayerData, const FString &SteamTicket, const FLootLockerAccountConnectedResponseDelegate &OnComplete)
static FString ConnectEpicAccount(const FLootLockerPlayerData &PlayerData, const FString &Token, const FLootLockerAccountConnectedResponseDelegate &OnComplete)
static FString TransferIdentityProvidersBetweenAccounts(const FLootLockerPlayerData &SourcePlayerData, const FLootLockerPlayerData &TargetPlayerData, TArray< ELootLockerAccountProvider > ProvidersToTransfer, const FLootLockerListConnectedAccountsResponseDelegate &OnComplete)
static FString DisconnectAccount(const FLootLockerPlayerData &PlayerData, const ELootLockerAccountProvider AccountToDisconnect, const FLootLockerDefaultDelegate &OnComplete)
static FString ConnectNintendoAccount(const FLootLockerPlayerData &PlayerData, const FString &NSAIdToken, const FLootLockerAccountConnectedResponseDelegate &OnComplete)
static FString ConnectGooglePlayGamesAccount(const FLootLockerPlayerData &PlayerData, const FString &AuthCode, const FLootLockerAccountConnectedResponseDelegate &OnComplete)
static FString ConnectAppleAccountByRestSignIn(const FLootLockerPlayerData &PlayerData, const FString &AuthorizationCode, const FLootLockerAccountConnectedResponseDelegate &OnComplete)
static FString ConnectDiscordAccount(const FLootLockerPlayerData &PlayerData, const FString &Token, const FLootLockerAccountConnectedResponseDelegate &OnComplete)
static FString ConnectGoogleAccount(const FLootLockerPlayerData &PlayerData, const FString &IdToken, const FLootLockerAccountConnectedResponseDelegate &OnComplete)
ELootLockerAccountProvider
Account providers possible to use for connected accounts.
Definition LootLockerConnectedAccountsRequestHandler.h:21
void(* FLootLockerListConnectedAccountsResponseDelegate)(FLootLockerListConnectedAccountsResponse)
C++ response delegate for listing connected accounts.
Definition LootLockerConnectedAccountsRequestHandler.h:344
void(* FLootLockerAccountConnectedResponseDelegate)(FLootLockerAccountConnectedResponse)
C++ response delegate for connecting a provider to an account.
Definition LootLockerConnectedAccountsRequestHandler.h:340
EGoogleAccountProviderPlatform
Google OAuth2 Client platform.
Definition LootLockerConnectedAccountsRequestHandler.h:44
@ Nintendo
Definition LootLockerConnectedAccountsRequestHandler.h:28
@ Google_play_games
Definition LootLockerConnectedAccountsRequestHandler.h:33
@ Xbox
Definition LootLockerConnectedAccountsRequestHandler.h:29
@ Credentials
Definition LootLockerConnectedAccountsRequestHandler.h:27
@ Steam
Definition LootLockerConnectedAccountsRequestHandler.h:25
@ Epic_games
Definition LootLockerConnectedAccountsRequestHandler.h:26
@ Twitch
Definition LootLockerConnectedAccountsRequestHandler.h:31
@ Google
Definition LootLockerConnectedAccountsRequestHandler.h:23
@ Discord
Definition LootLockerConnectedAccountsRequestHandler.h:32
@ Apple
Definition LootLockerConnectedAccountsRequestHandler.h:24
@ Playstation
Definition LootLockerConnectedAccountsRequestHandler.h:30
@ Guest
Definition LootLockerConnectedAccountsRequestHandler.h:22
@ web
Definition LootLockerConnectedAccountsRequestHandler.h:45
@ ios
Definition LootLockerConnectedAccountsRequestHandler.h:47
@ desktop
Definition LootLockerConnectedAccountsRequestHandler.h:48
@ android
Definition LootLockerConnectedAccountsRequestHandler.h:46
Response returned after connecting a provider to a player account, containing the details of the newl...
Definition LootLockerConnectedAccountsRequestHandler.h:309
FLootLockerAccountConnectedStruct Connected_account
Information about the connected account.
Definition LootLockerConnectedAccountsRequestHandler.h:315
Holds the provider type and display name of an account that was successfully connected to a player ac...
Definition LootLockerConnectedAccountsRequestHandler.h:286
FString Provider_name
Decorated name of this provider to use for displaying.
Definition LootLockerConnectedAccountsRequestHandler.h:297
ELootLockerAccountProvider Provider
The account provider.
Definition LootLockerConnectedAccountsRequestHandler.h:292
Request to connect an Apple account to the current player account using an Apple REST Sign In authori...
Definition LootLockerConnectedAccountsRequestHandler.h:112
FString Authorization_code
Authorization code, provided by apple during Sign In.
Definition LootLockerConnectedAccountsRequestHandler.h:118
Request to connect a Discord account to the current player account using a Discord sign-in token.
Definition LootLockerConnectedAccountsRequestHandler.h:159
FString Token
The token from discord sign in.
Definition LootLockerConnectedAccountsRequestHandler.h:165
Request to connect an Epic Games account to the current player account using an Epic sign-in token.
Definition LootLockerConnectedAccountsRequestHandler.h:126
FString Token
The token from epic sign in.
Definition LootLockerConnectedAccountsRequestHandler.h:132
Request to connect a Google Play Games account to the current player account using an auth code.
Definition LootLockerConnectedAccountsRequestHandler.h:229
FString Auth_code
The auth code from Google Play Games sign in.
Definition LootLockerConnectedAccountsRequestHandler.h:235
Request to connect a Google account to the current player account using a Google sign-in ID token.
Definition LootLockerConnectedAccountsRequestHandler.h:79
FString Id_token
The Id Token from google sign in.
Definition LootLockerConnectedAccountsRequestHandler.h:85
Request to connect a Google account to the current player account using an ID token and a specific OA...
Definition LootLockerConnectedAccountsRequestHandler.h:93
FString Id_token
The Id Token from google sign in.
Definition LootLockerConnectedAccountsRequestHandler.h:99
FString Platform
Google OAuth2 ClientID platform.
Definition LootLockerConnectedAccountsRequestHandler.h:104
Request to connect a Nintendo Switch account to the current player account using an NSA ID token.
Definition LootLockerConnectedAccountsRequestHandler.h:215
FString Nsa_id_token
The NSA ID token from Nintendo Switch sign in.
Definition LootLockerConnectedAccountsRequestHandler.h:221
Request to connect a PlayStation account to the current player account using a sign-in code and envir...
Definition LootLockerConnectedAccountsRequestHandler.h:140
FString Environment
The environment for the playstation account (dev, qa, prod).
Definition LootLockerConnectedAccountsRequestHandler.h:146
FString Code
The code from playstation sign in.
Definition LootLockerConnectedAccountsRequestHandler.h:151
Request to connect a remote session lease to the current player account using the lease code and its ...
Definition LootLockerConnectedAccountsRequestHandler.h:243
FString Nonce
The nonce used to sign usage of the lease code.
Definition LootLockerConnectedAccountsRequestHandler.h:254
FString Code
The unique code for this leasing process, this is what identifies the leasing process and that is use...
Definition LootLockerConnectedAccountsRequestHandler.h:249
Request to connect a Steam account to the current player account using a Steam session ticket.
Definition LootLockerConnectedAccountsRequestHandler.h:187
FString Steam_ticket
The Steam session ticket (hex-encoded).
Definition LootLockerConnectedAccountsRequestHandler.h:193
Request to connect a Twitch account to the current player account using a Twitch authorization code.
Definition LootLockerConnectedAccountsRequestHandler.h:173
FString Authorization_code
The authorization code from twitch sign in.
Definition LootLockerConnectedAccountsRequestHandler.h:179
Request to connect an Xbox account to the current player account using an Xbox user token.
Definition LootLockerConnectedAccountsRequestHandler.h:201
FString Xbox_user_token
The Xbox user token.
Definition LootLockerConnectedAccountsRequestHandler.h:207
Represents an account provider that can be connected to a LootLocker account, identified by provider ...
Definition LootLockerConnectedAccountsRequestHandler.h:57
ELootLockerAccountProvider Provider
The account provider.
Definition LootLockerConnectedAccountsRequestHandler.h:63
FString Provider_name
Decorated name of this provider to use for displaying.
Definition LootLockerConnectedAccountsRequestHandler.h:68
Response containing the list of account providers currently connected to the player's LootLocker acco...
Definition LootLockerConnectedAccountsRequestHandler.h:323
TArray< FLootLockerConnectedAccountProvider > Connected_accounts
List of the accounts connected (allowed to start sessions for) to this LootLocker account.
Definition LootLockerConnectedAccountsRequestHandler.h:329
Definition LootLockerPlayerData.h:12
Base response struct — every SDK callback receives a struct that derives from this.
Definition LootLockerResponse.h:19
Request to transfer one or more identity providers from a source player account to a target player ac...
Definition LootLockerConnectedAccountsRequestHandler.h:262
FString Source_token
Session token belonging to the player to move platforms FROM.
Definition LootLockerConnectedAccountsRequestHandler.h:268
FString Target_token
Session token belonging to the player to move platforms TO.
Definition LootLockerConnectedAccountsRequestHandler.h:273
TArray< FString > Identity_providers
List of identity providers to move FROM the account authenticated by the source token TO the account ...
Definition LootLockerConnectedAccountsRequestHandler.h:278