PyChat implements a chat system composed of:
- a Client application: it will interface with other user/clients and it allows them to send and receive messages.
- a Server application: it is used from the clients to setup the communication
The client application:
- perform send and reccive messages
- two client exchange the messages one each other in peer-to-peer (by UDP protocol)
- Each client is run by the command:
python Client.py <Nickname> <IP-address> <port>
- The IP address and port are the interfaces where the client receives the message from othe clients.
eg. python Client.py foo 127.0.0.1 2001
- provide a textual interface where the commands could be run to perform specific operation.
- !help --> show the commands available
- !connect user --> start a new chat with the specific user
- !usersList --> get the list of user in the server
- !disconnect --> free the client from the current chant
- !quit --> to close appplication
- In order to get IP addresses and port by the nickname each clients get contact with the Server The server application can be run by the command:
python Server.py <IP address> <port>
- the IP address and port specified is where the server is in listening to get the message from client.
eg: python Server.py 127.0.0.1 3000
Read more here