public async void StartListeningForIncomingConnection() { Debug.WriteLine($"IP Address: {ServerIP} - Port: {ServerPort}"); mTCPListener = new TcpListener(ServerIP, ServerPort); try { mTCPListener.Start(); KeepRunning = true; while (KeepRunning) { var returnedByAccept = await mTCPListener.AcceptTcpClientAsync(); var newClient = new Client(mClients.Count + 1, returnedByAccept); mClients.Add(newClient); Debug.WriteLine( string.Format("Client connected successfully, ID: {0} - {1}", newClient.ID, newClient.Connection.Client.RemoteEndPoint) ); TakeCareOfTCPClient(newClient); var eaClientConnected = new ClientConnectedEventArgs(returnedByAccept.Client.RemoteEndPoint.ToString()); OnRaiseClientConnectedEvent(eaClientConnected); } } catch (Exception excp) { Debug.WriteLine(excp); } }
protected virtual void OnRaiseClientConnectedEvent(ClientConnectedEventArgs e) { RaiseClientConnectedEvent?.Invoke(this, e); }
public void HandleClientConnected(object sender, ClientConnectedEventArgs cl) { LstClients.Items.Add($"{DateTime.Now} - New Client connected {cl.NewClient} {Environment.NewLine}"); }