StovePCMatchmaking(Native dll): Matchmaking API

StovePCMatchmaking(Native dll) 1.0.4.1

- Main Page
- Modules
- Classes
- Files
- Examples

Functions
Matchmaking API

Describes the StovePCMatchmaking SDK interface. More...

## Functions

STOVEPCMATCHMAKINGSDK_API bool | StovePCMatchmaking_Init (const StovePCMatchmakingLogLevel loglevel)
STOVEPCMATCHMAKINGSDK_API void | StovePCMatchmaking_UnInit ()
STOVEPCMATCHMAKINGSDK_API void | StovePCMatchmaking_RegisterCallback (const StovePCMatchmakingCallback &callback)
STOVEPCMATCHMAKINGSDK_API void | StovePCMatchmaking_Connect (const wchar_t *nickname)
STOVEPCMATCHMAKINGSDK_API void | StovePCMatchmaking_Disconnect ()
STOVEPCMATCHMAKINGSDK_API StovePCMatchmakingConnectionState | StovePCMatchmaking_GetConnectionState ()
STOVEPCMATCHMAKINGSDK_API void | StovePCMatchmaking_RunCallback ()
STOVEPCMATCHMAKINGSDK_API void | StovePCMatchmaking_AddRequestLobbyListFilter (const wchar_t *keyToMatch, const wchar_t *valueToMatch, const StovePCMatchmakingComparisonType oper)
STOVEPCMATCHMAKINGSDK_API void | StovePCMatchmaking_RequestLobbyList (const __int64 pageOffset, const int maxCount)
STOVEPCMATCHMAKINGSDK_API void | StovePCMatchmaking_GetMyLobbyList ()
STOVEPCMATCHMAKINGSDK_API void | StovePCMatchmaking_CreateLobby (const wchar_t *title, const wchar_t *password, const int maxUser)
STOVEPCMATCHMAKINGSDK_API void | StovePCMatchmaking_JoinLobby (const wchar_t *lobby, const wchar_t *password)
STOVEPCMATCHMAKINGSDK_API void | StovePCMatchmaking_JoinRandomLobby (const StovePCMatchmakingMetadata *conditionArray, const int conditionCount, const int maxUser)
STOVEPCMATCHMAKINGSDK_API void | StovePCMatchmaking_SendLobbyBinarydata (const wchar_t *lobby, const unsigned char *data, const int dataLength, const wchar_t *meta)
STOVEPCMATCHMAKINGSDK_API void | StovePCMatchmaking_SendLobbyMsg (const wchar_t *lobby, const wchar_t *message, const wchar_t *meta)
STOVEPCMATCHMAKINGSDK_API void | StovePCMatchmaking_LeaveLobby (const wchar_t *lobby)
STOVEPCMATCHMAKINGSDK_API void | StovePCMatchmaking_DestroyLobby (const wchar_t *lobby)
STOVEPCMATCHMAKINGSDK_API void | StovePCMatchmaking_SetLobbyOwner (const wchar_t *lobby, const unsigned __int64 UID)
STOVEPCMATCHMAKINGSDK_API void | StovePCMatchmaking_SendLobbyInvitation (const wchar_t *lobby, const unsigned __int64 UID, const wchar_t *message)
STOVEPCMATCHMAKINGSDK_API void | StovePCMatchmaking_SendRejectLobbyInvitation (const wchar_t *lobby, const unsigned __int64 UID)
STOVEPCMATCHMAKINGSDK_API void | StovePCMatchmaking_KickUser (const wchar_t *lobby, const unsigned __int64 UID)
STOVEPCMATCHMAKINGSDK_API void | StovePCMatchmaking_BanUser (const wchar_t *lobby, const unsigned __int64 UID)
STOVEPCMATCHMAKINGSDK_API void | StovePCMatchmaking_UnBanUser (const wchar_t *lobby, const unsigned __int64 UID)
STOVEPCMATCHMAKINGSDK_API void | StovePCMatchmaking_SetLobbyData (const wchar_t *lobby, const wchar_t *key, const wchar_t *value)
STOVEPCMATCHMAKINGSDK_API void | StovePCMatchmaking_GetLobbyData (const wchar_t *lobby)
STOVEPCMATCHMAKINGSDK_API void | StovePCMatchmaking_SetLobbyUserdata (const wchar_t *lobby, const wchar_t *key, const wchar_t *value)
STOVEPCMATCHMAKINGSDK_API void | StovePCMatchmaking_GetLobbyUserList (const wchar_t *lobby)
STOVEPCMATCHMAKINGSDK_API void | StovePCMatchmaking_GetLobbyBanUserList (const wchar_t *lobby)
STOVEPCMATCHMAKINGSDK_API void | StovePCMatchmaking_StartGame (const wchar_t *lobby, const wchar_t *serverIP, const int serverPort)
STOVEPCMATCHMAKINGSDK_API void | StovePCMatchmaking_EndGame (const wchar_t *lobby, const wchar_t *serverIP, const int serverPort)
STOVEPCMATCHMAKINGSDK_API void | StovePCMatchmaking_GetMyFriendList ()

