Interface ILobbyService
Service for Lobbies. Provides user the ability to create, delete, update, and query Lobbies. Includes operations for interacting with given players in a Lobby context.
Namespace: Unity.Services.Lobbies
Assembly: Unity.Services.Multiplayer.dll
Syntax
public interface ILobbyService
Methods
CreateLobbyAsync(string, int, CreateLobbyOptions)
Create a Lobby with a given name and specified player limit. Async operation.
Declaration
Task<Lobby> CreateLobbyAsync(string lobbyName, int maxPlayers, CreateLobbyOptions options = null)
Parameters
Type | Name | Description |
---|---|---|
string | lobbyName | Name of new lobby. |
int | maxPlayers | Player limit. |
Create |
options | Optional request parameters. |
Returns
Exceptions
Type | Condition |
---|---|
Argument |
Thrown when |
Invalid |
Thrown when |
Lobby |
Thrown when the lobby service returns an error. |
CreateOrJoinLobbyAsync(string, string, int, CreateLobbyOptions)
Create or join a Lobby with a given name and ID and specified player limit. Async operation.
Declaration
Task<Lobby> CreateOrJoinLobbyAsync(string lobbyId, string lobbyName, int maxPlayers, CreateLobbyOptions options = null)
Parameters
Type | Name | Description |
---|---|---|
string | lobbyId | ID of the lobby to create/join. |
string | lobbyName | Name of the lobby to create/join. |
int | maxPlayers | Player limit. |
Create |
options | Optional request parameters. |
Returns
Exceptions
Type | Condition |
---|---|
Argument |
Throw when |
Invalid |
Thrown when |
Lobby |
Thrown when the lobby service returns an error. |
DeleteLobbyAsync(string)
Delete a Lobby by specifying a Lobby ID. Async operation.
Declaration
Task DeleteLobbyAsync(string lobbyId)
Parameters
Type | Name | Description |
---|---|---|
string | lobbyId | ID of the Lobby to delete. |
Returns
Type | Description |
---|---|
Task | Awaitable task. |
Exceptions
Type | Condition |
---|---|
Argument |
Thrown when |
Lobby |
Thrown when the lobby service returns an error. |
DownloadMigrationDataAsync(MigrationDataInfo, LobbyDownloadMigrationDataOptions)
Download lobby migration data.
Declaration
Task<LobbyMigrationData> DownloadMigrationDataAsync(MigrationDataInfo migrationDataInfo, LobbyDownloadMigrationDataOptions options)
Parameters
Type | Name | Description |
---|---|---|
Migration |
migrationDataInfo | Is the lobby migration data information. |
Lobby |
options | Is the migration Data download request Parameters. |
Returns
Type | Description |
---|---|
Task<Lobby |
Task for Migration |
Remarks
This task is not cancellable. Timeout can be configured in DownloadMigrationDataOptions.
Exceptions
Type | Condition |
---|---|
Argument |
Thrown when |
Lobby |
Thrown when the lobby service returns an
error.
Migration |
GetJoinedLobbiesAsync()
Async Operation. Get currently joined lobbies.
Declaration
Task<List<string>> GetJoinedLobbiesAsync()
Returns
Exceptions
Type | Condition |
---|---|
Lobby |
Thrown when the lobby service returns an error. |
GetLobbyAsync(string)
Retrieve data for a Lobby by specifying a Lobby ID. Async operation.
Declaration
Task<Lobby> GetLobbyAsync(string lobbyId)
Parameters
Type | Name | Description |
---|---|---|
string | lobbyId | ID of the Lobby to retrieve. |
Returns
Exceptions
Type | Condition |
---|---|
Argument |
Thrown when |
Lobby |
Thrown when the lobby service returns an error. |
GetMigrationDataInfoAsync(string)
Get lobby migration data information.
Declaration
Task<MigrationDataInfo> GetMigrationDataInfoAsync(string lobbyId)
Parameters
Type | Name | Description |
---|---|---|
string | lobbyId | The ID of the lobby to get migration data information. |
Returns
Type | Description |
---|---|
Task<Migration |
The migration data information for the lobby. |
Exceptions
Type | Condition |
---|---|
Argument |
Thrown when |
Lobby |
Thrown when the lobby service returns an error. |
JoinLobbyByCodeAsync(string, JoinLobbyByCodeOptions)
Join a Lobby using a given Lobby Invite Code. Async operation.
Declaration
Task<Lobby> JoinLobbyByCodeAsync(string lobbyCode, JoinLobbyByCodeOptions options = null)
Parameters
Type | Name | Description |
---|---|---|
string | lobbyCode | Invite Code for target lobby. |
Join |
options | Optional request parameters. |
Returns
Exceptions
Type | Condition |
---|---|
Argument |
Thrown when |
Lobby |
Thrown when the lobby service returns an error. |
JoinLobbyByIdAsync(string, JoinLobbyByIdOptions)
Join a Lobby by specifying the Lobby ID. Async operation.
Declaration
Task<Lobby> JoinLobbyByIdAsync(string lobbyId, JoinLobbyByIdOptions options = null)
Parameters
Type | Name | Description |
---|---|---|
string | lobbyId | ID of the Lobby to join. |
Join |
options | Optional request parameters. |
Returns
Exceptions
Type | Condition |
---|---|
Argument |
Thrown when |
Lobby |
Thrown when the lobby service returns an error. |
QueryLobbiesAsync(QueryLobbiesOptions)
Query and retrieve a list of lobbies that meet specified query parameters. Async operation.
Declaration
Task<QueryResponse> QueryLobbiesAsync(QueryLobbiesOptions options = null)
Parameters
Type | Name | Description |
---|---|---|
Query |
options | Query parameters. |
Returns
Type | Description |
---|---|
Task<Query |
Query response that includes list of Lobbies meeting specified parameters. |
Exceptions
Type | Condition |
---|---|
Lobby |
Thrown when the lobby service returns an error. |
QuickJoinLobbyAsync(QuickJoinLobbyOptions)
Query available lobbies and join a randomly selected instance. Async operation.
Declaration
Task<Lobby> QuickJoinLobbyAsync(QuickJoinLobbyOptions options = null)
Parameters
Type | Name | Description |
---|---|---|
Quick |
options | Optional parameters (includes queryable arguments). |
Returns
Exceptions
Type | Condition |
---|---|
Lobby |
Thrown when the lobby service returns an error. |
ReconnectToLobbyAsync(string)
Reconnects to the lobby.
Declaration
Task<Lobby> ReconnectToLobbyAsync(string lobbyId)
Parameters
Type | Name | Description |
---|---|---|
string | lobbyId | The ID of the lobby to reconnect to. |
Returns
RemovePlayerAsync(string, string)
Remove a player from a specified Lobby. Async operation.
Declaration
Task RemovePlayerAsync(string lobbyId, string playerId)
Parameters
Type | Name | Description |
---|---|---|
string | lobbyId | Target Lobby ID to remove player from. |
string | playerId | Player ID to remove. |
Returns
Type | Description |
---|---|
Task | Awaitable task. |
Exceptions
Type | Condition |
---|---|
Argument |
Throw when |
Lobby |
Thrown when the lobby service returns an error. |
SendHeartbeatPingAsync(string)
Send a heartbeat ping to keep the Lobby active. Async operation.
Declaration
Task SendHeartbeatPingAsync(string lobbyId)
Parameters
Type | Name | Description |
---|---|---|
string | lobbyId | ID of the Lobby to ping. |
Returns
Type | Description |
---|---|
Task | Awaitable task. |
Exceptions
Type | Condition |
---|---|
Argument |
Thrown when |
Lobby |
Thrown when the lobby service returns an error. |
SubscribeToLobbyEventsAsync(string, LobbyEventCallbacks)
A subscription to the given lobby is created and the given callbacks are associated with it. The return ILobbyEvents interface can be used to unsubscribe and re-subscribe to the connection. The callbacks object provided will be used to provide the notifications from the subscription.
Declaration
Task<ILobbyEvents> SubscribeToLobbyEventsAsync(string lobbyId, LobbyEventCallbacks callbacks)
Parameters
Type | Name | Description |
---|---|---|
string | lobbyId | The ID of the lobby you are subscribing to events for. |
Lobby |
callbacks | The callbacks you provide, which will be called as notifications arrive from the subscription. |
Returns
Type | Description |
---|---|
Task<ILobby |
An interface to change the callbacks associated with the subscription, or to unsubscribe and re-subscribe to the lobby's events. |
UpdateLobbyAsync(string, UpdateLobbyOptions)
Update the specified Lobby with the given option parameters. Async operation.
Declaration
Task<Lobby> UpdateLobbyAsync(string lobbyId, UpdateLobbyOptions options)
Parameters
Type | Name | Description |
---|---|---|
string | lobbyId | Lobby ID to update. |
Update |
options | Parameters to update. |
Returns
Exceptions
Type | Condition |
---|---|
Argument |
Throw when |
Lobby |
Thrown when the lobby service returns an error. |
UpdatePlayerAsync(string, string, UpdatePlayerOptions)
Update player lobby associated data with the given option parameters. Async operation.
Declaration
Task<Lobby> UpdatePlayerAsync(string lobbyId, string playerId, UpdatePlayerOptions options)
Parameters
Type | Name | Description |
---|---|---|
string | lobbyId | Lobby ID to update. |
string | playerId | Player ID to update. |
Update |
options | Parameters to update. |
Returns
Exceptions
Type | Condition |
---|---|
Argument |
Throw when |
Lobby |
Thrown when the lobby service returns an error. |
UploadMigrationDataAsync(MigrationDataInfo, byte[], LobbyUploadMigrationDataOptions)
Upload lobby migration data.
Declaration
Task<LobbyUploadMigrationDataResults> UploadMigrationDataAsync(MigrationDataInfo migrationDataInfo, byte[] data, LobbyUploadMigrationDataOptions options)
Parameters
Type | Name | Description |
---|---|---|
Migration |
migrationDataInfo | Is the lobby migration data information. |
byte[] | data | Is the binary migration data. |
Lobby |
options | Is the migration data download request Parameters. |
Returns
Type | Description |
---|---|
Task<Lobby |
Task for Unity.Services.Lobbies.Internal.UploadMigrationDataResults. Unity.Services.Lobbies.Internal.UploadMigrationDataResults.Version indicates uploaded data version. |
Remarks
This task is not cancellable. Timeout can be configured in DownloadMigrationDataOptions.
Exceptions
Type | Condition |
---|---|
Argument |
Thrown when |
Lobby |
Thrown when the lobby service returns an
error.The Lobby |