Loading...
Searching...
No Matches
AccelByte::Api Namespace Reference

Contains interface to C++ functions. More...

Classes

class  Achievement
 Provide APIs to access Achievement service. More...
class  Agreement
 Agreement API to obtain and accept legal in a namespace. More...
class  AMS
class  BaseAnalytics
 Send telemetry data securely and the user should be logged in first. More...
class  BinaryCloudSave
 CloudSave API for storing binaries. More...
class  Category
 Category API for buying things from the online store. The category has tree data structure. Each category has path, for example "/equipments/armor/legs". Items are grouped into a category. The root is equivalent to "/". More...
class  Challenge
 Interface for interacting with the AccelByte challenge service. More...
class  Chat
 Chat API for chatting between users Unlike other servers which use HTTP, Chat server uses WebSocket (RFC 6455). More...
class  CloudSave
 CloudSave API for storing records. More...
class  CloudStorage
 DEPRECATED.Cloud Storage API for storing binary data on the cloud. Each player has configurable slot(s) that controlled by admin. The configuration affects the amount of slot that owned by user and the allowed size for each slot (byte). More...
class  Configurations
class  Currency
 Currency API for getting information from Currency. More...
class  Entitlement
 Entitlement API for checking user's ownership. User can query a list of item that belongs to him/her. More...
class  Fulfillment
 Fulfillment API for user to fulfill an item to their entitlements. More...
class  GameProfile
 GameProfile API to manage user's in-game profiles (character). More...
class  GameStandardEvent
 Send game standard telemetry data securely and the user should be logged in first. More...
class  GameTelemetry
 Send telemetry data securely and the user should be logged in first. More...
class  GDPR
 GDPR Api is used for managing the deletion of user data. More...
class  Group
 Provide APIs to access Group [Management] service. More...
class  HeartBeat
class  Inventory
 Provide APIs to access Inventory service. More...
class  Item
 Item API for buying things from the online store. An item represents a single product sold in the online store. Each category has items inside it. You can get a list of items by criteria or by its ID. More...
class  Leaderboard
 Leaderboard API to obtain player's ranking in a namespace. More...
struct  FMatchmakingOptionalParams
struct  FHandleLobbyMessageData
class  Lobby
 Lobby API for chatting and party management. Unlike other servers which use HTTP, Lobby server uses WebSocket (RFC 6455). More...
class  LoginQueue
 Login Queue API for Login Ticket Management. More...
class  MatchmakingV2
class  Miscellaneous
class  Order
 Order is used to purchase something from the online store. More...
class  PredefinedEvent
 Send predefined telemetry data securely and the user should be logged in first. More...
class  PresenceBroadcastEvent
 Send presence event securely and the user should be logged in first. More...
class  Qos
 Qos to manage specific QoS (Latencies/Ping) Server(s). More...
class  QosManager
 QosManager API to manage Qos Server(s). More...
class  Reporting
 Reporting API for Reporting content. More...
class  Reward
 Reward API for getting information about the reward. More...
class  SeasonPass
 Season Pass APIs to access Season Pass service. User can obtaining season and claiming rewards. More...
class  Session
class  SessionBrowser
 SessionBrowser API to handle custom game session. More...
class  Statistic
 Statistic API to manage user's in-game profiles's statistic. More...
class  StoreDisplay
 StoreDisplayAPI its to display Items in Item Shop/Store and to configure items on the View. More...
class  TurnManager
 TurnManager API to manage Qos Server(s). More...
class  UGC
 Provide APIs to access UGC service. More...
class  User
 User management API for creating user, verifying user, and resetting password. More...
class  UserProfile
 API to create, update, and get user's profile. More...
class  Wallet
 Wallet API for buying things from the online store; a wallet can be a virtual or real currency. More...
class  Oauth2
 The API for getting OAuth2 access token. You should not use this directly; use UserAuthentication instead. Where the tokens are stored in memory for convenience. More...

Typedefs

