posted 22 years ago
Well, from what I know you can't have multiple client's connected to the same socket port. What you can do is have the server program "listening" on the specific port and when a request comes in it will spawn some processes to handle the request, and then go back to listening for new requests.
A quick thought about a possible implementation of this :
---------------------------------------------------------
What I would do is implement A ChatServer object, A ChatSession object, and ChatWindow objects. The ChatServer would listen on the specifiec port for incomming chat requests. When the request is received, the ChatServer determines if this is a new ChatSession request, or a request to join an on going ChatSession. If it's an existing ChatSession object, spawn a new ChatWindow object, register this window as a listener to the ChatSession. The ChatSession would notify all its listeners whenever a message came in from one of it's ChatWindows, and push the new data to them.
------------------------------------------------------------