PICO Unreal Platform SDK
Pico_Room.h
1// Copyright® 2015-2023 PICO Technology Co., Ltd. All rights reserved.
2
3#pragma once
4
5#include "CoreMinimal.h"
6#include "OnlineSubsystemPico.h"
7#include "UObject/NoExportTypes.h"
8#include "OnlineSubsystemPicoNames.h"
9#include "PPF_Platform.h"
10#include "Kismet/BlueprintFunctionLibrary.h"
11#include "Pico_Room.generated.h"
12//
13
14DECLARE_LOG_CATEGORY_EXTERN(PicoRoom, Log, All);
15
16class UPico_User;
17class UPico_DataStore;
18class UPico_UserArray;
19class UPico_Room;
20class UPico_RoomArray;
21
22
26DECLARE_MULTICAST_DELEGATE_FourParams(FRoomUpdateNotify, bool, /*bIsError*/ int, /*ErrorCode*/ const FString&, /*ErrorMessage*/ UPico_Room* /*Room*/);
27DECLARE_MULTICAST_DELEGATE_ThreeParams(FRoomUpdateOwnerNotify, bool, /*bIsError*/ int, /*ErrorCode*/ const FString&/*ErrorMessage*/);
28DECLARE_MULTICAST_DELEGATE_FourParams(FRoomJoinNotify, bool, /*bIsError*/ int, /*ErrorCode*/ const FString&, /*ErrorMessage*/ UPico_Room* /*Room*/);
29DECLARE_MULTICAST_DELEGATE_FourParams(FRoomLeaveNotify, bool, /*bIsError*/ int, /*ErrorCode*/ const FString&, /*ErrorMessage*/ UPico_Room* /*Room*/);
30DECLARE_MULTICAST_DELEGATE_FourParams(FRoomInviteAcceptedNotify, bool, /*bIsError*/ int, /*ErrorCode*/ const FString&, /*ErrorMessage*/ const FString& /*RoomID*/);
31
32DECLARE_DYNAMIC_DELEGATE_ThreeParams(FRoomLaunchInvitableUserFlow, bool, bIsError, int, ErrorCode, const FString&, ErrorMessage);
33DECLARE_DYNAMIC_DELEGATE_FourParams(FRoomUpdateDataStore, bool, bIsError, int, ErrorCode, const FString&, ErrorMessage, UPico_Room*, Room);
34DECLARE_DYNAMIC_DELEGATE_FourParams(FRoomCreateAndJoinPrivate2, bool, bIsError, int, ErrorCode, const FString&, ErrorMessage, UPico_Room*, Room);
35DECLARE_DYNAMIC_DELEGATE_FourParams(FRoomGet, bool, bIsError, int, ErrorCode, const FString&, ErrorMessage, UPico_Room*, Room);
36DECLARE_DYNAMIC_DELEGATE_FourParams(FRoomGetCurrent, bool, bIsError, int, ErrorCode, const FString&, ErrorMessage, UPico_Room*, Room);
37DECLARE_DYNAMIC_DELEGATE_FourParams(FRoomGetCurrentForUser, bool, bIsError, int, ErrorCode, const FString&, ErrorMessage, UPico_Room*, Room);
38DECLARE_DYNAMIC_DELEGATE_FourParams(FRoomGetInvitableUsers2, bool, bIsError, int, ErrorCode, const FString&, ErrorMessage, UPico_UserArray*, UserArray);
39DECLARE_DYNAMIC_DELEGATE_FourParams(FRoomGetModeratedRooms, bool, bIsError, int, ErrorCode, const FString&, ErrorMessage, UPico_RoomArray*, RoomArray);
40DECLARE_DYNAMIC_DELEGATE_FourParams(FRoomInviteUser, bool, bIsError, int, ErrorCode, const FString&, ErrorMessage, UPico_Room*, Room);
41DECLARE_DYNAMIC_DELEGATE_FourParams(FRoomJoin2, bool, bIsError, int, ErrorCode, const FString&, ErrorMessage, UPico_Room*, Room);
42DECLARE_DYNAMIC_DELEGATE_FourParams(FRoomKickUser, bool, bIsError, int, ErrorCode, const FString&, ErrorMessage, UPico_Room*, Room);
43DECLARE_DYNAMIC_DELEGATE_FourParams(FRoomLeave, bool, bIsError, int, ErrorCode, const FString&, ErrorMessage, UPico_Room*, Room);
44DECLARE_DYNAMIC_DELEGATE_FourParams(FRoomSetDescription, bool, bIsError, int, ErrorCode, const FString&, ErrorMessage, UPico_Room*, Room);
45DECLARE_DYNAMIC_DELEGATE_FourParams(FRoomUpdateMembershipLockStatus, bool, bIsError, int, ErrorCode, const FString&, ErrorMessage, UPico_Room*, Room);
46DECLARE_DYNAMIC_DELEGATE_ThreeParams(FRoomUpdateOwner, bool, bIsError, int, ErrorCode, const FString&, ErrorMessage);
47DECLARE_DYNAMIC_DELEGATE_FourParams(FRoomUpdatePrivateRoomJoinPolicy, bool, bIsError, int, ErrorCode, const FString&, ErrorMessage, UPico_Room*, Room);
48DECLARE_DYNAMIC_DELEGATE_FourParams(FRoomJoinOrCreateNamedRoom, bool, bIsError, int, ErrorCode, const FString&, ErrorMessage, UPico_Room*, Room);
49DECLARE_DYNAMIC_DELEGATE_FourParams(FRoomGetNamedRooms, bool, bIsError, int, ErrorCode, const FString&, ErrorMessage, UPico_RoomArray*, RoomArray);
50// FRoom_LaunchInvitableUserFlow
51// FRoom_GetNextRoomArrayPage
52
64class ONLINESUBSYSTEMPICO_API FPicoRoomInterface
65{
66private:
67 FOnlineSubsystemPico& PicoSubsystem;
68
69public:
70 FPicoRoomInterface(FOnlineSubsystemPico& InSubsystem);
72
73 FDelegateHandle RoomUpdateHandle;
74 void OnRoomUpdateNotification(ppfMessageHandle Message, bool bIsError);
75
76 FDelegateHandle RoomUpdateOwnerHandle;
77 void OnRoomUpdateOwnerNotification(ppfMessageHandle Message, bool bIsError);
78
79 FDelegateHandle RoomJoinHandle;
80 void OnRoomJoinNotification(ppfMessageHandle Message, bool bIsError);
81
82 FDelegateHandle RoomLeaveHandle;
83 void OnRoomLeaveNotification(ppfMessageHandle Message, bool bIsError);
84
85 FDelegateHandle RoomInviteAcceptedHandle;
86 void OnRoomInviteAcceptedNotification(ppfMessageHandle Message, bool bIsError);
87
88 FRoomUpdateNotify RoomUpdateNotify;
89 FRoomUpdateOwnerNotify RoomUpdateOwnerNotify;
90 FRoomJoinNotify RoomJoinNotify;
91 FRoomLeaveNotify RoomLeaveNotify;
92 FRoomInviteAcceptedNotify RoomInviteAcceptedNotify;
93
94 FRoomLaunchInvitableUserFlow LaunchInvitableUserFlowDelegate;
95 FRoomUpdateDataStore UpdateDataStoreDelegate;
96 FRoomCreateAndJoinPrivate2 CreateAndJoinPrivate2Delegate;
97 FRoomGet GetDelegate;
98 FRoomGetCurrent GetCurrentDelegate;
99 FRoomGetCurrentForUser GetCurrentForUserDelegate;
100 FRoomGetInvitableUsers2 GetInvitableUsers2Delegate;
101 FRoomGetModeratedRooms GetModeratedRoomsDelegate;
102 FRoomInviteUser InviteUserDelegate;
103 FRoomJoin2 Join2Delegate;
104 FRoomKickUser KickUserDelegate;
105 FRoomLeave LeaveDelegate;
106 FRoomSetDescription SetDescriptionDelegate;
107 FRoomUpdateMembershipLockStatus UpdateMembershipLockStatusDelegate;
108 FRoomUpdateOwner UpdateOwnerDelegate;
109 FRoomUpdatePrivateRoomJoinPolicy UpdatePrivateRoomJoinPolicyDelegate;
110 FRoomJoinOrCreateNamedRoom JoinOrCreateNamedRoomDelegate;
111 FRoomGetNamedRooms GetNamedRoomsDelegate;
112
125 bool LaunchInvitableUserFlow(const FString& RoomID, FRoomLaunchInvitableUserFlow OnLaunchInvitableUserFlowCallback);
126
140 bool UpdateDataStore(const FString& RoomID, const TMap<FString, FString>& Data, FRoomUpdateDataStore OnUpdateDataStoreCallback);
141
164 bool CreateAndJoinPrivate2(ERoomJoinPolicy JoinPolicy, uint32 MaxUsers, FPicoRoomOptions RoomOptions, FRoomCreateAndJoinPrivate2 OnCreateAndJoinPrivate2Callback);
165
176 bool Get(const FString& RoomID, FRoomGet OnGetCallback);
177
187 bool GetCurrent(FRoomGetCurrent OnGetCurrentCallback);
188
202 bool GetCurrentForUser(const FString& UserId, FRoomGetCurrentForUser OnGetCurrentForUserCallback);
203
218 bool GetInvitableUsers2(FPicoRoomOptions roomOptions, FRoomGetInvitableUsers2 OnGetInvitableUsers2Callback);
219
235 bool GetModeratedRooms(int PageIndex, int PageSize, FRoomGetModeratedRooms OnGetModeratedRoomsCallback);
236
251 bool InviteUser(const FString& RoomID, const FString& Token, FRoomInviteUser OnInviteUserCallback);
252
253
266 bool Join2(const FString& RoomID, FPicoRoomOptions options, FRoomJoin2 OnJoin2Callback);
267
281 bool KickUser(const FString& RoomID, const FString& UserID, int KickDurationSeconds, FRoomKickUser OnKickUserCallback);
282
295 bool Leave(const FString& RoomID, FRoomLeave OnLeaveCallback);
296
309 bool SetDescription(const FString& RoomID, const FString& Description, FRoomSetDescription OnSetDescriptionCallback);
310
328 bool UpdateMembershipLockStatus(const FString& RoomID, ERoomMembershipLockStatus MembershipLockStatus, FRoomUpdateMembershipLockStatus OnUpdateMembershipLockStatusCallback);
329
342 bool UpdateOwner(const FString& RoomID, const FString& UserID, FRoomUpdateOwner OnUpdateOwnerCallback);
343
363 bool UpdatePrivateRoomJoinPolicy(const FString& RoomID, ERoomJoinPolicy JoinPolicy, FRoomUpdatePrivateRoomJoinPolicy OnUpdatePrivateRoomJoinPolicyCallback);
364
376 bool GetNamedRooms(int PageIndex, int PageSize, FRoomGetNamedRooms OnGetNamedRoomsCallback);
377
391 bool JoinOrCreateNamedRoom(ERoomJoinPolicy JoinPolicy, bool CreateIfNotExist, uint32 MaxUsers, FPicoRoomOptions Options, FRoomJoinOrCreateNamedRoom OnRoomJoinOrCreateNamedRoomCallback);
392
393private:
394 ppfRoomOptions* GetppfRoomOptions(FPicoRoomOptions PicoRoomOptions);
395
396 ppfRoomJoinPolicy GetppfRoomJoinPolicy(ERoomJoinPolicy JoinPolicy);
397 ppfID GetppfID(const FString& StringID);
398 ppfRoomMembershipLockStatus GetppfRoomMembershipLockStatus(ERoomMembershipLockStatus RoomMembershipLockStatus);
399};
400
416UCLASS()
417class ONLINESUBSYSTEMPICO_API UOnlinePicoRoomFunction : public UBlueprintFunctionLibrary
418{
419 GENERATED_BODY()
420
421
422public:
428 UFUNCTION(BlueprintCallable, meta = (WorldContext = "WorldContextObject"), Category = "OnlinePico|Room")
429 static void LaunchInvitableUserFlow(UObject* WorldContextObject, const FString& RoomID, FRoomLaunchInvitableUserFlow OnLaunchInvitableUserFlowCallback);
430
439 UFUNCTION(BlueprintCallable, meta = (WorldContext = "WorldContextObject"), Category = "OnlinePico|Room")
440 static void UpdateDataStore(UObject* WorldContextObject, const FString& RoomID, const TMap<FString, FString>& Data, FRoomUpdateDataStore OnUpdateDataStoreCallback);
441
458 UFUNCTION(BlueprintCallable, meta = (WorldContext = "WorldContextObject"), Category = "OnlinePico|Room")
459 static void CreateAndJoinPrivate2(UObject* WorldContextObject, ERoomJoinPolicy JoinPolicy, int32 MaxUsers, FPicoRoomOptions RoomOptions, FRoomCreateAndJoinPrivate2 OnCreateAndJoinPrivate2Callback);
460
466 UFUNCTION(BlueprintCallable, meta = (WorldContext = "WorldContextObject"), Category = "OnlinePico|Room")
467 static void Get(UObject* WorldContextObject, const FString& RoomID, FRoomGet OnGetCallback);
468
473 UFUNCTION(BlueprintCallable, meta = (WorldContext = "WorldContextObject"), Category = "OnlinePico|Room")
474 static void GetCurrent(UObject* WorldContextObject, FRoomGetCurrent OnGetCurrentCallback);
475
483 UFUNCTION(BlueprintCallable, meta = (WorldContext = "WorldContextObject"), Category = "OnlinePico|Room")
484 static void GetCurrentForUser(UObject* WorldContextObject, const FString& UserId, FRoomGetCurrentForUser OnGetCurrentForUserCallback);
485
494 UFUNCTION(BlueprintCallable, meta = (WorldContext = "WorldContextObject"), Category = "OnlinePico|Room")
495 static void GetInvitableUsers2(UObject* WorldContextObject, FPicoRoomOptions RoomOptions, FRoomGetInvitableUsers2 OnGetInvitableUsers2Callback);
496
506 UFUNCTION(BlueprintCallable, meta = (WorldContext = "WorldContextObject"), Category = "OnlinePico|Room")
507 static void GetModeratedRooms(UObject* WorldContextObject, int PageIndex, int PageSize, FRoomGetModeratedRooms OnGetModeratedRoomsCallback);
508
517 UFUNCTION(BlueprintCallable, meta = (WorldContext = "WorldContextObject"), Category = "OnlinePico|Room")
518 static void InviteUser(UObject* WorldContextObject, const FString& RoomID, const FString& Token, FRoomInviteUser OnInviteUserCallback);
519
520
527 UFUNCTION(BlueprintCallable, meta = (WorldContext = "WorldContextObject"), Category = "OnlinePico|Room")
528 static void Join2(UObject* WorldContextObject, const FString& RoomID, FPicoRoomOptions RoomOptions, FRoomJoin2 OnJoin2Callback);
529
537 UFUNCTION(BlueprintCallable, meta = (WorldContext = "WorldContextObject"), Category = "OnlinePico|Room")
538 static void KickUser(UObject* WorldContextObject, const FString& RoomID, const FString& UserID, int32 KickDurationSeconds, FRoomKickUser OnKickUserCallback);
539
546 UFUNCTION(BlueprintCallable, meta = (WorldContext = "WorldContextObject"), Category = "OnlinePico|Room")
547 static void Leave(UObject* WorldContextObject, const FString& RoomID, FRoomLeave OnLeaveCallback);
548
555 UFUNCTION(BlueprintCallable, meta = (WorldContext = "WorldContextObject"), Category = "OnlinePico|Room")
556 static void SetDescription(UObject* WorldContextObject, const FString& RoomID, const FString& Description, FRoomSetDescription OnSetDescriptionCallback);
557
569 UFUNCTION(BlueprintCallable, meta = (WorldContext = "WorldContextObject"), Category = "OnlinePico|Room")
570 static void UpdateMembershipLockStatus(UObject* WorldContextObject, const FString& RoomID, ERoomMembershipLockStatus MembershipLockStatus, FRoomUpdateMembershipLockStatus OnUpdateMembershipLockStatusCallback);
571
578 UFUNCTION(BlueprintCallable, meta = (WorldContext = "WorldContextObject"), Category = "OnlinePico|Room")
579 static void UpdateOwner(UObject* WorldContextObject, const FString& RoomID, const FString& UserID, FRoomUpdateOwner OnUpdateOwnerCallback);
580
594 UFUNCTION(BlueprintCallable, meta = (WorldContext = "WorldContextObject"), Category = "OnlinePico|Room")
595 static void UpdatePrivateRoomJoinPolicy(UObject* WorldContextObject, const FString& RoomID, ERoomJoinPolicy JoinPolicy, FRoomUpdatePrivateRoomJoinPolicy OnUpdatePrivateRoomJoinPolicyCallback);
596
602 UFUNCTION(BlueprintCallable, meta = (WorldContext = "WorldContextObject"), Category = "OnlinePico|Room")
603 static void GetNamedRooms(UObject* WorldContextObject, int PageIndex, int PageSize, FRoomGetNamedRooms OnGetNamedRoomsCallback);
604
612 UFUNCTION(BlueprintCallable, meta = (WorldContext = "WorldContextObject"), Category = "OnlinePico|Room")
613 static void JoinOrCreateNamedRoom(UObject* WorldContextObject, ERoomJoinPolicy JoinPolicy, bool CreateIfNotExist, int32 MaxUsers, FPicoRoomOptions Options, FRoomJoinOrCreateNamedRoom OnRoomJoinOrCreateNamedRoomCallback);
614
619 UFUNCTION(BlueprintPure, Category = "OnlinePico|Room")
620 static FPicoRoomOptions GetCreatePrivateRoomOptions(const FString& DataStoreKey, const FString& DataStoreValue);
621
628 UFUNCTION(BlueprintPure, Category = "OnlinePico|Room")
629 static FPicoRoomOptions GetJoinOrCreateNamedRoomOptions(const FString& DataStoreKey, const FString& DataStoreValue, const FString& Name, const FString& Password);
630};
631
637UCLASS(BlueprintType)
638class ONLINESUBSYSTEMPICO_API UPico_Room : public UObject
639{
640 GENERATED_BODY()
641
642private:
643 UPROPERTY()
644 UPico_DataStore* DataStore = nullptr;
645
646 UPROPERTY()
647 UPico_User* Owner = nullptr;
648
649 UPROPERTY()
650 UPico_UserArray* Users = nullptr;
651
652 FString Description = FString();
653
654 ppfID ID = 0;
655
656 FString RoomName = FString();
657
658 FString RoomID = FString();
659
660 bool bIsMembershipLocked = false;
661
663
665
666 int32 MaxUserNum = 0;
667
669
670 int32 PlayerNum = 0;
671
672public:
673 void InitParams(ppfRoomHandle InRoomHandle);
674
676 UFUNCTION(BlueprintPure, Category = "Pico Platform|Room|Room")
677 UPico_DataStore* GetDataStore();
678
680 UFUNCTION(BlueprintPure, Category = "Pico Platform|Room|Room")
681 UPico_User* GetOwner();
682
684 UFUNCTION(BlueprintPure, Category = "Pico Platform|Room|Room")
685 UPico_UserArray* GetUsers();
686
688 UFUNCTION(BlueprintPure, Category = "Pico Platform|Room|Room")
689 FString GetDescription();
690
692 UFUNCTION(BlueprintPure, Category = "Pico Platform|Room|Room")
693 FString GetName();
694
695 ppfID GetppfID();
696
698 UFUNCTION(BlueprintPure, Category = "Pico Platform|Room|Room")
699 FString GetRoomID();
700
702 UFUNCTION(BlueprintPure, Category = "Pico Platform|Room|Room")
703 bool GetIsMembershipLocked();
704
706 UFUNCTION(BlueprintPure, Category = "Pico Platform|Room|Room")
707 ERoomJoinPolicy GetJoinPolicy();
708
710 UFUNCTION(BlueprintPure, Category = "Pico Platform|Room|Room")
711 ERoomJoinabilit GetJoinability();
712
714 UFUNCTION(BlueprintPure, Category = "Pico Platform|Room|Room")
715 int32 GetMaxUsers();
716
718 UFUNCTION(BlueprintPure, Category = "Pico Platform|Room|Room")
719 int32 GetPlayerNumber();
720
722 UFUNCTION(BlueprintPure, Category = "Pico Platform|Room|Room")
723 ERoomType GetRoomType();
724
725 UFUNCTION(BlueprintPure, Category = "Pico Platform|Room|Room")
726 FString GetDebugString();
727};
728
729
731UCLASS(BlueprintType)
732class ONLINESUBSYSTEMPICO_API UPico_RoomArray : public UObject
733{
734 GENERATED_BODY()
735private:
736 UPROPERTY()
737 TArray<UPico_Room*> RoomArray;
738 int32 Size = 0;
739 int32 TotalSize = 0;
740 bool bHasNextPage;
741 int32 PageIndex = 0;
742 int32 PageSize = 0;
743public:
744 void InitParams(ppfRoomArrayHandle InppfRoomArrayHandle);
745
747 UFUNCTION(BlueprintPure, Category = "Pico Platform|Room|Room Array")
748 UPico_Room* GetElement(int32 Index);
749
751 UFUNCTION(BlueprintPure, Category = "Pico Platform|Room|Room Array")
752 int32 GetSize();
753
754 UFUNCTION(BlueprintPure, Category = "Pico Platform|Room|Room Array")
755 int32 GetTotalSize();
756
758 UFUNCTION(BlueprintPure, Category = "Pico Platform|Room|Room Array")
759 bool HasNextPage();
760
761 UFUNCTION(BlueprintPure, Category = "Pico Platform|Room|Room Array")
762 int32 GetPageIndex();
763
764 UFUNCTION(BlueprintPure, Category = "Pico Platform|Room|Room Array")
765 int32 GetPageSize();
766
767 UFUNCTION(BlueprintPure, Category = "Pico Platform|Room|Room Array")
768 FString GetDebugString();
769};
PicoRoomInterface class.
Definition: Pico_Room.h:65
bool LaunchInvitableUserFlow(const FString &RoomID, FRoomLaunchInvitableUserFlow OnLaunchInvitableUserFlowCallback)
Launches the invitation flow to let the current user invite friends to a specified room....
bool UpdateDataStore(const FString &RoomID, const TMap< FString, FString > &Data, FRoomUpdateDataStore OnUpdateDataStoreCallback)
Updates the data store of the current room (the caller should be the room owner).
bool CreateAndJoinPrivate2(ERoomJoinPolicy JoinPolicy, uint32 MaxUsers, FPicoRoomOptions RoomOptions, FRoomCreateAndJoinPrivate2 OnCreateAndJoinPrivate2Callback)
Creates a new private room and joins it.
bool InviteUser(const FString &RoomID, const FString &Token, FRoomInviteUser OnInviteUserCallback)
Invites a user to the current room.
bool GetCurrentForUser(const FString &UserId, FRoomGetCurrentForUser OnGetCurrentForUserCallback)
Gets the current room of the specified user.
bool Join2(const FString &RoomID, FPicoRoomOptions options, FRoomJoin2 OnJoin2Callback)
Joins the target room and meanwhile leaves the current room.
bool UpdatePrivateRoomJoinPolicy(const FString &RoomID, ERoomJoinPolicy JoinPolicy, FRoomUpdatePrivateRoomJoinPolicy OnUpdatePrivateRoomJoinPolicyCallback)
Sets the join policy for a specified private room.
bool GetCurrent(FRoomGetCurrent OnGetCurrentCallback)
Gets the data of the room you are currently in.
bool UpdateMembershipLockStatus(const FString &RoomID, ERoomMembershipLockStatus MembershipLockStatus, FRoomUpdateMembershipLockStatus OnUpdateMembershipLockStatusCallback)
Locks/unlocks the membership of a room (the caller should be the room owner) to allow/disallow new me...
bool GetInvitableUsers2(FPicoRoomOptions roomOptions, FRoomGetInvitableUsers2 OnGetInvitableUsers2Callback)
Gets a list of members the user can invite to the room. These members are drawn from the user's frien...
bool KickUser(const FString &RoomID, const FString &UserID, int KickDurationSeconds, FRoomKickUser OnKickUserCallback)
Kicks a user out of a room. For use by homeowners only.
bool SetDescription(const FString &RoomID, const FString &Description, FRoomSetDescription OnSetDescriptionCallback)
Sets the description of a room. For use by homeowners only.
bool UpdateOwner(const FString &RoomID, const FString &UserID, FRoomUpdateOwner OnUpdateOwnerCallback)
Modifies the owner of the room, this person needs to be the person in this room.
bool GetNamedRooms(int PageIndex, int PageSize, FRoomGetNamedRooms OnGetNamedRoomsCallback)
Fetches the list of named rooms created in the app.
bool Leave(const FString &RoomID, FRoomLeave OnLeaveCallback)
Leaves the current room.
bool JoinOrCreateNamedRoom(ERoomJoinPolicy JoinPolicy, bool CreateIfNotExist, uint32 MaxUsers, FPicoRoomOptions Options, FRoomJoinOrCreateNamedRoom OnRoomJoinOrCreateNamedRoomCallback)
Join or create a named room.
bool Get(const FString &RoomID, FRoomGet OnGetCallback)
Gets the information about a specified room.
bool GetModeratedRooms(int PageIndex, int PageSize, FRoomGetModeratedRooms OnGetModeratedRoomsCallback)
Gets the list of moderated rooms created for the application. The payload returned is roomarray....
OnlinePicoRoom Blueprint Function class.
Definition: Pico_Room.h:418
UPico_DataStore class.
Definition: Pico_DataStore.h:18
UPico_RoomArray class.
Definition: Pico_Room.h:733
UPico_Room class.
Definition: Pico_Room.h:639
UPico_UserArray class.
Definition: Pico_User.h:608
UPico_User class.
Definition: Pico_User.h:515
ERoomType
The type of room you can create.
Definition: OnlineSubsystemPicoNames.h:160
ERoomMembershipLockStatus
Room membership lock status.
Definition: OnlineSubsystemPicoNames.h:782
ERoomJoinabilit
The joinability of a room.
Definition: OnlineSubsystemPicoNames.h:182
ERoomJoinPolicy
The join policy type of a room.
Definition: OnlineSubsystemPicoNames.h:170
Room options.
Definition: OnlineSubsystemPicoNames.h:764