using AchievementRef = TSharedRef<Achievement, ESPMode::ThreadSafe>
using AchievementPtr = TSharedPtr<Achievement, ESPMode::ThreadSafe>
using AchievementWPtr = TWeakPtr<Achievement, ESPMode::ThreadSafe>
using AgreementRef = TSharedRef<Agreement, ESPMode::ThreadSafe>
using AgreementPtr = TSharedPtr<Agreement, ESPMode::ThreadSafe>
using AgreementWPtr = TWeakPtr<Agreement, ESPMode::ThreadSafe>
using AMSRef = TSharedRef<AMS, ESPMode::ThreadSafe>
using AMSPtr = TSharedPtr<AMS, ESPMode::ThreadSafe>
using AMSWPtr = TWeakPtr<AMS, ESPMode::ThreadSafe>
using BinaryCloudSaveRef = TSharedRef<BinaryCloudSave, ESPMode::ThreadSafe>
using BinaryCloudSavePtr = TSharedPtr<BinaryCloudSave, ESPMode::ThreadSafe>
using BinaryCloudSaveWPtr = TWeakPtr<BinaryCloudSave, ESPMode::ThreadSafe>
using CategoryRef = TSharedRef<Category, ESPMode::ThreadSafe>
using CategoryPtr = TSharedPtr<Category, ESPMode::ThreadSafe>
using CategoryWPtr = TWeakPtr<Category, ESPMode::ThreadSafe>
using ChallengeRef = TSharedRef<Challenge, ESPMode::ThreadSafe>
using ChallengePtr = TSharedPtr<Challenge, ESPMode::ThreadSafe>
using ChallengeWPtr = TWeakPtr<Challenge, ESPMode::ThreadSafe>
using ChatRef = TSharedRef<Chat, ESPMode::ThreadSafe>
using ChatPtr = TSharedPtr<Chat, ESPMode::ThreadSafe>
using ChatWPtr = TWeakPtr<Chat, ESPMode::ThreadSafe>
using CloudSaveRef = TSharedRef<CloudSave, ESPMode::ThreadSafe>
using CloudSavePtr = TSharedPtr<CloudSave, ESPMode::ThreadSafe>
using CloudSaveWPtr = TWeakPtr<CloudSave, ESPMode::ThreadSafe>
using CloudStorageRef = TSharedRef<CloudStorage, ESPMode::ThreadSafe>
using CloudStoragePtr = TSharedPtr<CloudStorage, ESPMode::ThreadSafe>
using CloudStorageWPtr = TWeakPtr<CloudStorage, ESPMode::ThreadSafe>
using ConfigurationsRef = TSharedRef<Configurations, ESPMode::ThreadSafe>
using ConfigurationsPtr = TSharedPtr<Configurations, ESPMode::ThreadSafe>
using ConfigurationsWPtr = TWeakPtr<Configurations, ESPMode::ThreadSafe>
using CurrencyRef = TSharedRef<Currency, ESPMode::ThreadSafe>
using CurrencyPtr = TSharedPtr<Currency, ESPMode::ThreadSafe>
using CurrencyWPtr = TWeakPtr<Currency, ESPMode::ThreadSafe>
using EntitlementRef = TSharedRef<Entitlement, ESPMode::ThreadSafe>
using EntitlementPtr = TSharedPtr<Entitlement, ESPMode::ThreadSafe>
using EntitlementWPtr = TWeakPtr<Entitlement, ESPMode::ThreadSafe>
using FulfillmentRef = TSharedRef<Fulfillment, ESPMode::ThreadSafe>
using FulfillmentPtr = TSharedPtr<Fulfillment, ESPMode::ThreadSafe>
using FulfillmentWPtr = TWeakPtr<Fulfillment, ESPMode::ThreadSafe>
using GameProfileRef = TSharedRef<GameProfile, ESPMode::ThreadSafe>
using GameProfilePtr = TSharedPtr<GameProfile, ESPMode::ThreadSafe>
using GameProfileWPtr = TWeakPtr<GameProfile, ESPMode::ThreadSafe>
using GameStandardEventRef = TSharedRef<GameStandardEvent, ESPMode::ThreadSafe>
using GameStandardEventPtr = TSharedPtr<GameStandardEvent, ESPMode::ThreadSafe>
using GameStandardEventWPtr = TWeakPtr<GameStandardEvent, ESPMode::ThreadSafe>
using TelemetryBodyPtr = TSharedPtr< FAccelByteModelsTelemetryBody, ESPMode::ThreadSafe>
using GameTelemetryRef = TSharedRef<GameTelemetry, ESPMode::ThreadSafe>
using GameTelemetryPtr = TSharedPtr<GameTelemetry, ESPMode::ThreadSafe>
using GameTelemetryWPtr = TWeakPtr<GameTelemetry, ESPMode::ThreadSafe>
using GDPRRef = TSharedRef<GDPR, ESPMode::ThreadSafe>
using GDPRPtr = TSharedPtr<GDPR, ESPMode::ThreadSafe>
using GDPRWPtr = TWeakPtr<GDPR, ESPMode::ThreadSafe>
using GroupRef = TSharedRef<Group, ESPMode::ThreadSafe>
using GroupPtr = TSharedPtr<Group, ESPMode::ThreadSafe>
using GroupWPtr = TWeakPtr<Group, ESPMode::ThreadSafe>
using InventoryRef = TSharedRef<Inventory, ESPMode::ThreadSafe>
using InventoryPtr = TSharedPtr<Inventory, ESPMode::ThreadSafe>
using InventoryWPtr = TWeakPtr<Inventory, ESPMode::ThreadSafe>
using ItemRef = TSharedRef<Item, ESPMode::ThreadSafe>
using ItemPtr = TSharedPtr<Item, ESPMode::ThreadSafe>
using ItemWPtr = TWeakPtr<Item, ESPMode::ThreadSafe>
using LeaderboardRef = TSharedRef<Leaderboard, ESPMode::ThreadSafe>
using LeaderboardPtr = TSharedPtr<Leaderboard, ESPMode::ThreadSafe>
using LeaderboardWPtr = TWeakPtr<Leaderboard, ESPMode::ThreadSafe>
using LobbyRef = TSharedRef<Lobby, ESPMode::ThreadSafe>
using LobbyPtr = TSharedPtr<Lobby, ESPMode::ThreadSafe>
using LobbyWPtr = TWeakPtr<Lobby, ESPMode::ThreadSafe>
using LoginQueueRef = TSharedRef<LoginQueue, ESPMode::ThreadSafe>
using LoginQueuePtr = TSharedPtr<LoginQueue, ESPMode::ThreadSafe>
using LoginQueueWPtr = TWeakPtr<LoginQueue, ESPMode::ThreadSafe>
using MatchmakingV2Ref = TSharedRef<MatchmakingV2, ESPMode::ThreadSafe>
using MatchmakingV2Ptr = TSharedPtr<MatchmakingV2, ESPMode::ThreadSafe>
using MatchmakingV2WPtr = TWeakPtr<MatchmakingV2, ESPMode::ThreadSafe>
using MiscellaneousRef = TSharedRef<Miscellaneous, ESPMode::ThreadSafe>
using MiscellaneousPtr = TSharedPtr<Miscellaneous, ESPMode::ThreadSafe>
using MiscellaneousWPtr = TWeakPtr<Miscellaneous, ESPMode::ThreadSafe>
using OrderRef = TSharedRef<Order, ESPMode::ThreadSafe>
using OrderPtr = TSharedPtr<Order, ESPMode::ThreadSafe>
using OrderWPtr = TWeakPtr<Order, ESPMode::ThreadSafe>
using PredefinedEventRef = TSharedRef<PredefinedEvent, ESPMode::ThreadSafe>
using PredefinedEventPtr = TSharedPtr<PredefinedEvent, ESPMode::ThreadSafe>
using PredefinedEventWPtr = TWeakPtr<PredefinedEvent, ESPMode::ThreadSafe>
using PresenceBroadcastEventRef = TSharedRef<PresenceBroadcastEvent, ESPMode::ThreadSafe>
using PresenceBroadcastEventPtr = TSharedPtr<PresenceBroadcastEvent, ESPMode::ThreadSafe>
using PresenceBroadcastEventWPtr = TWeakPtr<PresenceBroadcastEvent, ESPMode::ThreadSafe>
using QosRef = TSharedRef<Qos, ESPMode::ThreadSafe>
using QosPtr = TSharedPtr<Qos, ESPMode::ThreadSafe>
using QosWPtr = TWeakPtr<Qos, ESPMode::ThreadSafe>
using QosManagerRef = TSharedRef<QosManager, ESPMode::ThreadSafe>
using QosManagerPtr = TSharedPtr<QosManager, ESPMode::ThreadSafe>
using QosManagerWPtr = TWeakPtr<QosManager, ESPMode::ThreadSafe>
using ReportingRef = TSharedRef<Reporting, ESPMode::ThreadSafe>
using ReportingPtr = TSharedPtr<Reporting, ESPMode::ThreadSafe>
using ReportingWPtr = TWeakPtr<Reporting, ESPMode::ThreadSafe>
using RewardRef = TSharedRef<Reward, ESPMode::ThreadSafe>
using RewardPtr = TSharedPtr<Reward, ESPMode::ThreadSafe>
using RewardWPtr = TWeakPtr<Reward, ESPMode::ThreadSafe>
using SeasonPassRef = TSharedRef<SeasonPass, ESPMode::ThreadSafe>
using SeasonPassPtr = TSharedPtr<SeasonPass, ESPMode::ThreadSafe>
using SeasonPassWPtr = TWeakPtr<SeasonPass, ESPMode::ThreadSafe>
using SessionRef = TSharedRef<Session, ESPMode::ThreadSafe>
using SessionPtr = TSharedPtr<Session, ESPMode::ThreadSafe>
using SessionWPtr = TWeakPtr<Session, ESPMode::ThreadSafe>
using SessionBrowserRef = TSharedRef<SessionBrowser, ESPMode::ThreadSafe>
using SessionBrowserPtr = TSharedPtr<SessionBrowser, ESPMode::ThreadSafe>
using SessionBrowserWPtr = TWeakPtr<SessionBrowser, ESPMode::ThreadSafe>
using StatisticRef = TSharedRef<Statistic, ESPMode::ThreadSafe>
using StatisticPtr = TSharedPtr<Statistic, ESPMode::ThreadSafe>
using StatisticWPtr = TWeakPtr<Statistic, ESPMode::ThreadSafe>
using StoreDisplayRef = TSharedRef<StoreDisplay, ESPMode::ThreadSafe>
using StoreDisplayPtr = TSharedPtr<StoreDisplay, ESPMode::ThreadSafe>
using StoreDisplayWPtr = TWeakPtr<StoreDisplay, ESPMode::ThreadSafe>
using TurnManagerRef = TSharedRef<TurnManager, ESPMode::ThreadSafe>
using TurnManagerPtr = TSharedPtr<TurnManager, ESPMode::ThreadSafe>
using TurnManagerWPtr = TWeakPtr<TurnManager, ESPMode::ThreadSafe>
using UGCRef = TSharedRef<UGC, ESPMode::ThreadSafe>
using UGCPtr = TSharedPtr<UGC, ESPMode::ThreadSafe>
using UGCWPtr = TWeakPtr<UGC, ESPMode::ThreadSafe>
using UserRef = TSharedRef<User, ESPMode::ThreadSafe>
using UserPtr = TSharedPtr<User, ESPMode::ThreadSafe>
using UserWPtr = TWeakPtr<User, ESPMode::ThreadSafe>
using UserProfileRef = TSharedRef<UserProfile, ESPMode::ThreadSafe>
using UserProfilePtr = TSharedPtr<UserProfile, ESPMode::ThreadSafe>
using UserProfileWPtr = TWeakPtr<UserProfile, ESPMode::ThreadSafe>
using WalletRef = TSharedRef<Wallet, ESPMode::ThreadSafe>
using WalletPtr = TSharedPtr<Wallet, ESPMode::ThreadSafe>
using WalletWPtr = TWeakPtr<Wallet, ESPMode::ThreadSafe>

