示例#1
0
        private async Task InitializeConnection(PersonalPacket connectionPacket)
        {
            _pinged = false;

            if (IsRunning)
            {
                _updateTask = Task.Run(() => Update());
                await _client.SendObject(connectionPacket);

                _connectionTask = Task.Run(() => MonitorConnection());
                Status          = "Connected";
            }
            else
            {
                Status = "Connection failed";
                await Disconnect();
            }
        }
示例#2
0
        private async Task <PersonalPacket> GetNewConnectionPacket(string username)
        {
            _listenTask = Task.Run(() => _client.Connect());

            IsRunning = await _listenTask;

            var notifyServer = new UserConnectionPacket
            {
                Username  = username,
                IsJoining = true,
                UserGuid  = _client.ClientId.ToString()
            };

            var personalPacket = new PersonalPacket
            {
                GuidId  = _client.ClientId.ToString(),
                Package = notifyServer
            };

            return(personalPacket);
        }