文档

Multiplayer Services SDK

All Services

Multiplayer Services SDK

Session events

Monitor session lifecycle changes by subscribing to these events.
阅读时间2 分钟最后更新于 17 天前

You can use following events to notify you about session lifecycle changes and runtime updates:

Adding session started

This event is invoked when a new session creation request or joining request initiates.
The following code demonstrates this event's usage:
void OnAddingSessionStarted(AddingSessionOptions addingSessionOptions) { Debug.Log($"Session of type {addingSessionOptions.Type} is being added.");}// ...MultiplayerServices.Instance.AddingSessionStarted += OnAddingSessionStarted;

Adding session failed

This event is invoked when a new session creation or joining request fails.
The following code demonstrates this event's usage:
void OnAddingSessionFailed(AddingSessionOptions addingSessionOptions, SessionException exception) { Debug.Log($"Adding session of type {addingSessionOptions.Type} has failed with exception {exception.Message}.");}// ...MultiplayerServices.Instance.AddingSessionFailed += OnAddingSessionFailed;

Session added

This event is invoked when a new session is created and added to the sessions list.
The following code demonstrates this event's usage:
void OnSessionAdded(ISession session) { Debug.Log($"Session {session.Id} has been added to the sessions list.");}// ...MultiplayerServices.Instance.SessionAdded += OnSessionAdded;

Session removed

This event is invoked when a session is removed from the sessions list.
The following code demonstrates this event's usage:
void OnSessionRemoved(ISession session) { Debug.Log($"Session {session.Id} has been removed from the sessions list.");}// ...MultiplayerServices.Instance.SessionRemoved += OnSessionRemoved;

Session changed

This event is invoked when the session changes.
The following code demonstrates this event's usage:
void OnSessionChanged() { Debug.Log("The session has changed.");}// ...session.Changed += OnSessionChanged;

Session state changed

This event is invoked when the session state changes.
The following code demonstrates this event's usage:
void OnSessionStateChanged(SessionState newState) { Debug.Log($"The session state has changed {newState}.");}// ...session.StateChanged += OnSessionStateChanged;

Session properties changed

This event is invoked when session properties change.
The following code demonstrates this event's usage:
void OnSessionPropertiesChanged() { Debug.Log("The session properties have changed.");}// ...session.SessionPropertiesChanged += OnSessionPropertiesChanged;

Session deleted

This event is invoked when the session is deleted.
The following code demonstrates this event's usage:
void OnSessionDeleted() { Debug.Log("The session has been deleted.");}// ...session.Deleted += OnSessionDeleted;

Session host changed

This event is invoked when the session host has changed.
The following code demonstrates this event's usage:
void OnSessionHostChanged(String playerID) { Debug.Log($"{playerID} is the new session host.");}// ...session.SessionHostChanged += OnSessionHostChanged;

Session migrated

This event is invoked when the session finishes migrating hosts.
The following code demonstrates this event's usage:
void OnSessionMigrated() { Debug.Log("The session migration finished.");}// ...session.SessionMigrated += OnSessionMigrated;

Additional resources