## Detailed Description

Describes the StovePCMatchmaking SDK interface.

## Function Documentation

STOVEPCMATCHMAKINGSDK_API bool StovePCMatchmaking_Init | ( | const StovePCMatchmakingLogLevel | loglevel | ) |

Initialize the library.

Parameters

  [in] | config | About matchmaking settings
  [in] | loglevel | Log Level

Returns
  bool initialization successful

Examples:
  stove_pc_matchmaking_sample.cpp.

STOVEPCMATCHMAKINGSDK_API void StovePCMatchmaking_UnInit | ( |  | ) |

Release all resources allocated by the SDK.

Examples:
  stove_pc_matchmaking_sample.cpp.

STOVEPCMATCHMAKINGSDK_API void StovePCMatchmaking_RegisterCallback | ( | const StovePCMatchmakingCallback & | callback | ) |

Register a callback for the StovePCMatchmakingSDK.

Parameters

  [in] | callback | About matchmaking callbacks

Examples:
  stove_pc_matchmaking_sample.cpp.

STOVEPCMATCHMAKINGSDK_API void StovePCMatchmaking_Connect | ( | const wchar_t * | nickname | ) |

Connect to the matchmaking server.
OnConnect is called.

Parameters

  [in] | accessToken | Member Access Token
  [in] | UID | Username to access the matchmaking server
  [in] | nickname | User nickname

Examples:
  stove_pc_matchmaking_sample.cpp.

STOVEPCMATCHMAKINGSDK_API void StovePCMatchmaking_Disconnect | ( |  | ) |

Terminate your connection to the matchmaking server.
OnDisconnect is called.

Examples:
  stove_pc_matchmaking_sample.cpp.

STOVEPCMATCHMAKINGSDK_API StovePCMatchmakingConnectionState StovePCMatchmaking_GetConnectionState | ( |  | ) |

Tells you the status of your connection to the matchmaking server.

Returns
  StovePCMatchmakingConnectionState Server connection status

STOVEPCMATCHMAKINGSDK_API void StovePCMatchmaking_RunCallback | ( |  | ) |

Call the callback function received from the server.
Gets all callback functions that have been enqueued.
The callback function is called on the thread where StovePCMatchmaking_RunCallback was executed.

Examples:
  stove_pc_matchmaking_sample.cpp.

STOVEPCMATCHMAKINGSDK_API void StovePCMatchmaking_AddRequestLobbyListFilter | ( | const wchar_t * | keyToMatch,
|  | const wchar_t * | valueToMatch,
|  | const StovePCMatchmakingComparisonType | oper
| ) |  |

Adds a lobby search condition. Can be nested, and each nesting will be an "AND" logical operation on the preceding search condition.

- 예시 : "map = 1 and mode = 2" In-Lobby Search
  1. StovePCMatchmaking_AddRequestLobbyListFilter("map", "1", "=");
  2. StovePCMatchmaking_AddRequestLobbyListFilter("mode", "2", "=");
  3. StovePCMatchmaking_RequestLobbyList() StovePCMatchmaking_RequestLobbyList When called, the lobby search conditions are initialized.
     Parameters

       [in] | keyToMatch | Metadata keys
       [in] | valueToMatch | Metadata values
       [in] | oper | Comparison operators [ = != <> > >= < <= ]

