// ----------------------------------------------------------------------------------------------------------------------
// The Photon Chat Api enables clients to connect to a chat server and communicate with other clients.
// ChatClient is the main class of this api.
// Photon Chat Api - Copyright (C) 2014 Exit Games GmbH
// ----------------------------------------------------------------------------------------------------------------------
namespace Photon.Chat
{
/// Enumeration of causes for Disconnects (used in ).
/// Read the individual descriptions to find out what to do about this type of disconnect.
public enum ChatDisconnectCause
{
/// No error was tracked.
None,
/// OnStatusChanged: The server is not available or the address is wrong. Make sure the port is provided and the server is up.
ExceptionOnConnect,
/// OnStatusChanged: The server disconnected this client from within the room's logic (the C# code).
DisconnectByServerLogic,
/// OnStatusChanged: The server disconnected this client for unknown reasons.
DisconnectByServerReasonUnknown,
/// OnStatusChanged: The server disconnected this client due to timing out (missing acknowledgement from the client).
ServerTimeout,
/// OnStatusChanged: This client detected that the server's responses are not received in due time.
ClientTimeout,
/// OnStatusChanged: Some internal exception caused the socket code to fail. Contact Exit Games.
Exception,
/// OnOperationResponse: Authenticate in the Photon Cloud with invalid AppId. Update your subscription or contact Exit Games.
InvalidAuthentication,
/// OnOperationResponse: Authenticate (temporarily) failed when using a Photon Cloud subscription without CCU Burst. Update your subscription.
MaxCcuReached,
/// OnOperationResponse: Authenticate when the app's Photon Cloud subscription is locked to some (other) region(s). Update your subscription or change region.
InvalidRegion,
/// OnOperationResponse: Operation that's (currently) not available for this client (not authorized usually). Only tracked for op Authenticate.
OperationNotAllowedInCurrentState,
/// OnOperationResponse: Authenticate in the Photon Cloud with invalid client values or custom authentication setup in Cloud Dashboard.
CustomAuthenticationFailed,
/// The authentication ticket should provide access to any Photon Cloud server without doing another authentication-service call. However, the ticket expired.
AuthenticationTicketExpired,
/// OnStatusChanged: The client disconnected from within the logic (the C# code).
DisconnectByClientLogic
}
}