Aaaaannd here is another post of mine on sockets, client/server models and stuff. I suppose you have started to get bored by the same stuff everyday right? Seems like I just can't get enough of this thing. But trust me, I had no intention of doing this today, a friend of mine instigated me write a messenger for a project we were working on, and it turned out, writing this simple messaging program was more interesting than I thought.
So, instead of creating a straight forward chat program that was 'actually' required by my friend, I created this 'one-server-multiple-clients' program, which is more like the real world chat apps we use everyday.
To run the program, execute the 'server.py' (after changing the bind() address to the address of the server on which it is supposed to run). Then, execute the 'client.py' (guess what? same thing here. But you will have to add the server address in the connect() function here). Of course, you can have all of them running on the same system, but there ain't any fun in it, right?
Last but not the least, I have commented as much as I could, unlike my last article, so I expect everyone reading this, with a bit of programming knowledge, will understand this straight forward code.
server.py
client.py
So that was the code. Here is a glimpse of the output. The server is running off my 'raspberrypi' and all clients are running on my computer. Looks cool right?
If you look closely, one of the clients missed a message sent by another client, LOL, so that is normal. Any suggestions or edits or corrections, drop them in the comments below. :)