Loading...
Searching...
No Matches
FOnlineGroupsAccelByte Class Reference

#include <OnlineGroupsInterfaceAccelByte.h>

Inheritance diagram for FOnlineGroupsAccelByte:

Public Member Functions

virtual void CreateGroup (const FUniqueNetId &UserIdCreatingGroup, const FAccelByteGroupsInfo &InGroupInfo, const FOnGroupsRequestCompleted &OnCompleted)
virtual void FindGroups (const FUniqueNetId &SearchingUserId, const FAccelByteModelsGetGroupListRequest &RequestedContent, const FOnGroupsRequestCompleted &OnCompleted)
virtual FAccelByteModelsGetGroupListResponse GetCachedFindGroupsRoster ()
virtual FAccelByteModelsGetGroupListResponse GetCachedFindGroupsByGroupIds ()
virtual void FindGroupsByGroupIds (const FUniqueNetId &SearchingUserId, const TArray< FString > GroupIds, const FOnGroupsRequestCompleted &OnCompleted)
virtual void QueryGroupInfo (const FUniqueNetId &CurrentUserId, const FAccelByteGroupsInfo &InGroupInfo, const FOnGroupsRequestCompleted &OnCompleted)
virtual FAccelByteGroupsInfoPtr GetCachedGroupInfo ()
virtual void SetCachedGroupInfo (const FAccelByteGroupsInfoRef &InGroupInfo)
virtual void DeleteCachedGroupInfo ()
virtual void JoinGroup (const FUniqueNetId &UserIdJoiningGroup, const FAccelByteGroupsInfo &InGroupInfo, const FOnGroupsRequestCompleted &OnCompleted)
virtual void LeaveGroup (const FUniqueNetId &UserIdLeavingGroup, const FAccelByteGroupsInfo &InGroupInfo, const FOnGroupsRequestCompleted &OnCompleted)
virtual void CancelRequest (const FUniqueNetId &UserIdCancelingRequest, const FAccelByteGroupsInfo &InGroupInfo, const FOnGroupsRequestCompleted &OnCompleted)
virtual void AcceptInvite (const FUniqueNetId &UserIdAcceptedIntoGroup, const FAccelByteGroupsInfo &InGroupInfo, const FOnGroupsRequestCompleted &OnCompleted)
virtual void DeclineInvite (const FUniqueNetId &UserIdToDecline, const FAccelByteGroupsInfo &InGroupInfo, const FOnGroupsRequestCompleted &OnCompleted)
virtual void QueryGroupRoster (const FUniqueNetId &RequestingUserId, const FAccelByteGroupsInfo &InGroupInfo, const FAccelByteModelsGetGroupMembersListByGroupIdRequest &RequestedContent, const FOnGroupsRequestCompleted &OnCompleted)
virtual FAccelByteModelsGetGroupMemberListResponse GetCachedGroupRoster ()
virtual void GetCachedUserMembership (TArray< FAccelByteModelsGroupMember > &GroupRoster)
virtual FAccelByteModelsGetMemberRequestsListResponse GetCachedInvitations ()
virtual void CancelInvite (const FUniqueNetId &AdminUserId, const FString &UserIdToCancel, const FAccelByteGroupsInfo &InGroupInfo, const FOnGroupsRequestCompleted &OnCompleted)
virtual void UpdateGroupInfo (const int32 &GroupAdmin, const FUniqueNetId &AdminUserId, const FAccelByteGroupsInfo &InGroupInfo, const FAccelByteModelsGroupUpdatable &RequestContent, const bool CompletelyReplace, const FOnGroupsRequestCompleted &OnCompleted)
virtual void AcceptUser (const int32 AdminLocalUserNum, const FUniqueNetId &UserIdToAccept, const FAccelByteGroupsInfo &InGroupInfo, const FOnGroupsRequestCompleted &OnCompleted)
virtual void DeclineUser (const int32 AdminLocalUserNum, const FUniqueNetId &UserIdToDecline, const FAccelByteGroupsInfo &InGroupInfo, const FOnGroupsRequestCompleted &OnCompleted)
virtual void InviteUser (const FUniqueNetId &InviterUserId, const FUniqueNetId &InvitedUserId, const FAccelByteGroupsInfo &InGroupInfo, const FOnGroupsRequestCompleted &OnCompleted)
virtual void RemoveUser (const int32 AdminLocalUserNum, const FUniqueNetId &MemberUserIdToKick, const FAccelByteGroupsInfo &InGroupInfo, const FOnGroupsRequestCompleted &OnCompleted)
virtual void PromoteUser (const int32 AdminLocalUserNum, const FUniqueNetId &MemberUserIdToPromote, const FAccelByteGroupsInfo &InGroupInfo, const FString &MemberRoleId, const FOnGroupsRequestCompleted &OnCompleted)
virtual void DemoteUser (const int32 AdminLocalUserNum, const FUniqueNetId &MemberUserIdToDemote, const FAccelByteGroupsInfo &InGroupInfo, const FString &MemberRoleId, const FOnGroupsRequestCompleted &OnCompleted)
virtual void QueryGroupInvites (const FUniqueNetId &ContextUserId, const FAccelByteModelsLimitOffsetRequest &AccelByteModelsLimitOffsetRequest, const FOnGroupsRequestCompleted &OnCompleted)
virtual FAccelByteModelsGetMemberRequestsListResponse GetCachedGroupInvites ()
virtual void QueryGroupRequests (const FUniqueNetId &ContextUserId, const FAccelByteModelsLimitOffsetRequest &AccelByteModelsLimitOffsetRequest, const FAccelByteGroupsInfo &InGroupInfo, const FOnGroupsRequestCompleted &OnCompleted)
virtual FAccelByteModelsGetMemberRequestsListResponse GetCachedGroupRequests ()
virtual int QueryConfigHeadcount ()
virtual void DeleteGroup (const int32 AdminLocalUserNum, const FAccelByteGroupsInfo &InGroupInfo, const FOnGroupsRequestCompleted &OnCompleted)
virtual const FString & GetNamespace () const override
virtual void UpdateGroupCustomAttributes (const int32 &AdminLocalUserNum, const FUniqueNetId &InAdminUserId, const FAccelByteGroupsInfo &InGroupInfo, const FAccelByteModelsUpdateGroupCustomAttributesRequest &RequestContent, const FOnGroupsRequestCompleted &OnCompleted)
virtual void UpdateGroupCustomRule (const int32 &AdminLocalUserNum, const FUniqueNetId &InAdminUserId, const FAccelByteGroupsInfo &InGroupInfo, const FAccelByteModelsUpdateCustomRulesRequest &RequestContent, const FOnGroupsRequestCompleted &OnCompleted)
virtual void UpdatePredefinedRule (const int32 &AdminLocalUserNum, const FUniqueNetId &AdminUserId, const FAccelByteGroupsInfo &InGroupInfo, const EAccelByteAllowedAction &InAllowedAction, const FAccelByteModelsUpdateGroupPredefinedRuleRequest &RequestContent, const FOnGroupsRequestCompleted &OnCompleted)
virtual void DeletePredefinedRule (const int32 &AdminLocalUserNum, const FAccelByteGroupsInfo &InGroupInfo, const EAccelByteAllowedAction &AllowedAction, const FOnGroupsRequestCompleted &OnCompleted)
virtual void CreateGroup (const FUniqueNetId &ContextUserId, const FGroupDisplayInfo &InGroupInfo, const FOnGroupsRequestCompleted &OnCompleted) override
virtual void FindGroups (const FUniqueNetId &ContextUserId, const FGroupSearchOptions &SearchOptions, const FOnFindGroupsCompleted &OnCompleted) override
virtual void QueryGroupInfo (const FUniqueNetId &ContextUserId, const FUniqueNetId &GroupId, const FOnGroupsRequestCompleted &OnCompleted) override
virtual void QueryGroupNameExist (const FUniqueNetId &ContextUserId, const FString &GroupName, const FOnGroupsRequestCompleted &OnCompleted) override
virtual TSharedPtr< const IGroupInfo > GetCachedGroupInfo (const FUniqueNetId &ContextUserId, const FUniqueNetId &GroupId) override
virtual void JoinGroup (const FUniqueNetId &ContextUserId, const FUniqueNetId &GroupId, const FOnGroupsRequestCompleted &OnCompleted) override
virtual void LeaveGroup (const FUniqueNetId &ContextUserId, const FUniqueNetId &GroupId, const FOnGroupsRequestCompleted &OnCompleted) override
virtual void CancelRequest (const FUniqueNetId &ContextUserId, const FUniqueNetId &GroupId, const FOnGroupsRequestCompleted &OnCompleted) override
virtual void AcceptInvite (const FUniqueNetId &ContextUserId, const FUniqueNetId &GroupId, const FOnGroupsRequestCompleted &OnCompleted) override
virtual void DeclineInvite (const FUniqueNetId &ContextUserId, const FUniqueNetId &GroupId, const FOnGroupsRequestCompleted &OnCompleted) override
virtual TSharedPtr< const IGroupRoster > GetCachedGroupRoster (const FUniqueNetId &ContextUserId, const FUniqueNetId &GroupId) override
virtual void QueryGroupRoster (const FUniqueNetId &ContextUserId, const FUniqueNetId &GroupId, const FOnGroupsRequestCompleted &OnCompleted) override
virtual void QueryUserMembership (const FUniqueNetId &ContextUserId, const FUniqueNetId &UserId, const FOnGroupsRequestCompleted &OnCompleted) override
virtual TSharedPtr< const IUserMembership > GetCachedUserMembership (const FUniqueNetId &ContextUserId, const FUniqueNetId &UserId) override
virtual void QueryOutgoingInvitations (const FUniqueNetId &ContextUserId, const FUniqueNetId &UserId, const FOnGroupsRequestCompleted &OnCompleted) override
virtual TSharedPtr< const IApplications > GetCachedApplications (const FUniqueNetId &ContextUserId, const FUniqueNetId &UserId) override
virtual TSharedPtr< const IInvitations > GetCachedInvitations (const FUniqueNetId &ContextUserId, const FUniqueNetId &UserId) override
virtual void CancelInvite (const FUniqueNetId &ContextUserId, const FUniqueNetId &GroupId, const FUniqueNetId &UserId, const FOnGroupsRequestCompleted &OnCompleted) override
virtual void UpdateGroupInfo (const FUniqueNetId &ContextUserId, const FUniqueNetId &GroupId, const FGroupDisplayInfo &GroupInfo, const FOnGroupsRequestCompleted &OnCompleted) override
virtual void AcceptUser (const FUniqueNetId &ContextUserId, const FUniqueNetId &GroupId, const FUniqueNetId &UserId, const FOnGroupsRequestCompleted &OnCompleted) override
virtual void DeclineUser (const FUniqueNetId &ContextUserId, const FUniqueNetId &GroupId, const FUniqueNetId &UserId, const FOnGroupsRequestCompleted &OnCompleted) override
virtual void InviteUser (const FUniqueNetId &ContextUserId, const FUniqueNetId &GroupId, const FUniqueNetId &UserId, bool bAllowBlocked, const FOnGroupsRequestCompleted &OnCompleted) override
virtual void InviteUser (const FUniqueNetId &ContextUserId, const FUniqueNetId &GroupId, const FUniqueNetId &UserId, const FOnGroupsRequestCompleted &OnCompleted) override
virtual void RemoveUser (const FUniqueNetId &ContextUserId, const FUniqueNetId &GroupId, const FUniqueNetId &UserId, const FOnGroupsRequestCompleted &OnCompleted) override
virtual void PromoteUser (const FUniqueNetId &ContextUserId, const FUniqueNetId &GroupId, const FUniqueNetId &UserId, const FOnGroupsRequestCompleted &OnCompleted) override
virtual void DemoteUser (const FUniqueNetId &ContextUserId, const FUniqueNetId &GroupId, const FUniqueNetId &UserId, const FOnGroupsRequestCompleted &OnCompleted) override
virtual void QueryGroupInvites (const FUniqueNetId &ContextUserId, const FUniqueNetId &GroupId, const FOnGroupsRequestCompleted &OnCompleted) override
virtual TSharedPtr< const IGroupInvites > GetCachedGroupInvites (const FUniqueNetId &ContextUserId, const FUniqueNetId &GroupId) override
virtual void QueryGroupRequests (const FUniqueNetId &ContextUserId, const FUniqueNetId &GroupId, const FOnGroupsRequestCompleted &OnCompleted) override
virtual TSharedPtr< const IGroupRequests > GetCachedGroupRequests (const FUniqueNetId &ContextUserId, const FUniqueNetId &GroupId) override
virtual void QueryConfigHeadcount (const FUniqueNetId &ContextUserId, const FOnGroupsRequestCompleted &OnCompleted) override
virtual void DeleteGroup (const FUniqueNetId &ContextUserId, const FUniqueNetId &GroupId, const FOnGroupsRequestCompleted &OnCompleted) override
virtual void QueryOutgoingApplications (const FUniqueNetId &ContextUserId, const FUniqueNetId &UserId, const FOnGroupsRequestCompleted &OnCompleted) override
virtual void QueryIncomingInvitations (const FUniqueNetId &ContextUserId, const FUniqueNetId &UserId, const FOnGroupsRequestCompleted &OnCompleted) override
virtual void BlockUser (const FUniqueNetId &ContextUserId, const FUniqueNetId &GroupId, const FUniqueNetId &UserId, const FOnGroupsRequestCompleted &OnCompleted) override
virtual void UnblockUser (const FUniqueNetId &ContextUserId, const FUniqueNetId &GroupId, const FUniqueNetId &UserId, const FOnGroupsRequestCompleted &OnCompleted) override
virtual void QueryGroupBlacklist (const FUniqueNetId &ContextUserId, const FUniqueNetId &GroupId, const FOnGroupsRequestCompleted &OnCompleted) override
virtual TSharedPtr< const IGroupBlacklist > GetCachedGroupBlacklist (const FUniqueNetId &ContextUserId, const FUniqueNetId &GroupId) override
virtual void QueryIncomingApplications (const FUniqueNetId &ContextUserId, const FUniqueNetId &UserId, const FOnGroupsRequestCompleted &OnCompleted) override
virtual void QueryConfigMembership (const FUniqueNetId &ContextUserId, const FOnGroupsRequestCompleted &OnCompleted) override
virtual TSharedPtr< const FGroupConfigEntryInt > GetCachedConfigInt (const FString &Key) override
virtual TSharedPtr< const FGroupConfigEntryBool > GetCachedConfigBool (const FString &Key) override
virtual void TransferGroup (const FUniqueNetId &ContextUserId, const FUniqueNetId &GroupId, const FUniqueNetId &NewOwnerId, const FOnGroupsRequestCompleted &OnCompleted) override
virtual void SetNamespace (const FString &Ns) override
bool IsGroupValid () const
bool VerifyGroupInfo (const FAccelByteGroupsInfo &InGroupInfo)
void SetCachedGroupResults (FAccelByteModelsGetGroupListResponse &AccelByteModelsGetGroupListResponse)
void SetCachedGroupListByGroupIdsResults (FAccelByteModelsGetGroupListResponse &AccelByteModelsGetGroupListResponse)
void SetCachedMembersByGroupIdResults (FAccelByteModelsGetGroupMemberListResponse &AccelByteModelsGetGroupMemberListResponse)
void SetCachedGroupInviteResults (FAccelByteModelsGetMemberRequestsListResponse &AccelByteModelsGetMemberRequestsListResponse)
void SetCachedGroupRequests (FAccelByteModelsGetMemberRequestsListResponse &AccelByteModelsGetMemberRequestsListResponse)
void AddCachedGroupMember (const FString &RoleId, const FString &UserId)
void RemoveCachedMember (FString &UserId)
void PromoteCachedMember (FString &UserId, TArray< FString > &NewMemberRoleIds)
void RemoveCachedInvites (FString &UserIdToRemove)
void RemoveCachedRequests (FString &UserIdToRemove)
void RemoveCachedPredefinedRule (EAccelByteAllowedAction &AllowedAction)

