public override void ClientDisconnect(PhotonClientPeer clientPeer)
        {
            var para = new Dictionary<byte, object>
            {
                {(byte) ClientParameterCode.PeerId, clientPeer.PeerId.ToByteArray()}
            };

            if (clientPeer.ClientData<CharacterData>().CharacterId.HasValue)
            {
                Log.DebugFormat("Sending disconnect for client {0}:{1}", clientPeer.PeerId,
                    clientPeer.ClientData<CharacterData>().CharacterId.Value);
                if (ChatServer != null)
                {
                    ChatServer.SendEvent(new EventData((byte)ServerEventCode.CharacterDeRegister, para),
                   new SendParameters());
                }
                if (clientPeer.CurrentServer != null)
                {
                    clientPeer.CurrentServer.SendEvent(
                    new EventData((byte)ServerEventCode.CharacterDeRegister, para), new SendParameters());
                }
                
            }

            Log.DebugFormat("xxx sending user loggedout sendevent");
            LoginServer.SendEvent(new EventData((byte) ServerEventCode.UserLoggedOut, para), new SendParameters());
        }