LootLocker Unreal SDK 10.5.0
Game backend SDK for Unreal Engine
Loading...
Searching...
No Matches
LootLockerNotificationsRequestHandler.h
Go to the documentation of this file.
1// Copyright (c) 2021 LootLocker
2
3#pragma once
4
5
6#include "CoreMinimal.h"
7#include "Dom/JsonObject.h"
10#include "LootLockerNotificationsRequestHandler.generated.h"
11
12//==================================================
13// Enum Definitions
14//==================================================
15
18UENUM(BlueprintType, Category = "LootLocker")
23{
24 low = 0,
25 medium = 1,
26 high = 2,
27 emergency = 3,
28};
30
33UENUM(BlueprintType, Category = "LootLocker")
50
53UENUM(BlueprintType, Category = "LootLocker")
58{
59 none = 0,
60 null = 1,
61 reward = 2,
62 json_string = 3,
63 json_integer = 4,
64 json_decimal = 5,
65 json_bool = 6,
66 json_object = 7,
67 json_array = 8,
71 json_array_bool = 12,
73 unknown = 14,
74};
76
79UENUM(BlueprintType, Category = "LootLocker")
84{
85 group = 0,
86 currency = 1,
87 asset = 2,
90};
92
95UENUM(BlueprintType, Category = "LootLocker")
100{
101 All = 0,
102 Custom_only = 1,
103 LootLocker_only = 2,
104};
106
107//==================================================
108// Static String Definitions
109//==================================================
110
115{
119 struct LOOTLOCKERSDK_API NotificationTypes
120 {
121 static const FString PullRewardAcquired;
122 };
123
127 struct LOOTLOCKERSDK_API NotificationSources
128 {
129 static const FString Triggers;
130 struct LOOTLOCKERSDK_API Purchasing
131 {
132 static const FString SteamStore;
133 static const FString AppleAppStore;
134 static const FString GooglePlayStore;
135 static const FString LootLocker;
136 };
137 static const FString TwitchDrop;
138 static const FString LootLockerConsole;
139 static const FString LootLockerServerApi;
140 static const FString LootLockerAdminApi;
141 };
142
146 struct LOOTLOCKERSDK_API StandardContextKeys
147 {
151 struct LOOTLOCKERSDK_API Triggers
152 {
153 static const FString Id;
154 static const FString Key;
155 static const FString Limit;
156 };
157
161 struct LOOTLOCKERSDK_API Purchasing
162 {
166 struct LOOTLOCKERSDK_API SteamStore
167 {
168 static const FString CatalogId;
169 static const FString CatalogItemId;
170 static const FString EntitlementId;
171 static const FString CharacterId;
172 };
176 struct LOOTLOCKERSDK_API AppleAppStore
177 {
178 static const FString CatalogId;
179 static const FString CatalogItemId;
180 static const FString TransactionId;
181 };
185 struct LOOTLOCKERSDK_API GooglePlayStore
186 {
187 static const FString CatalogId;
188 static const FString CatalogItemId;
189 static const FString ProductId;
190 };
194 struct LOOTLOCKERSDK_API LootLocker
195 {
196 static const FString CatalogId;
197 static const FString CatalogItemId;
198 };
199 };
203 struct LOOTLOCKERSDK_API TwitchDrop
204 {
205 static const FString TwitchRewardId;
206 };
207 };
208};
209
213UCLASS(Blueprintable)
214class LOOTLOCKERSDK_API ULootLockerStaticNotificationStringBlueprintCallables : public UObject
215{
216 GENERATED_BODY()
217public:
219
223 UFUNCTION(BlueprintPure, Category = "LootLocker Methods | Static Strings | Notifications | Types")
224 static FString GetTypePullRewardAcquiredString() { return LootLockerNotificationsStaticStrings::NotificationTypes::PullRewardAcquired; };
228 UFUNCTION(BlueprintPure, Category = "LootLocker Methods | Static Strings | Notifications | Sources | Triggers")
229 static FString GetNotificationsSourceTriggersString() { return LootLockerNotificationsStaticStrings::NotificationSources::Triggers; };
233 UFUNCTION(BlueprintPure, Category = "LootLocker Methods | Static Strings | Notifications | Sources | Purchasing")
234 static FString GetNotificationsSourcePurchasingSteamStoreString() { return LootLockerNotificationsStaticStrings::NotificationSources::Purchasing::SteamStore; };
238 UFUNCTION(BlueprintPure, Category = "LootLocker Methods | Static Strings | Notifications | Sources | Purchasing")
239 static FString GetNotificationsSourcePurchasingAppleAppStoreString() { return LootLockerNotificationsStaticStrings::NotificationSources::Purchasing::AppleAppStore; };
243 UFUNCTION(BlueprintPure, Category = "LootLocker Methods | Static Strings | Notifications | Sources | Purchasing")
244 static FString GetNotificationsSourcePurchasingGooglePlayStoreString() { return LootLockerNotificationsStaticStrings::NotificationSources::Purchasing::GooglePlayStore; };
248 UFUNCTION(BlueprintPure, Category = "LootLocker Methods | Static Strings | Notifications | Sources | Purchasing")
249 static FString GetNotificationsSourcePurchasingLootLockerString() { return LootLockerNotificationsStaticStrings::NotificationSources::Purchasing::LootLocker; };
253 UFUNCTION(BlueprintPure, Category = "LootLocker Methods | Static Strings | Notifications | Sources | Twitch Drop")
254 static FString GetNotificationsSourceTwitchDropString() { return LootLockerNotificationsStaticStrings::NotificationSources::TwitchDrop; };
258 UFUNCTION(BlueprintPure, Category = "LootLocker Methods | Static Strings | Notifications | Sources | LootLocker Console")
259 static FString GetNotificationsSourceLootLockerConsoleString() { return LootLockerNotificationsStaticStrings::NotificationSources::LootLockerConsole; };
263 UFUNCTION(BlueprintPure, Category = "LootLocker Methods | Static Strings | Notifications | Sources | LootLocker Server API")
264 static FString GetNotificationsSourceLootLockerServerAPIString() { return LootLockerNotificationsStaticStrings::NotificationSources::LootLockerServerApi; };
268 UFUNCTION(BlueprintPure, Category = "LootLocker Methods | Static Strings | Notifications | Standard Context Keys | Triggers")
269 static FString GetStandardTriggersContextKeyIdString() { return LootLockerNotificationsStaticStrings::StandardContextKeys::Triggers::Id; };
273 UFUNCTION(BlueprintPure, Category = "LootLocker Methods | Static Strings | Notifications | Standard Context Keys | Triggers")
274 static FString GetStandardTriggersContextKeyKeyString() { return LootLockerNotificationsStaticStrings::StandardContextKeys::Triggers::Key; };
278 UFUNCTION(BlueprintPure, Category = "LootLocker Methods | Static Strings | Notifications | Standard Context Keys | Triggers")
279 static FString GetStandardTriggersContextKeyLimitString() { return LootLockerNotificationsStaticStrings::StandardContextKeys::Triggers::Limit; };
283 UFUNCTION(BlueprintPure, Category = "LootLocker Methods | Static Strings | Notifications | Standard Context Keys | Purchasing | SteamStore")
284 static FString GetStandardPurchasingSteamStoreContextKeyCatalogIdString() { return LootLockerNotificationsStaticStrings::StandardContextKeys::Purchasing::SteamStore::CatalogId; };
288 UFUNCTION(BlueprintPure, Category = "LootLocker Methods | Static Strings | Notifications | Standard Context Keys | Purchasing | SteamStore")
289 static FString GetStandardPurchasingSteamStoreContextKeyCatalogItemIdString() { return LootLockerNotificationsStaticStrings::StandardContextKeys::Purchasing::SteamStore::CatalogItemId; };
293 UFUNCTION(BlueprintPure, Category = "LootLocker Methods | Static Strings | Notifications | Standard Context Keys | Purchasing | SteamStore")
294 static FString GetStandardPurchasingSteamStoreContextKeyEntitlementIdString() { return LootLockerNotificationsStaticStrings::StandardContextKeys::Purchasing::SteamStore::EntitlementId; };
298 UFUNCTION(BlueprintPure, Category = "LootLocker Methods | Static Strings | Notifications | Standard Context Keys | Purchasing | SteamStore")
299 static FString GetStandardPurchasingSteamStoreContextKeyCharacterIdString() { return LootLockerNotificationsStaticStrings::StandardContextKeys::Purchasing::SteamStore::CharacterId; };
303 UFUNCTION(BlueprintPure, Category = "LootLocker Methods | Static Strings | Notifications | Standard Context Keys | Purchasing | AppleAppStore")
304 static FString GetStandardPurchasingAppleAppStoreContextKeyCatalogIdString() { return LootLockerNotificationsStaticStrings::StandardContextKeys::Purchasing::AppleAppStore::CatalogId; };
308 UFUNCTION(BlueprintPure, Category = "LootLocker Methods | Static Strings | Notifications | Standard Context Keys | Purchasing | AppleAppStore")
309 static FString GetStandardPurchasingAppleAppStoreContextKeyCatalogItemIdString() { return LootLockerNotificationsStaticStrings::StandardContextKeys::Purchasing::AppleAppStore::CatalogItemId; };
313 UFUNCTION(BlueprintPure, Category = "LootLocker Methods | Static Strings | Notifications | Standard Context Keys | Purchasing | AppleAppStore")
314 static FString GetStandardPurchasingAppleAppStoreContextKeyTransactionIdString() { return LootLockerNotificationsStaticStrings::StandardContextKeys::Purchasing::AppleAppStore::TransactionId; };
318 UFUNCTION(BlueprintPure, Category = "LootLocker Methods | Static Strings | Notifications | Standard Context Keys | Purchasing | GooglePlayStore")
319 static FString GetStandardPurchasingGooglePlayStoreContextKeyCatalogIdString() { return LootLockerNotificationsStaticStrings::StandardContextKeys::Purchasing::GooglePlayStore::CatalogId; };
323 UFUNCTION(BlueprintPure, Category = "LootLocker Methods | Static Strings | Notifications | Standard Context Keys | Purchasing | GooglePlayStore")
324 static FString GetStandardPurchasingGooglePlayStoreContextKeyCatalogItemIdString() { return LootLockerNotificationsStaticStrings::StandardContextKeys::Purchasing::GooglePlayStore::CatalogItemId; };
328 UFUNCTION(BlueprintPure, Category = "LootLocker Methods | Static Strings | Notifications | Standard Context Keys | Purchasing | GooglePlayStore")
329 static FString GetStandardPurchasingGooglePlayStoreContextKeyProductIdString() { return LootLockerNotificationsStaticStrings::StandardContextKeys::Purchasing::GooglePlayStore::ProductId; };
333 UFUNCTION(BlueprintPure, Category = "LootLocker Methods | Static Strings | Notifications | Standard Context Keys | Purchasing | LootLocker")
334 static FString GetStandardPurchasingLootLockerContextKeyCatalogIdString() { return LootLockerNotificationsStaticStrings::StandardContextKeys::Purchasing::LootLocker::CatalogId; };
338 UFUNCTION(BlueprintPure, Category = "LootLocker Methods | Static Strings | Notifications | Standard Context Keys | Purchasing | LootLocker")
339 static FString GetStandardPurchasingLootLockerContextKeyCatalogItemIdString() { return LootLockerNotificationsStaticStrings::StandardContextKeys::Purchasing::LootLocker::CatalogItemId; };
343 UFUNCTION(BlueprintPure, Category = "LootLocker Methods | Static Strings | Notifications | Standard Context Keys | Purchasing | LootLocker")
344 static FString GetStandardTwitchDropContextKeyTwitchRewardIdString() { return LootLockerNotificationsStaticStrings::StandardContextKeys::TwitchDrop::TwitchRewardId; };
345};
346
347//==================================================
348// Data Type Definitions
349//==================================================
350
357
361USTRUCT(BlueprintType)
363{
364 GENERATED_BODY()
368 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
369 FString Key = "";
373 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
374 FString Value = "";
375};
376
380USTRUCT(BlueprintType)
382{
383 GENERATED_BODY()
387 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
388 FString Name = "";
392 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
393 FString Code = "";
397 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
398 FString Amount = "";
402 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
403 FString Id = "";
404};
405
409USTRUCT(BlueprintType)
411{
412 GENERATED_BODY()
416 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
417 FString Created_at = "";
421 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
422 FString Updated_at = "";
426 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
427 FString Amount = "";
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 = "";
443};
444
448USTRUCT(BlueprintType)
450{
451 GENERATED_BODY()
455 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
456 FString Key = "";
460 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
461 FString Name = "";
465 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
466 int Amount = 0;
470 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
471 FString Id = "";
472};
473
477USTRUCT(BlueprintType)
479{
480 GENERATED_BODY()
484 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
485 FString Created_at = "";
489 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
490 FString Updated_at = "";
494 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
499 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
500 int Amount = 0;
504 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
505 FString Progression_id = "";
509 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
510 FString Reward_id = "";
511};
512
516USTRUCT(BlueprintType)
518{
519 GENERATED_BODY()
523 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
524 FString Key = "";
528 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
529 FString Name = "";
533 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
534 FString Id = "";
535};
536
540USTRUCT(BlueprintType)
542{
543 GENERATED_BODY()
547 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
548 FString Created_at = "";
552 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
553 FString Updated_at = "";
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 = "";
569};
570
574USTRUCT(BlueprintType)
576{
577 GENERATED_BODY()
581 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
582 FString Name = "";
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")
612 int Legacy_id = 0;
616 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
617 FString Id = "";
618};
619
623USTRUCT(BlueprintType)
625{
626 GENERATED_BODY()
630 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
631 FString Created_at = "";
635 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
636 FString Updated_at = "";
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")
656 int Asset_id = 0;
660 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
661 FString Reward_id = "";
665 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
666 FString Asset_ulid = "";
672 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
673 TArray<int64> Asset_instance_ids;
674};
675
679USTRUCT(BlueprintType)
681{
682 GENERATED_BODY()
686 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
691 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
696 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
701 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
706 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
708};
709
713USTRUCT(BlueprintType)
715{
716 GENERATED_BODY()
720 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
721 FString Created_at = "";
722
726 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
727 FString Name = "";
728
732 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
733 FString Description = "";
734
738 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
740
744 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
745 FString Reward_id = "";
746};
747
751USTRUCT(BlueprintType)
753{
754 GENERATED_BODY()
758 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
763 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
768 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
773 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
778 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
783 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
785};
786
790USTRUCT(BlueprintType)
792{
793 GENERATED_BODY()
797 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
802 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
803 TMap<FString, FString> ContextAsDictionary;
807 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
808 FString IdentifyingContextKey = "";
812 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
817 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
818 FString BodyAsJsonString = "";
822 TSharedPtr<FJsonValue> BodyAsJsonValue;
823
827 LOOTLOCKERSDK_API bool TryGetContentBodyAsString(FString& Output) const;
831 LOOTLOCKERSDK_API bool TryGetContentBodyAsFloat(float& Output) const;
835 LOOTLOCKERSDK_API bool TryGetContentBodyAsInteger(int& Output) const;
839 LOOTLOCKERSDK_API bool TryGetContentBodyAsBool(bool& Output) const;
843 LOOTLOCKERSDK_API bool TryGetContentBodyAsStringArray(TArray<FString>& Output) const;
847 LOOTLOCKERSDK_API bool TryGetContentBodyAsFloatArray(TArray<float>& Output) const;
851 LOOTLOCKERSDK_API bool TryGetContentBodyAsIntegerArray(TArray<int>& Output) const;
855 LOOTLOCKERSDK_API bool TryGetContentBodyAsBoolArray(TArray<bool>& Output) const;
859 LOOTLOCKERSDK_API bool TryGetRawValue(TSharedPtr<FJsonValue>& Output) const;
863 LOOTLOCKERSDK_API bool TryGetContentBodyAsJsonObject(TSharedPtr<FJsonObject>& Output) const;
867 LOOTLOCKERSDK_API bool TryGetContentBodyAsJsonArray(TArray<TSharedPtr<FJsonValue>>& Output) const;
871 LOOTLOCKERSDK_API bool TryGetContentBodyAsRewardNotification(FLootLockerNotificationContentRewardBody& Output) const;
872};
873
877USTRUCT(BlueprintType)
879{
880 GENERATED_BODY()
884 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
885 FString Created_at = "";
889 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
890 FString Expiration_date = "";
894 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
895 FString Read_at = "";
899 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
900 FString Notification_type = "";
904 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
909 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
910 FString Source = "";
914 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
919 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
924 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
925 FString Id = "";
929 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
930 FString Player_id = "";
934 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
935 bool Read = false;
939 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
940 bool Custom = false;
941};
942
943//==================================================
944// Request Definitions
945//==================================================
946
950USTRUCT(BlueprintType, Category="LootLocker")
952{
953 GENERATED_BODY()
957 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
958 TArray<FString> Notifications;
959};
960
961//==================================================
962// Response Definitions
963//==================================================
964
968USTRUCT(BlueprintType, Category = "LootLocker")
970{
971 GENERATED_BODY()
972 // Empty unless there are errors
973};
974
978USTRUCT(BlueprintType, Category = "LootLocker")
980{
981 GENERATED_BODY()
985 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
986 TArray<FLootLockerNotification> Notifications;
990 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
992
993 void PopulateConvenienceStructures();
994
1008 bool TryGetNotificationsByIdentifyingValue(const FString& IdentifyingValue, TArray<FLootLockerNotification>& OutNotifications) const;
1009
1010private:
1011 TMap<FString, TArray<FLootLockerNotificationIdentifyingValueLookupStruct>> NotificationLookupTable;
1012};
1013
1014//==================================================
1015// Delegate Definitions
1016//==================================================
1019
1027
1028
1029//==================================================
1030// API Class Definition
1031//==================================================
1032
1034UCLASS()
1035class LOOTLOCKERSDK_API ULootLockerNotificationsRequestHandler : public UObject
1036{
1037 GENERATED_BODY()
1038public:
1040
1042 static FString ListNotifications(const FLootLockerPlayerData& PlayerData, bool ShowRead, const FString& OfType, const FString& WithSource, ELootLockerCustomNotificationFiltering CustomNotificationsFilter, int PerPage, int Page, const FLootLockerListNotificationsResponseDelegate& OnComplete);
1043 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);
1044 static FString MarkNotificationsAsRead(const FLootLockerPlayerData& PlayerData, const TArray<FString>& NotificationIDs, const FLootLockerReadNotificationsResponseDelegate& OnComplete);
1046private:
1047 static FString ListNotifications(const FLootLockerPlayerData& PlayerData, const TMultiMap<FString, FString>& QueryParams, const FLootLockerListNotificationsResponseDelegate& OnComplete);
1048};
Definition LootLockerNotificationsRequestHandler.h:1036
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:1039
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:1022
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:1026
Definition LootLockerResponse.h:101
Response containing a paginated list of notifications for the player, with a lookup helper for findin...
Definition LootLockerNotificationsRequestHandler.h:980
Holds the full reward body of a notification's content, with the active reward type determined by the...
Definition LootLockerNotificationsRequestHandler.h:753
Holds the content of a notification, including context key-value pairs, body type hint,...
Definition LootLockerNotificationsRequestHandler.h:792
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:681
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:715
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:879
Definition LootLockerPlayerData.h:12
Request to mark a list of notifications as read by their identifiers.
Definition LootLockerNotificationsRequestHandler.h:952
Response from marking notifications as read, containing only base response status unless errors occur...
Definition LootLockerNotificationsRequestHandler.h:970
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