Static Public Member Functions

static bool GetFromSubsystem (const IOnlineSubsystem *Subsystem, TSharedPtr< FOnlineGroupsAccelByte, ESPMode::ThreadSafe > &OutInterfaceInstance)
static bool GetFromSubsystem (const FOnlineSubsystemAccelByte *Subsystem, TSharedPtr< FOnlineGroupsAccelByte, ESPMode::ThreadSafe > &OutInterfaceInstance)

Protected Member Functions

 FOnlineGroupsAccelByte ()

Protected Attributes

FOnlineSubsystemAccelByteWPtr AccelByteSubsystem

Detailed Description

AccelByte service implementation of the Groups Interface

Constructor & Destructor Documentation

◆ FOnlineGroupsAccelByte()

FOnlineGroupsAccelByte::FOnlineGroupsAccelByte ( )
inlineprotected

Hidden default constructor, the constructor that takes in a subsystem instance should be used instead.

End FAccelByteGroupsInfo Begin FOnlineGroupsAccelByte

Member Function Documentation

◆ AcceptInvite()

void FOnlineGroupsAccelByte::AcceptInvite ( const FUniqueNetId & UserIdAcceptedIntoGroup,
const FAccelByteGroupsInfo & InGroupInfo,
const FOnGroupsRequestCompleted & OnCompleted )
virtual