STOVEPCMATCHMAKINGSDK_API void StovePCMatchmaking_RequestLobbyList | ( | const __int64 | pageOffset,
|  | const int | maxCount
| ) |  |

The user finds a lobby that matches their search criteria.

- Performs a search for all lobbies when there are no search criteria.
- StovePCMatchmaking_AddRequestLobbyListFilter Add logical search criteria.
- Example : "map = 1 and mode = 2" In-Lobby Search
  1. StovePCMatchmaking_AddRequestLobbyListFilter("map", "1", "=");
  2. StovePCMatchmaking_AddRequestLobbyListFilter("mode", "2", "=");
  3. StovePCMatchmaking_RequestLobbyList()
- Existing lobby search conditions are initialized after the call. Sorted by start offset to most recently created lobby.
  OnRequestLobbyList is called.
  Parameters

    [in] | pageOffset | Search page start position offset, default if 0 or less ( Default : 0 )
    [in] | maxCount | Number of lobbies to search at once

STOVEPCMATCHMAKINGSDK_API void StovePCMatchmaking_GetMyLobbyList | ( |  | ) |

Request information about the lobby you belong to.
OnRequestMyLobbyList is called.

STOVEPCMATCHMAKINGSDK_API void StovePCMatchmaking_CreateLobby | ( | const wchar_t * | title,
|  | const wchar_t * | password,
|  | const int | maxUser
| ) |  |

Create a lobby.
On success, OnCreateLobby, OnJoinLobby, OnUserJoin, and OnUpdateLobbyData are called in succession.

Parameters

  [in] | title | Title of the lobby you want to create
  [in] | password | It will be created as a private lobby when you enter your password.
  [in] | maxUser | Set the maximum number of people in the lobby.

STOVEPCMATCHMAKINGSDK_API void StovePCMatchmaking_JoinLobby | ( | const wchar_t * | lobby,
|  | const wchar_t * | password
| ) |  |

Join a lobby. You can't join a lobby if it doesn't exist.
On success, OnJoinLobby and OnUserJoin are called consecutively. For other users, OnUserJoin is called successively.

Parameters

  [in] | lobby | The lobby ID you want to join
  [in] | password | Passwords for private lobbies

STOVEPCMATCHMAKINGSDK_API void StovePCMatchmaking_JoinRandomLobby | ( | const StovePCMatchmakingMetadata * | conditionArray,
|  | const int | conditionCount,
|  | const int | maxUser
| ) |  |

Join a lobby that matches your search criteria. Automatically join one of the lobbies that match your search criteria.
Automatically creates a lobby if no lobbies match the search criteria.

- Search conditions only support "=" as a comparison operator, and array elements are concatenated with "AND".
- Example : "map = 1 and mode = 2" Involvement in lobbies -StovePCMatchmakingMetadata ( key = "map", value = "1" ) -StovePCMatchmakingMetadata ( key = "mode", value = "2" ) 성공시 OnJoinLobby, OnUserJoin 이 연속적으로 호출됩니다. 다른 유저는 OnUserJoin이 호출됩니다.
  Parameters

    [in] | conditionArray | Search criteria. The comparison operator is "=" fixed, and each array element is concatenated with "AND".
    [in] | conditionCount | Number of search condition arrays
    [in] | maxUser | Maximum number of users when creating a lobby

Examples:
  stove_pc_matchmaking_sample.cpp.

STOVEPCMATCHMAKINGSDK_API void StovePCMatchmaking_SendLobbyBinarydata | ( | const wchar_t * | lobby,
|  | const unsigned char * | data,
|  | const int | dataLength,
|  | const wchar_t * | meta
| ) |  |

Send lobby binary data to all my users.
OnSendLobbyBinarydata is called. For other users, OnRecvLobbyBinarydata is called.