Enumerations

enum  HandleType : uint8 {
  Invalid , Connect , Disconnect , SendChatResponse ,
  ReadChatResponse , CreateTopicResponse , QueryTopicResponse , QueryTopicByIdResponse ,
  QueryPersonalTopicResponse , QueryGroupTopicResponse , QueryPublicTopicResponse , QueryChatResponse ,
  UpdateTopicResponse , DeleteTopicResponse , AddUserToTopicResponse , RemoveUserFromTopicResponse ,
  JoinTopicResponse , QuitTopicResponse , DeleteSystemMessagesResponse , UpdateSystemMessagesResponse ,
  QuerySystemMessageResponse , GetSystemMessageStatsResponse , RefreshTokenResponse , BlockUserResponse ,
  UnblockUserResponse , GetUserChatConfigurationResponse , SetUserChatConfigurationResponse , ChatNotif ,
  ReadChatNotif , RemoveFromTopicNotif , AddToTopicNotif , DeleteTopicNotif ,
  UpdateTopicNotif , SystemMessageNotif , UserMutedNotif , UserUnmutedNotif ,
  UserBanNotif , UserUnbanNotif
}
enum  Response : uint8 {
  Invalid_Response , PartyInfo , PartyCreate , PartyLeave ,
  PartyInvite , PartyJoin , PartyReject , PartyKick ,
  PartyGenerateCode , PartyGetCode , PartyDeleteCode , PartyJoinViaCode ,
  PartyPromoteLeader , PartySendNotif , PersonalChat , PartyChat ,
  JoinChannelChat , ChannelChat , SetUserPresence , GetAllFriendsStatus ,
  MatchmakingStart , MatchmakingCancel , ReadyConsent , RejectConsent ,
  CreateDS , RequestFriends , RequestFriendsByPublicId , Unfriend ,
  ListOutgoingFriends , ListOutgoingFriendsWithTime , CancelFriends , ListIncomingFriends ,
  ListIncomingFriendsWithTime , AcceptFriends , RejectFriends , LoadFriendList ,
  GetFriendshipStatus , BlockPlayer , UnblockPlayer , SetSessionAttribute ,
  GetSessionAttribute , GetAllSessionAttribute , RefreshToken , ChangeUserRegion ,
  MAX_Response
}
enum  Notif : uint8 {
  Invalid_Notif , ConnectedNotif , DisconnectNotif , PartyMemberLeaveNotif ,
  PartyInviteNotif , PartyGetInvitedNotif , PartyJoinNotif , PartyRejectNotif ,
  PartyKickNotif , PartyDataUpdateNotif , PartyMemberConnectNotif , PartyMemberDisconnectNotif ,
  PartyNotif , PersonalChatNotif , PartyChatNotif , ChannelChatNotif ,
  FriendStatusNotif , MessageNotif , UserBannedNotification , UserUnbannedNotification ,
  MatchmakingNotif , ReadyConsentNotif , RejectConsentNotif , RematchmakingNotif ,
  DsNotif , AcceptFriendsNotif , RequestFriendsNotif , UnfriendNotif ,
  CancelFriendsNotif , RejectFriendsNotif , BlockPlayerNotif , UnblockPlayerNotif ,
  SignalingP2PNotif , ErrorNotif , MAX_Notif
}