After calling 'InviteUser', the user invited uses this method to accept the group invite request

Parameters
UserIdAcceptedIntoGroup- User ID accepting the invite
InGroupInfo- Group the user is accepting the invite from
OnCompleted- Return delegate indicating the success of this method

◆ AcceptUser()

void FOnlineGroupsAccelByte::AcceptUser ( const int32 AdminLocalUserNum,
const FUniqueNetId & UserIdToAccept,
const FAccelByteGroupsInfo & InGroupInfo,
const FOnGroupsRequestCompleted & OnCompleted )
virtual

After non-Member user calls "JoinGroup", this method can be used to accept their join request

Parameters
AdminLocalUserNum- Local Admin user number accepting the request
UserIdToAccept- User ID to accept into the group
InGroupInfo- Group the user is joining
OnCompleted- Return delegate indicating the success of this method

◆ AddCachedGroupMember()

void FOnlineGroupsAccelByte::AddCachedGroupMember ( const FString & RoleId,
const FString & UserId )

Adds a group member to the cached data

Parameters
RoleId- Role of the new member
RoleId- User Id of the new member

◆ CancelInvite()

void FOnlineGroupsAccelByte::CancelInvite ( const FUniqueNetId & AdminUserId,
const FString & UserIdToCancel,
const FAccelByteGroupsInfo & InGroupInfo,
const FOnGroupsRequestCompleted & OnCompleted )
virtual