Parameters

  [in] | lobby | Lobby ID to send binary data to
  [in] | data | Outgoing data array
  [in] | dataLength | Outgoing data size
  [in] | meta | Non-binary data to send (JSON string, profile, etc. can be sent to the other party)

STOVEPCMATCHMAKINGSDK_API void StovePCMatchmaking_SendLobbyMsg | ( | const wchar_t * | lobby,
|  | const wchar_t * | message,
|  | const wchar_t * | meta
| ) |  |

Sends a message to all users in the lobby.
OnSendLobbyMessage is called. For other users, OnRecvLobbyMessage is called.

Parameters

  [in] | lobby | Lobby ID to send the message to
  [in] | message | Outgoing messages
  [in] | meta | Data to send in addition to the message (you can send a JSON string, profile, etc. to the other party)

STOVEPCMATCHMAKINGSDK_API void StovePCMatchmaking_LeaveLobby | ( | const wchar_t * | lobby | ) |

Exit the lobby.

- The lobby is removed when no one is in it.
- When you are the lobby manager, the lobby is automatically handed over to another user (by calling the OnUpdateLobbyUser callback) and OnLeaveLobby is called. For the other user, OnUserLeave is called.
  Parameters

    [in] | lobby | The lobby ID you want to leave

Examples:
  stove_pc_matchmaking_sample.cpp.

STOVEPCMATCHMAKINGSDK_API void StovePCMatchmaking_DestroyLobby | ( | const wchar_t * | lobby | ) |

Delete a lobby. Only the owner of the room can do this.
OnDestroyLobby and OnLeaveLobby are called consecutively. For other users, OnLeaveLobby is called.

Parameters

  [in] | lobby | Lobby ID you want to delete

STOVEPCMATCHMAKINGSDK_API void StovePCMatchmaking_SetLobbyOwner | ( | const wchar_t * | lobby,
|  | const unsigned __int64 | UID
| ) |  |

Designate another user in the lobby as a captain. You can only be a room captain.
Your rating and their rating are exchanged.
OnSetLobbyOwner is called. Notify OnUpdateLobbyUser of your status change, and OnUpdateLobbyUser of your successor's status change.

Parameters

  [in] | lobby | Lobby ID
  [in] | UID | The username in the lobby where the room will be handed over

STOVEPCMATCHMAKINGSDK_API void StovePCMatchmaking_SendLobbyInvitation | ( | const wchar_t * | lobby,
|  | const unsigned __int64 | UID,
|  | const wchar_t * | message
| ) |  |

Invite to the lobby.
OnSendLobbyInvitation is called. For the invitee, OnRecvLobbyInvitation is called.

Parameters

  [in] | lobby | The lobby ID you want to invite
  [in] | UID | Username to invite
  [in] | message | Invitation message or password

STOVEPCMATCHMAKINGSDK_API void StovePCMatchmaking_SendRejectLobbyInvitation | ( | const wchar_t * | lobby,
|  | const unsigned __int64 | UID
| ) |  |

Decline a lobby invitation.
OnSendRejectLobbyInvitation is called. OnRecvRejectLobbyInvitation is also called on the invitee.

Parameters

  [in] | lobby | Invited Lobby ID
  [in] | UID | Invited user information

STOVEPCMATCHMAKINGSDK_API void StovePCMatchmaking_KickUser | ( | const wchar_t * | lobby,
|  | const unsigned __int64 | UID
| ) |  |

Kick a user who is participating in a lobby.
OnKickUser is called. OnLeaveLobby for the kick target and OnUserLeave for the other lobby user are called.

Parameters

  [in] | lobby | Lobby ID to expel
  [in] | UID | The username to be banned

STOVEPCMATCHMAKINGSDK_API void StovePCMatchmaking_BanUser | ( | const wchar_t * | lobby,
|  | const unsigned __int64 | UID
| ) |  |

Kick the user out if they are in the lobby, and restrict their access to the lobby afterward.
OnBanUser is called; OnLeaveLobby is called for the person being banned; and OnUserLeave is called for the other lobby user.

