LootLocker Unreal SDK 10.4.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 = "";
667};
668
672USTRUCT(BlueprintType)
674{
675 GENERATED_BODY()
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")
701};
702
706USTRUCT(BlueprintType)
708{
709 GENERATED_BODY()
713 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
714 FString Created_at = "";
715
719 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
720 FString Name = "";
721
725 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
726 FString Description = "";
727
731 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
733
737 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
738 FString Reward_id = "";
739};
740
744USTRUCT(BlueprintType)
746{
747 GENERATED_BODY()
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")
778};
779
783USTRUCT(BlueprintType)
785{
786 GENERATED_BODY()
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;
816
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;
864 LOOTLOCKERSDK_API bool TryGetContentBodyAsRewardNotification(FLootLockerNotificationContentRewardBody& Output) const;
865};
866
870USTRUCT(BlueprintType)
872{
873 GENERATED_BODY()
877 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
878 FString Created_at = "";
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")
903 FString Source = "";
907 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
912 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
917 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
918 FString Id = "";
922 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
923 FString Player_id = "";
927 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
928 bool Read = false;
932 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
933 bool Custom = false;
934};
935
936//==================================================
937// Request Definitions
938//==================================================
939
943USTRUCT(BlueprintType, Category="LootLocker")
945{
946 GENERATED_BODY()
950 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
951 TArray<FString> Notifications;
952};
953
954//==================================================
955// Response Definitions
956//==================================================
957
961USTRUCT(BlueprintType, Category = "LootLocker")
963{
964 GENERATED_BODY()
965 // Empty unless there are errors
966};
967
971USTRUCT(BlueprintType, Category = "LootLocker")
973{
974 GENERATED_BODY()
978 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
979 TArray<FLootLockerNotification> Notifications;
983 UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = "LootLocker")
985
986 void PopulateConvenienceStructures();
987
1001 bool TryGetNotificationsByIdentifyingValue(const FString& IdentifyingValue, TArray<FLootLockerNotification>& OutNotifications) const;
1002
1003private:
1004 TMap<FString, TArray<FLootLockerNotificationIdentifyingValueLookupStruct>> NotificationLookupTable;
1005};
1006
1007//==================================================
1008// Delegate Definitions
1009//==================================================
1012
1020
1021
1022//==================================================
1023// API Class Definition
1024//==================================================
1025
1027UCLASS()
1028class LOOTLOCKERSDK_API ULootLockerNotificationsRequestHandler : public UObject
1029{
1030 GENERATED_BODY()
1031public:
1033
1035 static FString ListNotifications(const FLootLockerPlayerData& PlayerData, bool ShowRead, const FString& OfType, const FString& WithSource, ELootLockerCustomNotificationFiltering CustomNotificationsFilter, int PerPage, int Page, const FLootLockerListNotificationsResponseDelegate& OnComplete);
1036 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);
1037 static FString MarkNotificationsAsRead(const FLootLockerPlayerData& PlayerData, const TArray<FString>& NotificationIDs, const FLootLockerReadNotificationsResponseDelegate& OnComplete);
1039private:
1040 static FString ListNotifications(const FLootLockerPlayerData& PlayerData, const TMultiMap<FString, FString>& QueryParams, const FLootLockerListNotificationsResponseDelegate& OnComplete);
1041};
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
Definition LootLockerResponse.h:101
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