Used to cancel an invite sent to a user

Parameters
AdminUserId- Must be a group Admin with permissions to delete invites
UserIdToCancel- User ID used to find the invite in which to cancel
InGroupInfo- Group to cancel the invite from
OnCompleted- Return delegate indicating the success of this method

◆ CancelRequest()

void FOnlineGroupsAccelByte::CancelRequest ( const FUniqueNetId & UserIdCancelingRequest,
const FAccelByteGroupsInfo & InGroupInfo,
const FOnGroupsRequestCompleted & OnCompleted )
virtual

Used by a non-Group user to cancel a request to join a group

Parameters
UserIdCancelingRequest- User ID requesting to cancel their request to join
InGroupInfo-Group the user is canceling their request from
OnCompleted- Return delegate indicating the success of this method

◆ CreateGroup()

void FOnlineGroupsAccelByte::CreateGroup ( const FUniqueNetId & UserIdCreatingGroup,
const FAccelByteGroupsInfo & InGroupInfo,
const FOnGroupsRequestCompleted & OnCompleted )
virtual

Used for creating a group for the first time

Parameters
UserIdCreatingGroup- User Id that is creating the group. This user automatically becomes the Group Admin.
InGroupInfo- Initial group information supplied to create the group.
OnCompleted- Return delegate indicating the success of this method.

◆ DeclineInvite()

