Collection of "organizational" callbacks for the Realtime Api to cover: Connection and Regions. More...
Public Member Functions | |
void | OnConnected () |
Called to signal that the "low level connection" got established but before the client can call operation on the server. More... | |
void | OnConnectedToMaster () |
Called when the client is connected to the Master Server and ready for matchmaking and other tasks. More... | |
void | OnDisconnected (DisconnectCause cause) |
Called after disconnecting from the Photon server. It could be a failure or an explicit disconnect call More... | |
void | OnRegionListReceived (RegionHandler regionHandler) |
Called when the Name Server provided a list of regions for your title. More... | |
void | OnCustomAuthenticationResponse (Dictionary< string, object > data) |
Called when your Custom Authentication service responds with additional data. More... | |
void | OnCustomAuthenticationFailed (string debugMessage) |
Called when the custom authentication failed. Followed by disconnect! More... | |
Collection of "organizational" callbacks for the Realtime Api to cover: Connection and Regions.
Classes that implement this interface must be registered to get callbacks for various situations.
To register for callbacks, call LoadBalancingClient.AddCallbackTarget and pass the class implementing this interface To stop getting callbacks, call LoadBalancingClient.RemoveCallbackTarget and pass the class implementing this interface
void Photon.Realtime.IConnectionCallbacks.OnConnected | ( | ) |
Called to signal that the "low level connection" got established but before the client can call operation on the server.
After the (low level transport) connection is established, the client will automatically send the Authentication operation, which needs to get a response before the client can call other operations.
Your logic should wait for either: OnRegionListReceived or OnConnectedToMaster.
This callback is useful to detect if the server can be reached at all (technically). Most often, it's enough to implement OnDisconnected(DisconnectCause cause) and check for the cause.
This is not called for transitions from the masterserver to game servers.
Implemented in Photon.Realtime.ConnectionCallbacksContainer, and Photon.Realtime.SupportLogger.
void Photon.Realtime.IConnectionCallbacks.OnConnectedToMaster | ( | ) |
Called when the client is connected to the Master Server and ready for matchmaking and other tasks.
The list of available rooms won't become available unless you join a lobby via LoadBalancingClient.OpJoinLobby. You can join rooms and create them even without being in a lobby. The default lobby is used in that case.
Implemented in Photon.Realtime.ConnectionCallbacksContainer, and Photon.Realtime.SupportLogger.
void Photon.Realtime.IConnectionCallbacks.OnCustomAuthenticationFailed | ( | string | debugMessage | ) |
Called when the custom authentication failed. Followed by disconnect!
Custom Authentication can fail due to user-input, bad tokens/secrets. If authentication is successful, this method is not called. Implement OnJoinedLobby() or OnConnectedToMaster() (as usual).
During development of a game, it might also fail due to wrong configuration on the server side. In those cases, logging the debugMessage is very important.
Unless you setup a custom authentication service for your app (in the Dashboard), this won't be called!
debugMessage | Contains a debug message why authentication failed. This has to be fixed during development. |
Implemented in Photon.Realtime.ConnectionCallbacksContainer, and Photon.Realtime.SupportLogger.
void Photon.Realtime.IConnectionCallbacks.OnCustomAuthenticationResponse | ( | Dictionary< string, object > | data | ) |
Called when your Custom Authentication service responds with additional data.
Custom Authentication services can include some custom data in their response. When present, that data is made available in this callback as Dictionary. While the keys of your data have to be strings, the values can be either string or a number (in Json). You need to make extra sure, that the value type is the one you expect. Numbers become (currently) int64.
Example: void OnCustomAuthenticationResponse(Dictionary<string, object> data) { ... }
https://doc.photonengine.com/en-us/realtime/current/reference/custom-authentication
Implemented in Photon.Realtime.ConnectionCallbacksContainer, and Photon.Realtime.SupportLogger.
void Photon.Realtime.IConnectionCallbacks.OnDisconnected | ( | DisconnectCause | cause | ) |
Called after disconnecting from the Photon server. It could be a failure or an explicit disconnect call
The reason for this disconnect is provided as DisconnectCause.
Implemented in Photon.Realtime.ConnectionCallbacksContainer, and Photon.Realtime.SupportLogger.
void Photon.Realtime.IConnectionCallbacks.OnRegionListReceived | ( | RegionHandler | regionHandler | ) |
Called when the Name Server provided a list of regions for your title.
Check the RegionHandler class description, to make use of the provided values.
regionHandler | The currently used RegionHandler. |
Implemented in Photon.Realtime.ConnectionCallbacksContainer, and Photon.Realtime.SupportLogger.