Exemplo n.º 1
0
    public static void Handle_LoginAck(gNetMsg msg)
    {
        LoginAck ack = gPB.pbDecode <LoginAck> (msg.content);

        Debug.Log(ack.common.timeStamp.ToString());
        gGlobal.SetServerTime(ack.common.timeStamp);
    }
Exemplo n.º 2
0
        LoginAck OnLoginSaler(LoginReq msg)
        {
            var response = new LoginAck();

            eSaler saler = LoadSaler(msg.email); 
                
            if (saler == null)
            {
                return response;
            }
            if (saler.Password == msg.pass)
            {
                response.result = LoginAck.Result.SUCCESS;
                response.user_id = saler.Id;
                if (onlineSalers.ContainsKey(saler.Id))
                {
                    onlineSalers[saler.Id].lastAction_ = DateTime.Now;
                }
                else
                {
                    onlineSalers.Add(saler.Id, new eSalerOnline(saler));
                }
                return response;
            }
            response.result = LoginAck.Result.FAIL_INVALID_PASS;
            return response;
        }
Exemplo n.º 3
0
 LoginAck OnLoginClient(LoginReq msg)
 {
     var response = new LoginAck();
     eClient client = LoadClient(msg.email);
     if (client == null)
     {
         return response;
     }
     if (client.Password == msg.pass)
     {
         response.result = LoginAck.Result.SUCCESS;
         response.user_id = client.Id;
         if(onlineClients.ContainsKey(client.Id))
         {
             onlineClients[client.Id].lastAction_ = DateTime.Now;
         }
         else
         {
             onlineClients.Add(client.Id, new eClientOnline(client));
         }
         return response;
     }
     response.result = LoginAck.Result.FAIL_INVALID_PASS;
     return response;
 }
Exemplo n.º 4
0
        public void Execute()
        {
            LoginAck ack = new LoginAck();

            ack.Header         = new Header();
            ack.Header.ProtoID = ProtoID.AckLogin;

            m_protocolParser.SendAll(ack);
        }
Exemplo n.º 5
0
 public LoginAck OnLogin(LoginReq msg)
 {
     LoginAck response = new LoginAck();
     if(msg.type == 0)
     {
         response = OnLoginClient(msg);
     }
     if (msg.type == 1)
     {
         response = OnLoginSaler(msg);
     }
     return response;
 }
Exemplo n.º 6
0
        public User OnLoginReq(LoginReq packet, string ipPort)
        {
            var ack  = new LoginAck();
            var user = Sql.Instance.AuthenticateUser(packet.Username, packet.Password);

            if (user != null)
            {
                user.IpPort  = ipPort;
                user.Monitor = packet.Monitor;
            }

            ack.User = user;
            _server.Send(ipPort, ack);
            return(user);
        }
Exemplo n.º 7
0
 public User OnLoginReq(LoginReq packet, string ipPort, Dictionary <string, User> users)
 {
     if (users.FirstOrDefault(u => u.Value.UserName == packet.Username).Value != null)
     {
         _server.Send(ipPort, new LoginDuplicateAck());
     }
     else
     {
         var ack  = new LoginAck();
         var user = Sql.Instance.AuthenticateUser(packet.Username, packet.Password);
         ack.User = user;
         _server.Send(ipPort, ack);
         return(user);
     }
     return(null);
 }
Exemplo n.º 8
0
        public void Login(AsyncUserToken token, LoginReq loginReq)
        {
            //TODO:处理登录逻辑
            //检查是否有此账户
            //有:展示角色信息
            //没有:创建新角色
            string clientToken = loginReq.Token;
            bool   reLogin     = loginReq.Relogin;

            Console.WriteLine("LoginHandler -> LoginAck");

            //反回客户端创建新角色
            LoginAck loginAck = new LoginAck {
                CreateRole = true
            };

            token.Send(Cmd.Login, loginAck);
        }
Exemplo n.º 9
0
        private void OnLoginAck(LoginAck ack)
        {
            User = ack.User;

            if (User == null)
            {
                MessageBox.Show("Invalid username or password.", "Error",
                                MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                Client.Instance.Disconnect();
            }
            else if (User.GroupRole < GroupRole.Admin)
            {
                MessageBox.Show("You are not authorized to log in.", "Error",
                                MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                Client.Instance.Disconnect();
            }
            else
            {
                DialogResult = DialogResult.OK;
                Close();
            }
        }
Exemplo n.º 10
0
        public static void AckLogin(byte[] buff)
        {
            LoginAck ack = ProtocolBuffConvert.Deserialize <LoginAck>(buff);

            OnLoginAck?.Invoke();
        }
Exemplo n.º 11
0
 public void HandleProtocol(byte[] buffer)
 {
     LoginAck ack = LoginAck.Parser.ParseFrom(buffer);
 }