void FOnlineGroupsAccelByte::DeclineInvite ( const FUniqueNetId & UserIdToDecline,
const FAccelByteGroupsInfo & InGroupInfo,
const FOnGroupsRequestCompleted & OnCompleted )
virtual

After calling 'InviteUser', the user uses this method to decline an group invite request

Parameters
UserIdToDecline- User ID declining the invite
InGroupInfo- Group the user is declining the invite from
OnCompleted- Return delegate indicating the success of this method

◆ DeclineUser()

void FOnlineGroupsAccelByte::DeclineUser ( const int32 AdminLocalUserNum,
const FUniqueNetId & UserIdToDecline,
const FAccelByteGroupsInfo & InGroupInfo,
const FOnGroupsRequestCompleted & OnCompleted )
virtual

After non-Member user calls "JoinGroup", this method can be used to decline their join request

Parameters
AdminLocalUserNum- Local Admin user number declining the request
UserIdToDecline- User ID to decline into the group
InGroupInfo- Group the user is being declined from
OnCompleted- Return delegate indicating the success of this method

◆ DeleteCachedGroupInfo()

void FOnlineGroupsAccelByte::DeleteCachedGroupInfo ( )
virtual

Used by 'DeleteGroup' to not only delete server data, but also locally cached 'CurrentGroup' data.

◆ DeleteGroup()

void FOnlineGroupsAccelByte::DeleteGroup ( const int32 AdminLocalUserNum,
const FAccelByteGroupsInfo & InGroupInfo,
const FOnGroupsRequestCompleted & OnCompleted )
virtual

Used to Delete the local and server instance of a given group

Parameters
AdminLocalUserNum- Admin group member with permission to delete a group
InGroupInfo- Group information to delete
OnCompleted- Return delegate indicating the success of this method

◆ DeletePredefinedRule()

void FOnlineGroupsAccelByte::DeletePredefinedRule ( const int32 & AdminLocalUserNum,
const FAccelByteGroupsInfo & InGroupInfo,
const EAccelByteAllowedAction & AllowedAction,
const FOnGroupsRequestCompleted & OnCompleted )
virtual

Used to DELETE a predefined rule.

Parameters
AdminLocalUserNum- Local Admin number requesting to delete a group predefined rule
InGroupInfo- Group to delete the predefined rule from
AllowedAction- Allowed action to delete
OnCompleted- Return delegate indicating the success of this method

◆ DemoteUser()

void FOnlineGroupsAccelByte::DemoteUser ( const int32 AdminLocalUserNum,
const FUniqueNetId & MemberUserIdToDemote,
const FAccelByteGroupsInfo & InGroupInfo,
const FString & MemberRoleId,
const FOnGroupsRequestCompleted & OnCompleted )
virtual

Used to demote a group Member to a group Admin

Parameters
AdminLocalUserNum- Local Admin user number with permissions to demote a user
MemberUserIdToDemote- User ID to demote
InGroupInfo- Group to demote the user in
OnCompleted- Return delegate indicating the success of this method

◆ FindGroups()

void FOnlineGroupsAccelByte::FindGroups ( const FUniqueNetId & SearchingUserId,
const FAccelByteModelsGetGroupListRequest & RequestedContent,
const FOnGroupsRequestCompleted & OnCompleted )
virtual

Finds a number of previously created Groups to be found given the provided content

Parameters
SearchingUserId- UserId requesting the search
RequestedContent- Content the user is requesting from the search
OnCompleted- Return delegate indicating the success of this method.

◆ FindGroupsByGroupIds()

void FOnlineGroupsAccelByte::FindGroupsByGroupIds ( const FUniqueNetId & SearchingUserId,
const TArray< FString > GroupIds,
const FOnGroupsRequestCompleted & OnCompleted )
virtual

Finds a number of previously created Groups to be found by X number of Group IDs

Parameters
SearchingUserId- UserId requesting the search
GroupIds- Array of Group IDs to find
OnCompleted- Return delegate indicating the success of this method

◆ GetCachedFindGroupsByGroupIds()

virtual FAccelByteModelsGetGroupListResponse FOnlineGroupsAccelByte::GetCachedFindGroupsByGroupIds ( )
virtual

This method returns a cache of data generated by the 'FindGroupsByGroupIds' method

Returns
FAccelByteModelsGetGroupListResponse - List of Groups found

◆ GetCachedFindGroupsRoster()

FAccelByteModelsGetGroupListResponse FOnlineGroupsAccelByte::GetCachedFindGroupsRoster ( )
virtual

This method returns a cache of data generated by the 'FindGroups' method

Returns
FAccelByteModelsGetGroupListResponse - List of Groups found

◆ GetCachedGroupInfo()

FAccelByteGroupsInfoPtr FOnlineGroupsAccelByte::GetCachedGroupInfo ( )
virtual

After calling 'CreateGroup' this method can be used to retrieve the cached data of the group

Returns
FAccelByteGroupsInfoPtr - Complete data cache of the recently created group called 'CurrentGroup'

◆ GetCachedGroupInvites()

FAccelByteModelsGetMemberRequestsListResponse FOnlineGroupsAccelByte::GetCachedGroupInvites ( )
virtual

After calling 'QueryGroupInvites' this method can be used to retrieve the list of cached group invites requested

