[Twisted-Python] irc server run by twisted and (probably) django

Jean-Paul Calderone exarkun at divmod.com
Tue Oct 14 12:10:37 EDT 2008


On Tue, 14 Oct 2008 16:13:20 +0300, Manuel Meyer <manuel at vikingosegundo.de> wrote:
>Hi,
>
>I am new to twisted - so I am not very into it yet.
>
>I want to create a IRC Server that reacts a little bit different  compared 
>to others:
>* only registered users will be able to /list channels and /join them.
>* /list only returns channels the user registered
>* /join is only apply-able on those channels, too
>* /join new-channel won't work
>* Registering and channel-creation is done not in IRC but in a  website, 
>probably driven by django.
>
>Any comment on this is welcomed
>* where should I start?
>* readings?
>* examples?
>* existing similar projects?
>

Twisted includes an implementation of the IRC server protocol.  It's fairly
basic, so it probably will only save you from having to find line delimiters
and split up IRC commands into tokens.  Twisted Words includes a user/group
model, but it's not quite the one you described.  It might be useful for you
to take a look at it, but I don't know if any of the code will be re-usable.

The good news is that nothing in the IRC server protocol implementation will
prevent you from implementing the user/group model you described above.

You can find most of the implementation of the existing IRC server here:

http://twistedmatrix.com/trac/browser/trunk/twisted/words/service.py

There's not really any documentation for it aside from the docstrings.  You
can run the server it implements using `twistd words [options]´.

Jean-Paul




More information about the Twisted-Python mailing list