6#include "CoreMinimal.h"
7#include "Dom/JsonObject.h"
10#include "LootLockerNotificationsRequestHandler.generated.h"
18UENUM(BlueprintType, Category =
"LootLocker")
33UENUM(BlueprintType, Category =
"LootLocker")
53UENUM(BlueprintType, Category =
"LootLocker")
79UENUM(BlueprintType, Category =
"LootLocker")
95UENUM(BlueprintType, Category =
"LootLocker")
153 static const FString
Id;
223 UFUNCTION(BlueprintPure, Category =
"LootLocker Methods | Static Strings | Notifications | Types")
228 UFUNCTION(BlueprintPure, Category =
"LootLocker Methods | Static Strings | Notifications | Sources | Triggers")
233 UFUNCTION(BlueprintPure, Category =
"LootLocker Methods | Static Strings | Notifications | Sources | Purchasing")
238 UFUNCTION(BlueprintPure, Category =
"LootLocker Methods | Static Strings | Notifications | Sources | Purchasing")
243 UFUNCTION(BlueprintPure, Category =
"LootLocker Methods | Static Strings | Notifications | Sources | Purchasing")
248 UFUNCTION(BlueprintPure, Category =
"LootLocker Methods | Static Strings | Notifications | Sources | Purchasing")
253 UFUNCTION(BlueprintPure, Category =
"LootLocker Methods | Static Strings | Notifications | Sources | Twitch Drop")
258 UFUNCTION(BlueprintPure, Category =
"LootLocker Methods | Static Strings | Notifications | Sources | LootLocker Console")
263 UFUNCTION(BlueprintPure, Category =
"LootLocker Methods | Static Strings | Notifications | Sources | LootLocker Server API")
268 UFUNCTION(BlueprintPure, Category =
"LootLocker Methods | Static Strings | Notifications | Standard Context Keys | Triggers")
273 UFUNCTION(BlueprintPure, Category =
"LootLocker Methods | Static Strings | Notifications | Standard Context Keys | Triggers")
278 UFUNCTION(BlueprintPure, Category =
"LootLocker Methods | Static Strings | Notifications | Standard Context Keys | Triggers")
283 UFUNCTION(BlueprintPure, Category =
"LootLocker Methods | Static Strings | Notifications | Standard Context Keys | Purchasing | SteamStore")
288 UFUNCTION(BlueprintPure, Category =
"LootLocker Methods | Static Strings | Notifications | Standard Context Keys | Purchasing | SteamStore")
293 UFUNCTION(BlueprintPure, Category =
"LootLocker Methods | Static Strings | Notifications | Standard Context Keys | Purchasing | SteamStore")
298 UFUNCTION(BlueprintPure, Category =
"LootLocker Methods | Static Strings | Notifications | Standard Context Keys | Purchasing | SteamStore")
303 UFUNCTION(BlueprintPure, Category =
"LootLocker Methods | Static Strings | Notifications | Standard Context Keys | Purchasing | AppleAppStore")
308 UFUNCTION(BlueprintPure, Category =
"LootLocker Methods | Static Strings | Notifications | Standard Context Keys | Purchasing | AppleAppStore")
313 UFUNCTION(BlueprintPure, Category =
"LootLocker Methods | Static Strings | Notifications | Standard Context Keys | Purchasing | AppleAppStore")
318 UFUNCTION(BlueprintPure, Category =
"LootLocker Methods | Static Strings | Notifications | Standard Context Keys | Purchasing | GooglePlayStore")
323 UFUNCTION(BlueprintPure, Category =
"LootLocker Methods | Static Strings | Notifications | Standard Context Keys | Purchasing | GooglePlayStore")
328 UFUNCTION(BlueprintPure, Category =
"LootLocker Methods | Static Strings | Notifications | Standard Context Keys | Purchasing | GooglePlayStore")
333 UFUNCTION(BlueprintPure, Category =
"LootLocker Methods | Static Strings | Notifications | Standard Context Keys | Purchasing | LootLocker")
338 UFUNCTION(BlueprintPure, Category =
"LootLocker Methods | Static Strings | Notifications | Standard Context Keys | Purchasing | LootLocker")
343 UFUNCTION(BlueprintPure, Category =
"LootLocker Methods | Static Strings | Notifications | Standard Context Keys | Purchasing | LootLocker")
361USTRUCT(BlueprintType)
368 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category =
"LootLocker")
373 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
380USTRUCT(BlueprintType)
387 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category =
"LootLocker")
392 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
397 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
402 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
409USTRUCT(BlueprintType)
416 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category =
"LootLocker")
421 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
426 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
431 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
436 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
437 FString Reward_id = "";
441 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
442 FString Currency_id = "";
448USTRUCT(BlueprintType)
455 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category =
"LootLocker")
460 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
465 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
470 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
477USTRUCT(BlueprintType)
484 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category =
"LootLocker")
489 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
494 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
499 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
504 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
505 FString Progression_id = "";
509 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
510 FString Reward_id = "";
516USTRUCT(BlueprintType)
523 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category =
"LootLocker")
528 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
533 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
540USTRUCT(BlueprintType)
547 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category =
"LootLocker")
552 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
557 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
562 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
563 FString Progression_id = "";
567 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
568 FString Reward_id = "";
574USTRUCT(BlueprintType)
581 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category =
"LootLocker")
586 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
587 FString Thumbnail = "";
591 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
592 FString Variation_name = "";
596 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
597 FString Rental_option_name = "";
601 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
602 int Variation_id = 0;
606 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
607 int Rental_option_id = 0;
611 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
616 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
623USTRUCT(BlueprintType)
630 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category =
"LootLocker")
635 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
640 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
645 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
646 int Asset_variation_id = 0;
650 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
651 int Asset_rental_option_id = 0;
655 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
660 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
661 FString Reward_id = "";
665 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
666 FString Asset_ulid = "";
672USTRUCT(BlueprintType)
679 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category =
"LootLocker")
684 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
689 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
694 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
699 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
706USTRUCT(BlueprintType)
713 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category =
"LootLocker")
719 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
725 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
726 FString Description = "";
731 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
737 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
738 FString Reward_id = "";
744USTRUCT(BlueprintType)
751 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category =
"LootLocker")
756 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
761 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
766 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
771 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
776 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
783USTRUCT(BlueprintType)
790 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category =
"LootLocker")
795 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
796 TMap<FString, FString> ContextAsDictionary;
800 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
801 FString IdentifyingContextKey = "";
805 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
810 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
811 FString BodyAsJsonString = "";
815 TSharedPtr<FJsonValue> BodyAsJsonValue;
820 LOOTLOCKERSDK_API
bool TryGetContentBodyAsString(FString& Output) const;
824 LOOTLOCKERSDK_API
bool TryGetContentBodyAsFloat(
float& Output) const;
828 LOOTLOCKERSDK_API
bool TryGetContentBodyAsInteger(
int& Output) const;
832 LOOTLOCKERSDK_API
bool TryGetContentBodyAsBool(
bool& Output) const;
836 LOOTLOCKERSDK_API
bool TryGetContentBodyAsStringArray(TArray<FString>& Output) const;
840 LOOTLOCKERSDK_API
bool TryGetContentBodyAsFloatArray(TArray<
float>& Output) const;
844 LOOTLOCKERSDK_API
bool TryGetContentBodyAsIntegerArray(TArray<
int>& Output) const;
848 LOOTLOCKERSDK_API
bool TryGetContentBodyAsBoolArray(TArray<
bool>& Output) const;
852 LOOTLOCKERSDK_API
bool TryGetRawValue(TSharedPtr<FJsonValue>& Output) const;
856 LOOTLOCKERSDK_API
bool TryGetContentBodyAsJsonObject(TSharedPtr<FJsonObject>& Output) const;
860 LOOTLOCKERSDK_API
bool TryGetContentBodyAsJsonArray(TArray<TSharedPtr<FJsonValue>>& Output) const;
870USTRUCT(BlueprintType)
877 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category =
"LootLocker")
882 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
883 FString Expiration_date = "";
887 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
888 FString Read_at = "";
892 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
893 FString Notification_type = "";
897 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
902 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
907 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
912 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
917 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
922 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
927 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
932 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
943USTRUCT(BlueprintType, Category="LootLocker")
950 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category =
"LootLocker")
951 TArray<FString> Notifications;
961USTRUCT(BlueprintType, Category = "LootLocker")
971USTRUCT(BlueprintType, Category =
"LootLocker")
978 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category =
"LootLocker")
983 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
986 void PopulateConvenienceStructures();
1001 bool TryGetNotificationsByIdentifyingValue(const FString& IdentifyingValue, TArray<
FLootLockerNotification>& OutNotifications) const;
Definition LootLockerNotificationsRequestHandler.h:1029
static FString ListNotificationsWithDefaultParameters(const FLootLockerPlayerData &PlayerData, const FLootLockerListNotificationsResponseDelegate &OnComplete)
static FString MarkNotificationsAsRead(const FLootLockerPlayerData &PlayerData, const TArray< FString > &NotificationIDs, const FLootLockerReadNotificationsResponseDelegate &OnComplete)
ULootLockerNotificationsRequestHandler()
Definition LootLockerNotificationsRequestHandler.h:1032
static FString MarkAllNotificationsAsRead(const FLootLockerPlayerData &PlayerData, const FLootLockerReadNotificationsResponseDelegate &OnComplete)
static FString ListNotifications(const FLootLockerPlayerData &PlayerData, bool ShowRead, const FString &OfType, const FString &WithSource, ELootLockerCustomNotificationFiltering CustomNotificationsFilter, int PerPage, int Page, const FLootLockerListNotificationsResponseDelegate &OnComplete)
static FString ListNotifications(const FLootLockerPlayerData &PlayerData, ELootLockerNotificationPriority WithPriority, bool ShowRead, const FString &OfType, const FString &WithSource, ELootLockerCustomNotificationFiltering CustomNotificationsFilter, int PerPage, int Page, const FLootLockerListNotificationsResponseDelegate &OnComplete)
Blueprint exposure of the set of static string definitions to use for matching in different Notificat...
Definition LootLockerNotificationsRequestHandler.h:215
ULootLockerStaticNotificationStringBlueprintCallables()
Definition LootLockerNotificationsRequestHandler.h:218
ELootLockerCustomNotificationFiltering
Enum for custom notification filtering.
Definition LootLockerNotificationsRequestHandler.h:100
ELootLockerNotificationSource
Enum of the different available sources for notifications.
Definition LootLockerNotificationsRequestHandler.h:38
ELootLockerNotificationContentBodyType
Enum of the different types of values that can be in the notification body.
Definition LootLockerNotificationsRequestHandler.h:58
void(* FLootLockerListNotificationsResponseDelegate)(FLootLockerListNotificationsResponse)
C++ response delegate for handling List Notifications Responses.
Definition LootLockerNotificationsRequestHandler.h:1015
ELootLockerNotificationContentRewardKind
Enum of the different kinds of notification bodies possible, use this to figure out how to parse the ...
Definition LootLockerNotificationsRequestHandler.h:84
ELootLockerNotificationPriority
Enum of the different available priorities for notifications.
Definition LootLockerNotificationsRequestHandler.h:23
void(* FLootLockerReadNotificationsResponseDelegate)(FLootLockerReadNotificationsResponse)
C++ response delegate for handling read notifications response.
Definition LootLockerNotificationsRequestHandler.h:1019
@ purchasing_google_play_store
@ purchasing_apple_app_store
@ purchasing_lootlocker_store
Response containing a paginated list of notifications for the player, with a lookup helper for findin...
Definition LootLockerNotificationsRequestHandler.h:973
Holds the full reward body of a notification's content, with the active reward type determined by the...
Definition LootLockerNotificationsRequestHandler.h:746
Holds the content of a notification, including context key-value pairs, body type hint,...
Definition LootLockerNotificationsRequestHandler.h:785
Holds a single key-value context entry attached to a notification's content.
Definition LootLockerNotificationsRequestHandler.h:363
Holds one member reward within a notification group reward, identified by kind, with the relevant rew...
Definition LootLockerNotificationsRequestHandler.h:674
Definition LootLockerNotificationsRequestHandler.h:352
FString IdentifyingContextKey
Definition LootLockerNotificationsRequestHandler.h:353
int NotificationArrayIndex
Definition LootLockerNotificationsRequestHandler.h:355
FString NotificationULID
Definition LootLockerNotificationsRequestHandler.h:354
Holds the display details of an asset referenced in a notification reward, including its name,...
Definition LootLockerNotificationsRequestHandler.h:576
Represents an asset reward in a notification, linking the reward to an asset and its optional variati...
Definition LootLockerNotificationsRequestHandler.h:625
Holds the display details of a currency referenced in a notification reward, including its name,...
Definition LootLockerNotificationsRequestHandler.h:382
Represents a currency reward in a notification, linking the reward to a currency amount and its curre...
Definition LootLockerNotificationsRequestHandler.h:411
Represents a group reward in a notification, bundling multiple reward-type associations under a share...
Definition LootLockerNotificationsRequestHandler.h:708
Holds the display details of a progression referenced in a progression-points notification reward,...
Definition LootLockerNotificationsRequestHandler.h:450
Holds the display details of a progression referenced in a progression-reset notification reward,...
Definition LootLockerNotificationsRequestHandler.h:518
Represents a progression-reset reward in a notification, linking the reward to the affected progressi...
Definition LootLockerNotificationsRequestHandler.h:542
Represents a progression-points reward in a notification, linking the reward to a progression and the...
Definition LootLockerNotificationsRequestHandler.h:479
Represents a full notification record for a player, including its type, priority, source,...
Definition LootLockerNotificationsRequestHandler.h:872
Definition LootLockerPlayerData.h:12
Request to mark a list of notifications as read by their identifiers.
Definition LootLockerNotificationsRequestHandler.h:945
Response from marking notifications as read, containing only base response status unless errors occur...
Definition LootLockerNotificationsRequestHandler.h:963
Base response struct — every SDK callback receives a struct that derives from this.
Definition LootLockerResponse.h:19
Definition LootLockerNotificationsRequestHandler.h:131
static const FString SteamStore
Definition LootLockerNotificationsRequestHandler.h:132
static const FString GooglePlayStore
Definition LootLockerNotificationsRequestHandler.h:134
static const FString LootLocker
Definition LootLockerNotificationsRequestHandler.h:135
static const FString AppleAppStore
Definition LootLockerNotificationsRequestHandler.h:133
Possible sources for notifications.
Definition LootLockerNotificationsRequestHandler.h:128
static const FString LootLockerAdminApi
Definition LootLockerNotificationsRequestHandler.h:140
static const FString LootLockerServerApi
Definition LootLockerNotificationsRequestHandler.h:139
static const FString LootLockerConsole
Definition LootLockerNotificationsRequestHandler.h:138
static const FString TwitchDrop
Definition LootLockerNotificationsRequestHandler.h:137
static const FString Triggers
Definition LootLockerNotificationsRequestHandler.h:129
Possible types of notifications.
Definition LootLockerNotificationsRequestHandler.h:120
static const FString PullRewardAcquired
Definition LootLockerNotificationsRequestHandler.h:121
Standard context keys to expect when source is purchasing from the Apple app store.
Definition LootLockerNotificationsRequestHandler.h:177
static const FString TransactionId
Definition LootLockerNotificationsRequestHandler.h:180
static const FString CatalogItemId
Definition LootLockerNotificationsRequestHandler.h:179
static const FString CatalogId
Definition LootLockerNotificationsRequestHandler.h:178
Standard context keys to expect when source is purchasing from the GooglePlay store.
Definition LootLockerNotificationsRequestHandler.h:186
static const FString ProductId
Definition LootLockerNotificationsRequestHandler.h:189
static const FString CatalogId
Definition LootLockerNotificationsRequestHandler.h:187
static const FString CatalogItemId
Definition LootLockerNotificationsRequestHandler.h:188
Standard context keys to expect when source is purchasing from LootLocker.
Definition LootLockerNotificationsRequestHandler.h:195
static const FString CatalogId
Definition LootLockerNotificationsRequestHandler.h:196
static const FString CatalogItemId
Definition LootLockerNotificationsRequestHandler.h:197
Standard context keys to expect when source is purchasing from the Steam store.
Definition LootLockerNotificationsRequestHandler.h:167
static const FString CatalogId
Definition LootLockerNotificationsRequestHandler.h:168
static const FString CharacterId
Definition LootLockerNotificationsRequestHandler.h:171
static const FString EntitlementId
Definition LootLockerNotificationsRequestHandler.h:170
static const FString CatalogItemId
Definition LootLockerNotificationsRequestHandler.h:169
Standard context keys to expect when source is purchasing.
Definition LootLockerNotificationsRequestHandler.h:162
Standard context keys to expect when source is triggers.
Definition LootLockerNotificationsRequestHandler.h:152
static const FString Limit
Definition LootLockerNotificationsRequestHandler.h:155
static const FString Key
Definition LootLockerNotificationsRequestHandler.h:154
static const FString Id
Definition LootLockerNotificationsRequestHandler.h:153
Standard context keys to expect when source is a Twitch Drop.
Definition LootLockerNotificationsRequestHandler.h:204
static const FString TwitchRewardId
Definition LootLockerNotificationsRequestHandler.h:205
The standard context keys to expect for different notification sources.
Definition LootLockerNotificationsRequestHandler.h:147
Set of static string definitions to use for matching in different Notification contexts.
Definition LootLockerNotificationsRequestHandler.h:115