Returns
FAccelByteModelsGetMemberRequestsListResponse - List of all invites sent to a given user requested from 'QueryGroupInvites'

◆ GetCachedGroupRequests()

FAccelByteModelsGetMemberRequestsListResponse FOnlineGroupsAccelByte::GetCachedGroupRequests ( )
virtual

After calling 'QueryGroupRequests' this method can be used to retrieve the list of cached group requests requested

Parameters
FAccelByteModelsGetMemberRequestsListResponse- List of all requests sent by the given group after calling 'QueryGroupRequests'

◆ GetCachedGroupRoster()

FAccelByteModelsGetGroupMemberListResponse FOnlineGroupsAccelByte::GetCachedGroupRoster ( )
virtual

After calling 'QueryGroupRoster' this method can be used to retrieve the list of cached group members requested

Returns
FAccelByteModelsGetGroupMemberListResponse - Complete list of group members queried from 'QueryGroupRoster'

◆ GetCachedInvitations()

FAccelByteModelsGetMemberRequestsListResponse FOnlineGroupsAccelByte::GetCachedInvitations ( )
virtual

After calling 'QueryGroupInvites' this method can be used to retrieve the list of cached group invites requested

Returns
FAccelByteModelsGetMemberRequestsListResponse - Complete list of group invites queried from 'QueryGroupInvites'

◆ GetCachedUserMembership()

void FOnlineGroupsAccelByte::GetCachedUserMembership ( TArray< FAccelByteModelsGroupMember > & GroupRoster)
virtual

Used to get a list of cached group members from the 'CurrentGroup'

Parameters
GroupRoster- Out parameter of the list of members in 'CurrentGroup'

◆ GetFromSubsystem()

bool FOnlineGroupsAccelByte::GetFromSubsystem ( const IOnlineSubsystem * Subsystem,
TSharedPtr< FOnlineGroupsAccelByte, ESPMode::ThreadSafe > & OutInterfaceInstance )
static

Convenience method to get an instance of this interface from the subsystem passed in.

Parameters
SubsystemSubsystem instance that we wish to get this interface from
OutInterfaceInstanceInstance of the interface that we got from the subsystem, or nullptr if not found
Returns
boolean that is true if we could get an instance of the interface, false otherwise

◆ GetNamespace()

virtual const FString & FOnlineGroupsAccelByte::GetNamespace ( ) const
inlineoverridevirtual

Used to get the current Namespace

Returns
const FString& - Current namespace

◆ InviteUser()

void FOnlineGroupsAccelByte::InviteUser ( const FUniqueNetId & InviterUserId,
const FUniqueNetId & InvitedUserId,
const FAccelByteGroupsInfo & InGroupInfo,
const FOnGroupsRequestCompleted & OnCompleted )
virtual

Used to send an invite to a non-Member user to join the group

Parameters
InviterUserId- Group Member with permission to invite another user into the group
InvitedUserId- Non-Member user receiving the invitation
InGroupInfo- Group the invite is coming from
OnCompleted- Return delegate indicating the success of this method

◆ IsGroupValid()

bool FOnlineGroupsAccelByte::IsGroupValid ( ) const

Ensures that local group data is not null

Returns
boolean that is true group data is not null

◆ JoinGroup()

void FOnlineGroupsAccelByte::JoinGroup ( const FUniqueNetId & UserIdJoiningGroup,
const FAccelByteGroupsInfo & InGroupInfo,
const FOnGroupsRequestCompleted & OnCompleted )
virtual

Used by a non-Group user to request to join the current group

Parameters
UserIdJoiningGroup- User ID requesting to join the group
InGroupInfo- Group the user is requesting to join
OnCompleted- Return delegate indicating the success of this method

◆ LeaveGroup()

void FOnlineGroupsAccelByte::LeaveGroup ( const FUniqueNetId & UserIdLeavingGroup,
const FAccelByteGroupsInfo & InGroupInfo,
const FOnGroupsRequestCompleted & OnCompleted )
virtual

Used by any Group user to Leave the Group. Last remaining Group Admin must be the last to leave a group.

Parameters
UserIdLeavingGroup- User ID requesting to leave the group
InGroupInfo- Group the user is requesting to leave
OnCompleted- Return delegate indicating the success of this method

◆ PromoteCachedMember()

void FOnlineGroupsAccelByte::PromoteCachedMember ( FString & UserId,
TArray< FString > & NewMemberRoleIds )

Promotes a group member inside the cached data

Parameters
RoleId- User Id of the member to be promoted
NewMemberRoleIds- New role id for the newly promoted member

◆ PromoteUser()

void FOnlineGroupsAccelByte::PromoteUser ( const int32 AdminLocalUserNum,
const FUniqueNetId & MemberUserIdToPromote,
const FAccelByteGroupsInfo & InGroupInfo,
const FString & MemberRoleId,
const FOnGroupsRequestCompleted & OnCompleted )
virtual

Used to promote a group Member to a group Admin

Parameters
AdminLocalUserNum- Local Admin user number with permissions to promote a user
MemberUserIdToPromote- User ID to promote
InGroupInfo- Group to promote the user in
OnCompleted- Return delegate indicating the success of this method

