PICO Platform Unity SDK

AchievementType

Name Description Value
Unknown 0
Simple 1
Count 2
Bitfield 3

AchievementWritePolicy

Name Description Value
Unknown 0
Client 1
Server 2

KVPairType

Name Description Value
String 0
Int 1
Double 2
Unknown 3

MatchmakingCriterionImportance

Name Description Value
Required 0
High 1
Medium 2
Low 3
Unknown 4

ChallengeCreationType

Name Description Value
Unknown 0
UserCreated 1
DeveloperCreated 2

ChallengeVisibility

Describes who can see and join the challenge.

Name Description Value
Unknown 0
InviteOnly

Everyone can see the challenge, but only those invited can join it.

1
Public

Everyone can see and join the challenge.

2
Private

Only those invited can see and join the challenge.

3

ChallengeViewerFilter

Name Description Value
Unknown 0
AllVisible 1
Participating 2
Invited 3
ParticipatingOrInvited 4

LeaderboardFilterType

Name Description Value
None 0
Friends 1
Unknown 2
UserIds 3

LeaderboardStartAt

From where to start returning leaderboard entries.

Name Description Value
Top

To return entries from top 1.

0
CenteredOnViewer

To place the current logged-in user's entry in the middle of the list on the first page. For example, if the total number of entries is 10, pageSize is set to 5, and the user's rank is top 5, the ranks displayed on the first page will be top 3, 4, 5, 6, and 7. Top 1 and 2 will not be displayed, and top 8, 9, and 10 will be displayed on the second page.

1
CenteredOnViewerOrTop

To place the current logged-in user's entry on the top of the list on the first page. For example, if the total number of entries is 10, pageSize is set to 5, and the user's rank is top 5, the ranks displayed on the first page will be top 5, 6, 7, 8, and 9. Top 1, 2, 3, and 4 will not be displayed, and top 10 will be displayed on the second page.

2
Unknown

To returns an empty list.

3

RoomJoinability

Name Description Value
Unknown 0
AreIn 1
AreKicked 2
CanJoin 3
IsFull 4
NoViewer 5
PolicyPrevents 6

RoomJoinPolicy

Name Description Value
None 0
Everyone 1
FriendsOfMembers 2
FriendsOfOwner 3
InvitedUsers 4
Unknown 5

RoomType

Name Description Value
Unknown 0
Matchmaking 1
Moderated 2
Private 3

GameInitializeResult

Name Description Value
Success 0
Uninitialized 1
NetworkError 2
InvalidCredentials 3
ServiceNotAvaliable 4
Unknown 5
InvalidServerAddr 6
DupInitialize 7

RoomMembershipLockStatus

Name Description Value
Unknown 0
Lock 1
Unlock 2

UserOrdering

Name Description Value
None 0
PresenceAlphabetical 1

AddonsType

The type of add-on

Name Description Value
Invalid -1
Durable

The add-on is always available once a user buys it.

0
Consumable

The add-on can be consumed by a user and the user can buy it again once the add-on is consumed.

1
Subscription

Subscription add-on. Users need to regularly pay subscription fees.

2

UserPresenceStatus

Whether the user is online or offline.

Name Description Value
Unknown

Unknown status.

0
OnLine

The user is online.

1
OffLine

The user is offline.

2

Gender

User's gender.

Name Description Value
Unknown 0
Male 1
Female 2

AssetFileDownloadCompleteStatus

Name Description Value
Downloading 0
Succeed 1
Failed 2

CancelReason

The reason why the subscription is canceled.  IAPService.GetSubscriptionStatus will return a subscription status structure. The cancel reason describes why the subscription is canceled.

Name Description Value
None 0
UserCancelsExpiration

The user canceled automatic renewal.

1
DeductionFailedExpired

Deduction for automatic renewal failed.

2
NoMainApplicationInterest

The user did not buy the app.

3

SensitiveProposal

The strategy proposed to handle the text and the user that created the text. It's the result of  ComplianceService.DetectSensitive.

Name Description Value
Pass

The text is legal.

0
OnlySelfVisible

Only the user that created the text could see it.

1
UserMute

Forbid the user from publishing texts for several days.

2
RejectSubmit

Prevent the user from submitting the text.

3

DetectSensitiveScene

Describes where the text appears in the app. Used for  ComplianceService.DetectSensitive.

Name Description Value
UserName

The text is in a username.

1
RoomName

The text is in a room name.

2
RoomChat

The text is in a in-room-chat message.

3

DiscountType

Name Description Value
Invalid -1
Null 0
FreeTrial 1
Discount 2

EntitlementStatus

The entitlement status of a subscription add-on. Used for  IAPService.GetSubscriptionStatus.

