No description
This repository has been archived on 2026-08-22. You can view files and clone it, but you cannot make any changes to its state, such as pushing and creating new issues, pull requests or comments.
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Jan Henning Thorsen 5e64860ff0 more deps
2010-05-02 15:58:31 +02:00
bin add botman.pl 2009-10-21 20:26:17 +02:00
etc add new module: TinyURL 2009-10-22 22:00:45 +02:00
init add init script 2009-10-21 21:00:37 +02:00
lib add workaround for messed up feeds 2010-04-30 13:58:42 +02:00
t updated dist files + tests 2010-04-16 18:46:24 +02:00
.gitignore replaced Tie::STDERR with Botman::STDERR 2009-10-22 11:19:42 +02:00
Changes initial commit of Botman 2009-10-21 18:20:13 +02:00
Makefile.PL more deps 2010-05-02 15:58:31 +02:00
README updated dist files + tests 2010-04-16 18:46:24 +02:00

NAME
    Botman - An IRC bot

DESCRIPTION
    This module extends Bot::BasicBot::Pluggable.

SYNOPSIS
EVENTS
  irc_mode_state
     yield(irc_mode_state => $nick, $channel, $mode, @ops);

    Called when one or more users change mode. This event will dispatch
    "mode_change", with this data:

     {
         who => $str, # who got new mode
         channel => $str, # in which channel
         added => $bool, # + = true, - = false
         op => $bool,
         voice => $bool,
     }

    This method also calls Bot::BasicBot::irc_mode_state() - or whatever
    "irc_mode_state()" exists in super class.

METHODS
  new
     $self = $class->new(\%args);
     $self = $class->new(%args);
     $self = $class->new($config_file);

  logging
     $self->logging(\%config);
     $self->logging(\$str);
     $self->logging($config_file);

    This is triggered by "new()". It will set up Log::Log4perl and log
    STDERR with level "warn", and to the "Botman.STDERR" logger.

  modules
     @modules = $self->modules(@modules);
     @modules = $self->modules(\@modules);
     @modules = $self->modules;

    Returns a list of the names of all loaded modules as an array. Setting
    this attribute, will cause the modules to be loaded.

    This should be triggered by Bot::BasicBot::new().

  get_module
     $obj = $self->get_module($name);

    Returns the instance of the module with name $name.

  mode
     $self->mode({ mode => $str, who => $str, channel => $str });

    This method can change the mode of a user.

  names
     $self->names({
        channel => $channel,
        names => {
            $nick => {
                op => $bool,
                voice => $bool,
            },
            # ...
        },
     });

    This method will dispatch to "names", with the same arguments as this
    method was called with.

  logf
     $self->logf($level, $format, @args);

  log
     $self->log(@messages);

LICENSE
    Copyright 2007 Jan Henning Thorsen, all rights reserved.

    This program is free software; you can redistribute it and/or modify it
    under the same terms as Perl itself.

AUTHOR
    Jan Henning Thorsen, "<jhthorsen at cpan.org>"