◆ QueryConfigHeadcount()

int FOnlineGroupsAccelByte::QueryConfigHeadcount ( )
virtual

Used to get the maximum allowed user population of the local 'CurrentGroup' cache

Returns
int - Maximum allowed user population

◆ QueryGroupInfo()

void FOnlineGroupsAccelByte::QueryGroupInfo ( const FUniqueNetId & CurrentUserId,
const FAccelByteGroupsInfo & InGroupInfo,
const FOnGroupsRequestCompleted & OnCompleted )
virtual

Gets up to date FAccelByteModelsGroupInformation for the provided group information. Use GetDisplayInfo() to retrieve queried data.

Parameters
CurrentUserId- User ID requesting the group information
InGroupInfo- Group information to query
OnCompleted- Return delegate indicating the success of this method

◆ QueryGroupInvites()

void FOnlineGroupsAccelByte::QueryGroupInvites ( const FUniqueNetId & ContextUserId,
const FAccelByteModelsLimitOffsetRequest & AccelByteModelsLimitOffsetRequest,
const FOnGroupsRequestCompleted & OnCompleted )
virtual

Used by a non-Member user to get all their group invites

Parameters
ContextUserId- User ID requesting the query
AccelByteModelsLimitOffsetRequest- Requested content of the query
OnCompleted- Return delegate indicating the success of this method

◆ QueryGroupRequests()

void FOnlineGroupsAccelByte::QueryGroupRequests ( const FUniqueNetId & ContextUserId,
const FAccelByteModelsLimitOffsetRequest & AccelByteModelsLimitOffsetRequest,
const FAccelByteGroupsInfo & InGroupInfo,
const FOnGroupsRequestCompleted & OnCompleted )
virtual

Used by a Member user to get all their group requests sent out to other non-Member users

Parameters
ContextUserId- User ID requesting the query
AccelByteModelsLimitOffsetRequest- Requested content of the query
InGroupInfo- Group to retrieve the requests from
OnCompleted- Return delegate indicating the success of this method

◆ QueryGroupRoster()

void FOnlineGroupsAccelByte::QueryGroupRoster ( const FUniqueNetId & RequestingUserId,
const FAccelByteGroupsInfo & InGroupInfo,
const FAccelByteModelsGetGroupMembersListByGroupIdRequest & RequestedContent,
const FOnGroupsRequestCompleted & OnCompleted )
virtual

Retrieves a complete list of members in the group

Parameters
RequestingUserId- User ID requesting the list of members
InGroupInfo- Group the user wants the list of members from
OnCompleted- Return delegate indicating the success of this method

◆ RemoveCachedInvites()

void FOnlineGroupsAccelByte::RemoveCachedInvites ( FString & UserIdToRemove)

Removes a group invite from the cached data

Parameters
RoleId- User Id of the invite to be removed

◆ RemoveCachedMember()

void FOnlineGroupsAccelByte::RemoveCachedMember ( FString & UserId)

Removes a group member from the cached data

Parameters
RoleId- User Id of the member to be removed

◆ RemoveCachedPredefinedRule()

void FOnlineGroupsAccelByte::RemoveCachedPredefinedRule ( EAccelByteAllowedAction & AllowedAction)

Removes a group predefined rule from the cached data

Parameters
RoleId- Allowed action of the predefined rule to be removed

◆ RemoveCachedRequests()

void FOnlineGroupsAccelByte::RemoveCachedRequests ( FString & UserIdToRemove)

Removes a group request from the cached data

Parameters
RoleId- User Id of the request to be removed

◆ RemoveUser()

void FOnlineGroupsAccelByte::RemoveUser ( const int32 AdminLocalUserNum,
const FUniqueNetId & MemberUserIdToKick,
const FAccelByteGroupsInfo & InGroupInfo,
const FOnGroupsRequestCompleted & OnCompleted )
virtual

Used to remove/kick a Member or Admin from the group

Parameters
AdminLocalUserNum- Local Admin user number with permissions to remove a user
MemberUserIdToKick- User ID to kick/remove from the group
InGroupInfo- Group to kick the user from
OnCompleted- Return delegate indicating the success of this method

◆ SetCachedGroupInfo()

void FOnlineGroupsAccelByte::SetCachedGroupInfo ( const FAccelByteGroupsInfoRef & InGroupInfo)
virtual

Used by 'CreateGroup' to set the cached 'CurrentGroup' data. Used to cache local data, but does not change server data.

Parameters
InGroupInfo- Incoming data to overwrite the existing data cache

◆ SetCachedGroupInviteResults()

void FOnlineGroupsAccelByte::SetCachedGroupInviteResults ( FAccelByteModelsGetMemberRequestsListResponse & AccelByteModelsGetMemberRequestsListResponse)

Sets cached group data after a query of group information

Parameters
AccelByteModelsGetMemberRequestsListResponse- Sets the local copy of CachedGroupInviteResults

◆ SetCachedGroupListByGroupIdsResults()

void FOnlineGroupsAccelByte::SetCachedGroupListByGroupIdsResults ( FAccelByteModelsGetGroupListResponse & AccelByteModelsGetGroupListResponse)