Functions

template<typename FSuccessModel, typename FOnSuccess, typename FOnError>
void HandleSuccessErrorResponse (FOnError const &OnError, TSharedPtr< FJsonObject > const &MessageAsJsonObj, TMap< FString, FOnSuccess > &IdResponseMap)
 templated callback handler.
template<typename DataStruct, typename ResponseCallbackType, typename ErrorCallbackType>
void HandleResponse (FString const &MessageType, ResponseCallbackType const &ResponseCallback, ErrorCallbackType const &ErrorCallback, FString const &ParsedJsonString, FString const &ReceivedMessageType, int lobbyResponseCode, TMap< FString, FString > const &LobbyErrorMessages)
template<typename DataStruct, typename ResponseCallbackType>
void HandleNotif (FString const &MessageType, ResponseCallbackType const &ResponseCallback, FString const &ParsedJsonString, FString const &ReceivedMessageType)
template<typename PayloadType>
bool MessageNotifJsonDeserialize (FString const &Payload, PayloadType &OutResult)
template<typename PayloadType, typename CallbackType>
void DispatchV2JsonNotif (FString const &Payload, CallbackType const &ResponseCallback)
template<typename PayloadType, typename CallbackType>
void DispatchMulticastV2JsonNotif (FString const &Payload, CallbackType const &ResponseCallback)

