コード例 #1
0
ファイル: MainServices.cs プロジェクト: fos83/MuEmu
        public void RegistryHandler(CSSession session, CRegistryReq message)
        {
            ServerManager.Instance.Register(session, (byte)message.Index, message.Address, message.Port, message.Show != 0, message.Token, message.Name, message.Type);
            var arg = new CServerList();

            Program.server.Clients.ToList().ForEach(x => ServerListHandler(x, arg));
        }
コード例 #2
0
        public void ServerListHandler(CSSession session, CServerList message)
        {
            var servers = ServerManager.Instance.Servers.Where(x => x.Visible).Select(x => new ServerDto {
                Index = x.Index, Load = x.Load, Padding = 0x77
            }).ToArray();

            //Logger.Information("Sending Server list {0} servers", servers.Length);
            session.SendAsync(new SServerList(servers));
        }
コード例 #3
0
 public void Unregister(CSSession session)
 {
     lock (_servers)
     {
         if (_GSsessions.ContainsKey(session))
         {
             Unregister(_GSsessions[session]);
         }
     }
 }
コード例 #4
0
        public void ServerInfoHandler(CSSession session, CServerInfo message)
        {
            var server = ServerManager.Instance.GetServer(message.Index);

            Logger.Information("Forwarding to {0}:{1}", server.Address, server.Port);
            session.SendAsync(new SServerInfo
            {
                Address = server.Address,
                Port    = server.Port
            });
        }
コード例 #5
0
        public void Register(CSSession session, ushort index, string address, ushort port, bool display)
        {
            lock (_servers)
            {
                _servers.Add(index, new ServerInfo {
                    Index = index, Address = address, Port = port, LastPush = DateTime.Now, Visible = display
                });
                _GSsessions.Add(session, index);
            }

            Logger.Information("New server found [{0}] {1}:{2} {3}", index, address, port, display ? "SHOW":"HIDE");
        }
コード例 #6
0
ファイル: ServerManager.cs プロジェクト: kevinf93/MuEmu
        public void Register(CSSession session, byte index, string address, ushort port, bool display, string token)
        {
            if (_token != token)
            {
                Logger.Error("Auth Token invalid");
                return;
            }

            lock (_servers)
            {
                _servers.Add(index, new ServerInfo {
                    Index = index, Address = address, Port = port, LastPush = DateTime.Now, Visible = display
                });
                _GSsessions.Add(session, index);
            }

            Program.Clients.AddServer(index);

            Logger.Information("New server found [{0}] {1}:{2} {3}", index, address, port, display ? "SHOW":"HIDE");
        }
コード例 #7
0
 public void KeepAliveHandler(CSSession session, CKeepAlive message)
 {
     ServerManager.Instance.Keep(message.Index, message.Load);
 }
コード例 #8
0
 public void RegistryHandler(CSSession session, CRegistryReq message)
 {
     ServerManager.Instance.Register(session, message.Index, message.Address, message.Port, message.Show != 0);
 }
コード例 #9
0
ファイル: MainServices.cs プロジェクト: fos83/MuEmu
 public void SCRem(CSSession session, SCRem message)
 {
     Program.Clients.RemClient(message);
 }
コード例 #10
0
ファイル: MainServices.cs プロジェクト: fos83/MuEmu
 public void SCAdd(CSSession session, SCAdd message)
 {
     Logger.Information("FriendSystem: [" + message.Server + "] " + message.btName.MakeString() + " ADD");
     Program.Clients.AddClient(message);
 }
コード例 #11
0
ファイル: ChatServices.cs プロジェクト: kevinf93/MuEmu
 public void CChatAuth(CSSession session, CChatAuth message)
 {
 }