Sets cached group data after a query of group information

Parameters
AccelByteModelsGetGroupListResponse- Sets the local copy of CachedGroupListByGroupIdsResults

◆ SetCachedGroupRequests()

void FOnlineGroupsAccelByte::SetCachedGroupRequests ( FAccelByteModelsGetMemberRequestsListResponse & AccelByteModelsGetMemberRequestsListResponse)

Sets cached group data after a query of group information

Parameters
AccelByteModelsGetMemberRequestsListResponse- Sets the local copy of CachedGroupRequests

◆ SetCachedGroupResults()

void FOnlineGroupsAccelByte::SetCachedGroupResults ( FAccelByteModelsGetGroupListResponse & AccelByteModelsGetGroupListResponse)

Sets cached group data after a query of group information

Parameters
AccelByteModelsGetGroupListResponse- Sets the local copy of CachedGroupResults

◆ SetCachedMembersByGroupIdResults()

void FOnlineGroupsAccelByte::SetCachedMembersByGroupIdResults ( FAccelByteModelsGetGroupMemberListResponse & AccelByteModelsGetGroupMemberListResponse)

Sets cached group data after a query of group information

Parameters
AccelByteModelsGetGroupMemberListResponse- Sets the local copy of CachedMembersByGroupIdResults

◆ UpdateGroupCustomAttributes()

void FOnlineGroupsAccelByte::UpdateGroupCustomAttributes ( const int32 & AdminLocalUserNum,
const FUniqueNetId & InAdminUserId,
const FAccelByteGroupsInfo & InGroupInfo,
const FAccelByteModelsUpdateGroupCustomAttributesRequest & RequestContent,
const FOnGroupsRequestCompleted & OnCompleted )
virtual

Used to update a groups FAccelByteModelsGroupInformation data

Parameters
AdminLocalUserNum- Local Admin number requesting to change group data
InAdminUserId- Admin ID with permissions to change group data
InGroupInfo- Group in which to change information
RequestContent- Requested group information to change
OnCompleted- Return delegate indicating the success of this method

◆ UpdateGroupCustomRule()

void FOnlineGroupsAccelByte::UpdateGroupCustomRule ( const int32 & AdminLocalUserNum,
const FUniqueNetId & InAdminUserId,
const FAccelByteGroupsInfo & InGroupInfo,
const FAccelByteModelsUpdateCustomRulesRequest & RequestContent,
const FOnGroupsRequestCompleted & OnCompleted )
virtual

Used to CREATE or UPDATE a custom rule. Custom Rules are not enforced by AccelByte.

Parameters
AdminLocalUserNum- Local Admin number requesting to update a group custom rule
InAdminUserId- Admin ID with permissions to change custom rules
InGroupInfo- Group receiving the custom rule
RequestContent- Custom rule data to add or update
OnCompleted- Return delegate indicating the success of this method

◆ UpdateGroupInfo()

void FOnlineGroupsAccelByte::UpdateGroupInfo ( const int32 & GroupAdmin,
const FUniqueNetId & AdminUserId,
const FAccelByteGroupsInfo & InGroupInfo,
const FAccelByteModelsGroupUpdatable & RequestContent,
const bool CompletelyReplace,
const FOnGroupsRequestCompleted & OnCompleted )
virtual

Updates specific group data contained in 'FAccelByteModelsGroupUpdatable' on the server

Parameters
GroupAdmin- Required local Admin user number to perform this action
AdminUserId- Required Admin with permissions to update group information
InGroupInfo- Group that will be receiving the updated information
RequestContent- Content to change in the group information
CompletelyReplace- True, will overwrite all data to the incoming data. False, will overwrite only the filled data.
OnCompleted- Return delegate indicating the success of this method

◆ UpdatePredefinedRule()

void FOnlineGroupsAccelByte::UpdatePredefinedRule ( const int32 & AdminLocalUserNum,
const FUniqueNetId & AdminUserId,
const FAccelByteGroupsInfo & InGroupInfo,
const EAccelByteAllowedAction & InAllowedAction,
const FAccelByteModelsUpdateGroupPredefinedRuleRequest & RequestContent,
const FOnGroupsRequestCompleted & OnCompleted )
virtual

Used to CREATE or UPDATE a predefined rule.

Parameters
AdminLocalUserNum- Local Admin number requesting to update a group predefined rule
InAdminUserId- Admin ID with permissions to change predefined rules
InGroupInfo- Group to create or update the predefined rule from
InAllowedAction- Allowed action to update in the predefined rule
RequestContent- Content to create or update in the predefined rule
OnCompleted- Return delegate indicating the success of this method

◆ VerifyGroupInfo()

bool FOnlineGroupsAccelByte::VerifyGroupInfo ( const FAccelByteGroupsInfo & InGroupInfo)

Ensures that the incoming group data is valid and ready to be used

Parameters
InGroupInfo- Group data to be verified
Returns
boolean that is true if group data is valid

Member Data Documentation

◆ AccelByteSubsystem

FOnlineSubsystemAccelByteWPtr FOnlineGroupsAccelByte::AccelByteSubsystem
protected

Instance of the subsystem that created this interface