Parameters

  [in] | lobby | Van Halen Robbie ID
  [in] | UID | Username to ban

STOVEPCMATCHMAKINGSDK_API void StovePCMatchmaking_UnBanUser | ( | const wchar_t * | lobby,
|  | const unsigned __int64 | UID
| ) |  |

Releases a user you've kicked from the lobby from lobby access restrictions.
OnUnBanUser is called.

Parameters

  [in] | lobby | Lobby ID to unban
  [in] | UID | Username to unban

STOVEPCMATCHMAKINGSDK_API void StovePCMatchmaking_SetLobbyData | ( | const wchar_t * | lobby,
|  | const wchar_t * | key,
|  | const wchar_t * | value
| ) |  |

Adds/edits lobby metadata. Only the lobby owner can do this.
OnUpdateLobbyData and OnSetLobbyData are called consecutively. For other users, OnUpdateLobbyData is called.

Parameters

  [in] | lobby | Lobby ID
  [in] | key | Lobby Settings Key
  [in] | value | Lobby Setting Values

STOVEPCMATCHMAKINGSDK_API void StovePCMatchmaking_GetLobbyData | ( | const wchar_t * | lobby | ) |

View lobby metadata. You can only see the lobbies you've joined.
OnGetLobbydata is called.

Parameters

  [in] | lobby | Joined Lobby ID

STOVEPCMATCHMAKINGSDK_API void StovePCMatchmaking_SetLobbyUserdata | ( | const wchar_t * | lobby,
|  | const wchar_t * | key,
|  | const wchar_t * | value
| ) |  |

Add/edit your metadata.
Upon entering the lobby, an individual's customization data store is assigned.
OnUpdateLobbyUser and OnSetLobbyUserdata are called consecutively. For other users, OnUpdateLobbyUser is called.

Parameters

  [in] | lobby | Joined Lobby ID
  [in] | key | User settings data key
  [in] | value | User settings data values

STOVEPCMATCHMAKINGSDK_API void StovePCMatchmaking_GetLobbyUserList | ( | const wchar_t * | lobby | ) |

View the user's information in the lobby.
OnGetLobbyUserList is called.

Parameters

  [in] | lobby | Lobby ID

STOVEPCMATCHMAKINGSDK_API void StovePCMatchmaking_GetLobbyBanUserList | ( | const wchar_t * | lobby | ) |

View the information of a van user in the lobby.
OnGetLobbyBanUserList is called.

Parameters

  [in] | lobby | Lobby ID

STOVEPCMATCHMAKINGSDK_API void StovePCMatchmaking_StartGame | ( | const wchar_t * | lobby,
|  | const wchar_t * | serverIP,
|  | const int | serverPort
| ) |  |

Notifies the matchmaking server that a lobby game is about to start. Only the lobby owner can do this.
It will no longer be discovered, and you will not be able to join the lobby.
OnLobbyStartGame is called. For other users, OnLobbyStartGame is called.

Parameters

  [in] | lobby | Lobby ID where you started playing
  [in] | serverIP | The game server IP to connect to when the game starts (only used for game server integration)
  [in] | serverPort | Game server port to connect to when the game starts (only used when integrating a game server)

STOVEPCMATCHMAKINGSDK_API void StovePCMatchmaking_EndGame | ( | const wchar_t * | lobby,
|  | const wchar_t * | serverIP,
|  | const int | serverPort
| ) |  |

Notifies the matchmaking server that the lobby game is over. Only the lobby owner can do this.
The lobby is automatically deleted.
OnLobbyEndGame and OnLeaveLobby are called consecutively. For other users, OnLeaveLobby is called.

Parameters

  [in] | lobby | Joined Lobby ID
  [in] | serverIP | Game server IP to disconnect from when the game ends (only used for game server integration)
  [in] | serverPort | Game server port to disconnect from when the game ends (only used for game server integration)

STOVEPCMATCHMAKINGSDK_API void StovePCMatchmaking_GetMyFriendList | ( |  | ) |

Request my friends information.
OnGetMyFriendList is called.