Metadata-Version: 1.0
Name: cmdbot
Version: 1.0.4
Summary: An IRC Bot with a `cmd` attitude
Home-page: https://github.com/brunobord/cmdbot/
Author: Bruno Bord
Author-email: bruno@jehaisleprintemps.net
License: Public Domain (WTFPL)
Description: =================================
        CmdBot, a bot with `cmd` attitude
        =================================
        
        
        Introducing CmdBot
        ==================
        
        CmdBot is an IRC Bot written in Python. It consists of a core module that
        defines a `Bot` class you can extend to fit your needs. It comes with a
        `Brain`, that is to say a simple instance of ``object`` that can contain
        any data you want. That's like a *memory* that lives as long as the Bot is
        working.
        
        It's far from being 100% perfect, but I think it takes the best of Python's
        introspection mechanism.
        
        By the way, why the name "CmdBot"? Because its function loading system has been
        inspired by the `Python's cmd module <http://docs.python.org/library/cmd.html>`_,
        that uses class member introspection to catch the designated functions and
        execute them.
        
        License
        =======
        
        This piece of software is published under the terms of the WTFPL  (Do What
        The Fuck You Want License), that can be summed as its term "0":
        
             0. You just DO WHAT THE FUCK YOU WANT TO.
        
        For more information, go to : <http://sam.zoy.org/wtfpl/>
        
        The extensive documentation
        ===========================
        
        An extensive documentation can be found at <http://readthedocs.org/docs/cmdbot/>
        
        Install
        =======
        
        CmdBot is hosted on Github. If you want the latest code, go fetch it here:
        
        https://github.com/brunobord/cmdbot
        
        You can install the program using::
        
            python setup.py install
        
        
        A cute "ini" file
        -----------------
        
        The mandatory step: building an ini file. You can use the sample bot.ini file
        that sits in the source code, or edit your own. You just have to know that only
        two variables **must** be set in it::
        
            [general]
            host = name.your.server
            chan = #nameyourchan
        
        The other vars are optional, and usually default values would suit.
        
        The "admin" value
        #################
        
        If you want some admin to take this bot over (and you surely need it at some point),
        set the value with a space-separated list of nicks... e.g.::
        
            admins = nick1 nick2 nick3
        
        You may use the "@admin" decorator in your extended classes to process the bot
        line **only** if the user that has send the order is in this nick list.
        
        
        Want to run the bot?
        --------------------
        
        It's as simple as::
        
            python cmdbot/core.py bot.ini
        
        But... your bot won't be able to do much. Here is a sample "dialog"::
        
            22:31 -!- cmdbot [~cmdbot@127.0.0.1] has joined #cdc
            22:31 < cmdbot> Hi everyone.
            22:31 < No`> cmdbot: help
            22:31 < cmdbot> No`: you need some help? Here is some...
            22:31 < cmdbot> Available commands: help, ping
            22:32 < No`> cmdbot: ping
            22:32 < cmdbot> No`: pong
            22:32 -!- cmdbot [~cmdbot@127.0.0.1] has quit [EOF From client]
        
        Want a more clever bot?
        =======================
        
        Here's how:
        
        * Create a module / script with a bot that extends the core bot
        * add it a few "do_[stuff]" commands
        * make it more clever, by using its "brain"
        
        You can see a few example of what a "brainy bot" can do in the `samples`
        directory.
        
        What's next?
        ============
        
        Well... now, the sky is the limit. Extended bots can manipulate data, remember
        it, treat and process it... And you can still use this bot as a "dumb", if you
        want!
        
Platform: any
