Simple IRC (Internet Relay Chat) Client written in Python 2
Special thanks to Ilie Cebanu (https://github.com/NotQuiteMelvin) for Python 3 version.
To join any channel (on Freenode) with selected username, simply run irc_client.py and put desired username as a first argument, followed by channel name (with following # or without):
./irc_client.py myusername channeltojoin
or
./irc_client.py myusername #channeltojoin // actually not working :)
Seems that passing channel name with following # break script, as Python treats # as the begining of the comment?
This is how it looks right now (left console: irc_client.py, right console: irssi):
I've added verison compiled to Python bytecode file (with .pyc extension). Compilation is done by command:
$ python -m compileall irc_client.py
It might be useful to get binary version instead of cource code.
multiline messages not working (related to no reposnse from server when no other user post message)
output sometimes messed by server messages (like PING)
lack of UX - only simple one line messages can be sent :)
irc.freenode.net (server) and port 6667 hardcoded - but can be easily added as arguments
channel name has to be passed without leading #
colorful output (TBD)
https://en.wikipedia.org/wiki/Internet_Relay_Chat
RFC 1459 (Internet Relay Chat Protocol)
https://tools.ietf.org/html/rfc1459
IRC server response codes reference
https://www.alien.net.au/irc/irc2numerics.html
RFC 2812 (Internet Relay Chat: Client Protocol):
https://tools.ietf.org/html/rfc2812
Other resources:
http://chi.cs.uchicago.edu/chirc/irc_examples.html
http://books.msspace.net/mirrorbooks/irchacks/059600687X/irchks-CHP-13-SECT-2.html