GithubHelp home page GithubHelp logo

sahwar / irc-client Goto Github PK

View Code? Open in Web Editor NEW

This project forked from bl4de/irc-client

0.0 0.0 0.0 2.71 MB

Simple IRC (Internet Relay Chat) Client written in Python

License: MIT License

Python 100.00%

irc-client's Introduction

irc-client

Simple IRC (Internet Relay Chat) Client written in Python 2

Contributors

Special thanks to Ilie Cebanu (https://github.com/NotQuiteMelvin) for Python 3 version.

Usage

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?

Sample conversation

This is how it looks right now (left console: irc_client.py, right console: irssi):

Sample conversation

Compiled to .pyc

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.

Issues and further ideas/features

  • 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)

References

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

irc-client's People

Contributors

bl4de avatar ilyachebanu avatar mcb2003 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.