Name Description Value
None 0
Valid

The user is entitled to use the subscription add-on.

1
Invalid

The user is not entitled to use the subscription add-on.

2
GracePeriod 3
Pause 4
Expired

The subscription has expired.

5
Cancel

The user has canceled the subscription. But the user has entitlement to the product now.

6

LaunchType

How the app is launched. You can use it to determine how to parse  Models.LaunchDetails. Please ref  ApplicationService.GetLaunchDetails.

Name Description Value
Unknown 0
Normal

The app is launched by clicking the app's icon.

1
RoomInvite

The user clicks the room invitation message to launch the app.

2
Deeplink

The user clicks the presence invitation message to launch the app.

4
ChallengeInvite

The user clicks the challenge invitation message to launch the app.

5

LaunchResult

Name Description Value
Unknown 0
Success 1
FailedRoomFull 2
FailedGameAlreadyStarted 3
FailedRoomNotFound 4
FailedUserDeclined 5
FailedOtherReason 6

RtcMuteState

The state of a user's local audio.

Name Description Value
Off

Muted.

0
On

On.

1

RtcPauseResumeMediaType

The type of media to pause or resume.

Name Description Value
Audio 0
Video 1
AudioAndVideo 2

RtcMediaStreamType

The type of media stream.

Name Description Value
Audio 1
Video 2
Both 3

RtcEngineInitResult

The result of RTC engine initialization.

Name Description Value
Unknown -999
AlreadyInitialized -1
InvalidConfig -2
SdkNotInitialized -3
Success 0

RtcEarMonitorMode

The status of in-ear monitoring mode.

Name Description Value
Off 0
On 1

RtcStreamIndex

Name Description Value
Main 0
Screen 1

RtcSyncInfoStreamType

The type of stream sync info. The stream sync info will be uploaded to the server with the audio data.

Name Description Value
Audio 0

RtcScreenMediaType

Name Description Value
VideoOnly 0
AudioOnly 1
VideoAndAudio 2

RtcAudioScenarioType

Name Description Value
Music 0
HighQualityCommunication 1
Communication 2
Media 3
GameStreaming 4

RtcAudioPlaybackDevice

Name Description Value
Headset 1
EarPiece 2
SpeakerPhone 3
HeadsetBlueTooth 4
HeadsetUsb 5

RtcRoomProfileType

The type of the room.

Name Description Value
Communication

Communication room.

0
LiveBroadcasting

Live broadcasting room.

1
Game

Gaming room.

2
CloudGame

Cloud gaming room.

3
LowLatency

Low-latency room.

4

RtcAudioSourceType

Name Description Value
External 0
Internal 1

RtcAudioSampleRate

Name Description Value
Auto -1
F8000 8000
F16000 16000
F32000 32000
F44100 44100
F48000 48000

RtcAudioChannel

Name Description Value
Auto -1
Mono 1
Stereo 2

RtcColorSpace

Name Description Value
Unknown 0
YCbCrBT601LimitedRange 1
YCbCrBT601FullRange 2
YCbCrBT709LimitedRange 3
YCbCrBT709FullRange 4

MatchmakingStatApproach

Name Description Value
Unknown 0
Trailing 1
Swingy 2

MessageType

