v1.0.0
Latest
2022.3+

Interface IHostSession

A host's mutable handle on a session.

Namespace: Unity.Services.Multiplayer
Syntax
public interface IHostSession : ISession

Properties

Host

ID of the session host.

Declaration
string Host { get; set; }
Property Value
TypeDescription
System.String
Remarks

Host migration is NOT supported on Multiplay Game Server Hosting server builds.

Exceptions
TypeCondition
SessionException

Thrown when attempting to change the value on a Multiplay Game Server Hosting server build. The Error property will be set to InvalidPlatformOperation.

IsLocked

Whether the session is locked

Declaration
bool IsLocked { get; set; }
Property Value
TypeDescription
System.Boolean

IsPrivate

Whether the session is private

Declaration
bool IsPrivate { get; set; }
Property Value
TypeDescription
System.Boolean

Name

The Name of the session.

Declaration
string Name { get; set; }
Property Value
TypeDescription
System.String

Password

The password used to connect to the Session.

Declaration
string Password { set; }
Property Value
TypeDescription
System.String

Players

The list of players in the session

Declaration
IReadOnlyList<IPlayer> Players { get; }
Property Value
TypeDescription
System.Collections.Generic.IReadOnlyList<IPlayer>

Methods

DeleteAsync()

Delete the session.

Declaration
Task DeleteAsync()
Returns
TypeDescription
System.Threading.Tasks.Task

A System.Threading.Tasks.Task representing the asynchronous operation.

RemovePlayerAsync(String)

Removes a player from the session.

Declaration
Task RemovePlayerAsync(string playerId)
Parameters
TypeNameDescription
System.StringplayerId

Identifier for the player to remove.

Returns
TypeDescription
System.Threading.Tasks.Task

A task for the operation.

SavePlayerDataAsync(String)

Save the updated properties of a player.

Declaration
Task SavePlayerDataAsync(string playerId)
Parameters
TypeNameDescription
System.StringplayerId

The ID of the player whose data will be saved.

Returns
TypeDescription
System.Threading.Tasks.Task

A System.Threading.Tasks.Task representing the asynchronous operation.

Exceptions
TypeCondition
SessionException

Thrown when the player does is not found. The Error property will be set to InvalidOperation.

SavePropertiesAsync()

Saves the property changes of the session.

Declaration
Task SavePropertiesAsync()
Returns
TypeDescription
System.Threading.Tasks.Task

A task for the operation.

SetProperties(Dictionary<String, SessionProperty>)

Set properties.

Declaration
void SetProperties(Dictionary<string, SessionProperty> properties)
Parameters
TypeNameDescription
System.Collections.Generic.Dictionary<System.String, SessionProperty>properties

The SessionProperty to be set on the session.

Remarks

Passing null to SetProperty removes the property from the session.
However passing a SessionProperty with a null value (new SessionProperty(null)) keeps the session property and sets its value to null.

SetProperty(String, SessionProperty)

Set a property.

Declaration
void SetProperty(string key, SessionProperty property)
Parameters
TypeNameDescription
System.Stringkey

The SessionProperty's key to bet set on the session.

SessionPropertyproperty

The SessionProperty's value.

Remarks

Passing null to SetProperty removes the property from the session.
However passing a SessionProperty with a null value (new SessionProperty(null)) keeps the session property and sets its value to null.

Extension Methods

See Also