public void Process() { try { Stream = _client.GetStream(); _userName = GetMessage(); var message = $"{_userName} enter the chat"; _server.BroadcastMessage(message, Id); Console.WriteLine(message); while (true) { var mes = GetMessage(); if (mes == "END") { RecieveAndUpdate($"{_userName}: leave the chat"); break; } RecieveAndUpdate($"{_userName}:{mes}"); } } catch (Exception e) { Console.WriteLine(e.Message); } finally { _server.RemoveConnection(Id); Close(); } }
public void Process() { try { stream = client.GetStream(); username = $"User{rnd.Next(500)}"; Console.WriteLine(username + "connected :)"); while (true) { string msg = GetMessage(); string output = new string(msg.Where(c => char.IsLetter(c) || char.IsDigit(c) || char.IsSymbol(c) || char.IsSeparator(c) || char.IsPunctuation(c)).ToArray()); switch (output) { case "photo": { FileGetterAndSender("image", username, output); break; } case "attachment": { FileGetterAndSender("file", username, output); break; } case "audiofile": { FileGetterAndSender("audio", username, output); break; } case "videofile": { FileGetterAndSender("video", username, output); break; } case "expectedexit": { server.RemoveConnection(Id); Close(); break; } default: { servermsg = String.Format("{0}: {1}", username, output); Console.WriteLine(servermsg); server.BroadcastMessage(msg, Id); break; } } } } catch (Exception ex) { servermsg = String.Format("{0}: leave chat", username); Console.WriteLine(servermsg); } }
public void MainProcess() { try { while (true) { try { var request = JsonSerializer.Deserialize <Request>(GetRequest()); var data = request.Data; switch (request.Type) { case RequestType.Authorization: var authorization = JsonSerializer.Deserialize <Authorization>(data); server.Authorize(authorization, this); break; case RequestType.Registration: var registration = JsonSerializer.Deserialize <Registration>(data); server.Register(registration, this); break; default: server.BroadcastMessage(data, ClientInfo); break; } } catch { // SendMessage($"{userName} покинул чат"); break; } } } catch (Exception e) { Console.WriteLine(e.Message); } finally { server.RemoveConnection(ClientInfo.Login); Close(); } }