Name Description Value
Unknown -1
PlatformInitializeAndroidAsynchronous 1
User_GetLoggedInUser 10000
User_GetAccessToken 10001
User_Get 10002
User_LaunchFriendRequestFlow 10003
User_GetLoggedInUserFriends 10004
User_GetNextUserArrayPage 10005
User_GetLoggedInUserFriendsAndRooms 10006
User_GetAuthorizedPermissions 10007
User_RequestUserPermissions 10008
User_GetRelations 10009
User_GetIdToken 10010
User_EntitlementCheck 10011
Notification_Rtc_OnRoomStats 10200
Notification_Rtc_OnJoinRoom 10201
Notification_Rtc_OnLeaveRoom 10202
Notification_Rtc_OnUserLeaveRoom 10203
Notification_Rtc_OnUserJoinRoom 10204
Notification_Rtc_OnConnectionStateChange 10205
Notification_Rtc_OnWarn 10206
Notification_Rtc_OnRoomWarn 10207
Notification_Rtc_OnRoomError 10208
Notification_Rtc_OnError 10209
Notification_Rtc_OnUserStartAudioCapture 10210
Notification_Rtc_OnAudioPlaybackDeviceChanged 10211
Notification_Rtc_OnRemoteAudioPropertiesReport 10212
Notification_Rtc_OnLocalAudioPropertiesReport 10213
Notification_Rtc_OnUserStopAudioCapture 10214
Notification_Rtc_OnUserMuteAudio 10215
Notification_Rtc_OnMediaDeviceStateChanged 10216
Notification_Rtc_OnRoomMessageReceived 10217
Notification_Rtc_OnUserMessageReceived 10218
Notification_Rtc_OnTokenWillExpire 10219
Notification_Rtc_OnStreamSyncInfoReceived 10220
Notification_Rtc_OnVideoDeviceStateChanged 10221
Notification_Rtc_OnFirstLocalVideoFrameCaptured 10222
Notification_Rtc_OnRoomBinaryMessageReceived 10223
Notification_Rtc_OnLocalVideoSizeChanged 10224
Notification_Rtc_OnScreenVideoFrameSendStateChanged 10225
Notification_Rtc_OnUserBinaryMessageReceived 10226
Notification_Rtc_OnLocalVideoStateChanged 10227
Notification_Rtc_OnUserMessageSendResult 10228
Notification_Rtc_OnUserUnPublishScreen 10229
Notification_Rtc_OnRoomMessageSendResult 10230
Notification_Rtc_OnUserPublishStream 10231
Notification_Rtc_OnUserUnPublishStream 10232
Notification_Rtc_OnUserPublishScreen 10233
Rtc_GetToken 10300
Matchmaking_Browse2 10400
Matchmaking_Browse2CustomPage 10401
Matchmaking_Cancel2 10402
Matchmaking_CreateAndEnqueueRoom2 10404
Matchmaking_Enqueue2 10408
Matchmaking_EnqueueRoom2 10410
Matchmaking_GetAdminSnapshot 10411
Matchmaking_GetStats 10412
Matchmaking_ReportResultInsecure 10414
Matchmaking_StartMatch 10415
Room_CreateAndJoinPrivate 10500
Room_CreateAndJoinPrivate2 10501
Room_Get 10502
Room_GetCurrent 10503
Room_GetCurrentForUser 10504
Room_GetInvitableUsers 10505
Room_GetInvitableUsers2 10506
Room_GetModeratedRooms 10507
Room_GetNextRoomArrayPage 10508
Room_InviteUser 10509
Room_Join 10510
Room_Join2 10511
Room_KickUser 10512
Room_LaunchInvitableUserFlow 10513
Room_Leave 10514
Room_SetDescription 10515
Room_UpdateDataStore 10516
Room_UpdateMembershipLockStatus 10517
Room_UpdateOwner 10518
Room_UpdatePrivateRoomJoinPolicy 10519
Room_JoinNamed 10520
Room_GetNamedRooms 10521
Notification_Matchmaking_MatchFound 10600
Notification_Room_InviteAccepted 10601
Notification_Room_RoomUpdate 10603
Notification_Game_ConnectionEvent 10604
Notification_Game_RequestFailed 10605
Notification_Game_StateReset 10606
Notification_GetNextRoomInviteNotificationArrayPage 10607
Notification_GetRoomInvites 10608
Notification_MarkAsRead 10609
Notification_Challenge_LaunchByInvite 10610
PlatformGameInitializeAsynchronous 10700
Leaderboard_Get 10800
Leaderboard_GetNextLeaderboardArrayPage 10801
Leaderboard_GetEntries 10802
Leaderboard_GetEntriesAfterRank 10803
Leaderboard_GetEntriesByIds 10804
Leaderboard_GetNextEntries 10805
Leaderboard_GetPreviousEntries 10806
Leaderboard_WriteEntry 10807
Leaderboard_WriteEntryWithSupplementaryMetric 10808
Achievements_AddCount 10820
Achievements_AddFields 10821
Achievements_GetAllDefinitions 10822
Achievements_GetAllProgress 10823
Achievements_GetDefinitionsByName 10824
Achievements_GetNextAchievementDefinitionArrayPage 10825
Achievements_GetNextAchievementProgressArrayPage 10826
Achievements_GetProgressByName 10827
Achievements_Unlock 10828
Challenges_Invite 10850
Challenges_Get 10851
Challenges_GetList 10852
Challenges_GetEntries 10853
Challenges_GetEntriesAfterRank 10854
Challenges_GetEntriesByIds 10855
Challenges_Join 10856
Challenges_Leave 10857
Challenges_LaunchInvitableUserFlow 10858
Application_LaunchOtherApp 11001
Presence_GetSentInvites 11002
Presence_GetInvitableUsers 11003
Presence_SendInvites 11004
Presence_GetDestinations 11005
Presence_Clear 11006
Presence_Set 11007
Notification_ApplicationLifecycle_LaunchIntentChanged 11008
Notification_Presence_JoinIntentReceived 11009
Application_LaunchOtherAppByPresence 11011
Application_LaunchOtherAppByMessage 11013
Presence_ShareMedia 11014
Presence_LaunchInvitePanel 11015
Presence_SendCustomInvites 11016
Application_LaunchStore 11017
Application_GetVersion 11018
IAP_GetProductsBySKU 12001
IAP_GetViewerPurchases 12002
IAP_LaunchCheckoutFlow 12003
IAP_ConsumePurchase 12004
IAP_GetSubscriptionStatus 12005
Sport_GetUserInfo 12500
Sport_GetDailySummary 12501
Sport_GetSummary 12502
AssetFile_DeleteById 13001
AssetFile_DeleteByName 13002
AssetFile_DownloadById 13003
AssetFile_DownloadByName 13004
AssetFile_DownloadCancelById 13005
AssetFile_DownloadCancelByName 13006
AssetFile_GetList 13007
AssetFile_StatusById 13008
AssetFile_StatusByName 13009
AssetFile_GetNextAssetDetailsArrayPage 13010
Notification_AssetFile_DownloadUpdate 13101
Notification_AssetFile_DeleteForSafety 13102
Compliance_DetectSensitive 15015