Detailed Description

Contains interface to C++ functions.

Function Documentation

◆ HandleNotif()

template<typename DataStruct, typename ResponseCallbackType>
void AccelByte::Api::HandleNotif ( FString const & MessageType,
ResponseCallbackType const & ResponseCallback,
FString const & ParsedJsonString,
FString const & ReceivedMessageType )

Default Notif handler as templated function (compile time checked)

See also
HandleResponse

◆ HandleResponse()

template<typename DataStruct, typename ResponseCallbackType, typename ErrorCallbackType>
void AccelByte::Api::HandleResponse ( FString const & MessageType,
ResponseCallbackType const & ResponseCallback,
ErrorCallbackType const & ErrorCallback,
FString const & ParsedJsonString,
FString const & ReceivedMessageType,
int lobbyResponseCode,
TMap< FString, FString > const & LobbyErrorMessages )

Default Response handler as templated function (compile time checked)

See also
HandleNotif

◆ HandleSuccessErrorResponse()

template<typename FSuccessModel, typename FOnSuccess, typename FOnError>
void AccelByte::Api::HandleSuccessErrorResponse ( FOnError const & OnError,
TSharedPtr< FJsonObject > const & MessageAsJsonObj,
TMap< FString, FOnSuccess > & IdResponseMap )

templated callback handler.

Parameters
OnErrorFailure callback.
MessageAsJsonObjresponse message as Json object.
[in,out]IdResponseMapmap containing cached id message and it's respective success delegate.