public void Start() { UserConnectionDetails user = new UserConnectionDetails(); user.GetMyConnectionDetails(); Console.WriteLine(); user.GetPeerConnectionDetails(); NetworkListener listener = new NetworkListener(user); listener.BindSocket(); listener.StartListening(); NetworkClient client = new NetworkClient(user); Socket senderSocket = client.OnNewConnect(); Socket receiverSocket = listener.AcceptConnection(); Conversation conversation = new Conversation(senderSocket, receiverSocket, client, listener, user); Console.WriteLine("--------------Start Conversation----------------"); Thread sendingThread = new Thread(new ThreadStart(() => conversation.SendMessage())); sendingThread.Start(); Thread listeningThread = new Thread(new ThreadStart(() => conversation.ReceiveMessage())); listeningThread.Start(); }
public Conversation(Socket senderSocket, Socket receiverSocket, NetworkClient client, NetworkListener listener, UserConnectionDetails user) { _senderSocket = senderSocket; _receiverSocket = receiverSocket; _client = client; _listener = listener; _display = new Display(user); }
public Display(UserConnectionDetails user) { _user = user; }
public NetworkClient(UserConnectionDetails user) { _user = user; _network.CreateSocket(_user.ShowPeerIpAddress(), _user.ShowPeerPortNumber()); }
public NetworkListener(UserConnectionDetails user) { _user = user; _network.CreateSocket(_user.ShowMyIpAddress(), _user.ShowMyPortNumber()); }