RtcJoinRoomType

Whether it is the first time that the user has joined the room or if the user is reconnected to the room.

Name Description Value
First

It is the first time that the user has joined the room.

0
Reconnected

The user is reconnected to the room.

1

RtcUserLeaveReasonType

Name Description Value
Quit 0
Dropped 1

RtcMediaDeviceType

The type of media(?) device.

Name Description Value
AudioUnknown

Unknown audio device.

-1
AudioRenderDevice

Audio renderer.

0
AudioCaptureDevice

Audio capture device.

1

RtcMediaDeviceState

Name Description Value
Started 1
Stopped 2
RuntimeError 3
Added 4
Removed 5

RtcMediaDeviceError

Types of media device errors.

Name Description Value
Ok

No error.

0
NoPermission 1
DeviceBusy 2
DeviceFailure 3
DeviceNotFound 4
DeviceDisconnected 5
DeviceNoCallback 6
UnSupporttedFormat 7

RtcStreamRemoveReason

The reason why the remote user canceled publishing stream.

Name Description Value
Unpublish 0
PublishFailed 1
KeepLiveFailed 2
ClientDisconnected 3
Republish 4
Other 5

GameConnectionEvent

Various kinds of events that may take place in networking.

Name Description Value
Connected 0
Closed 1
Lost 2
Resumed 3
KickedByRelogin 4
KickedByGameServer 5
GameLogicError 6
Unknown 7

GameRequestFailedReason

Various reasons for failed requests to platform game service.

Name Description Value
None 0
NotInitialized

Platform services are not initialized.

1
Uninitialized

Platform services has been uninitialized.

2
CurrentlyUnavailable 3
CurrentlyUnknown 4

SportTarget

Users purpose of playing sports.

Name Description Value
LoseFat

To lose weight.

0
KeepFit

To keep fit.

1

PeriodType

The period type of the subscription.

Name Description Value
Invalid -1
None 0
Hour 1
Day 2
Week 3
Month 4
Quarter 5
Year 6

UserRelationType

The relationship between two users.

You can call  UserService.GetUserRelations to query user relation.

Name Description Value
Unknown 0
IsFriend

The queried user is the current user's friend.

1
NotFriend

The queried user is not the current user's friend and the current user can send a friend request to the queried user.

2
Blocked

The queried user is blocked by the current user.

3
BlockedBy

The current user is blocked by the queried user, so the current user cannot send a friend request to the queried user.

4
ApplyingFriend

The current user has sent a friend request to the queried user.

5

PlatformInitializeResult

The initialize result of Platform.

Name Description Value
Unknown -999
NetError

The initialization need fetch application configuration. If the network request fails,you will get this error.

-6
MissingImpl

SDK depends on some system function. This error means failed to find implementation

-5
LoadImplFailed

Load implementation so failed.

-4
InternalError

Init failed with unclear reason.

-3
InvalidParams

The appid param is invalid. Please check the param.

-2
AlreadyInitialized

SDK has already been initialized.

-1
Success

SDK is initialized successfully.

0

ShareMediaType

The type of media to share.

Name Description Value
Video

Videos attached with thumbnails.

0
Image

Screenshots.

1

ShareAppType

The app which the videos or screenshots are shared to.

Name Description Value
Douyin

The  Douyin app.

0

RtcPrivilege

Name Description Value
PublishStream 0
PublishAudioStream 1
PublishVideoStream 2
SubscribeStream 3

RtcConnectionState

Name Description Value
Disconnected 1
Connecting 2
Connected 3
Reconnecting 4
Reconnected 5
Lost 6