]>
iEval git - app-statsbot.git/blob - statsbot
6 use sigtrap qw
/die normal-signals/;
9 'debug!' => \
$App::Statsbot
::DEBUG
,
10 'tick=i' => \
$App::Statsbot
::TICK
,
11 'nickname=s' => \
$App::Statsbot
::NICKNAME
,
12 'server=s' => \
$App::Statsbot
::SERVER
,
13 'port=i' => \
$App::Statsbot
::PORT
,
14 'ssl!' => \
$App::Statsbot
::SSL
,
15 'channel=s' => \
@App::Statsbot
::CHANNELS
,
16 'db=s' => \
$App::Statsbot
::DB
,
27 statsbot - simple IRC bot that tracks time spent in a channel
31 statsbot --nickname=sbot --channel='#somechan'
32 # Bot will respond to queries of the forms:
33 # < mgv> !presence mgv
34 # < mgv> presence mgv '1 day'
35 # < mgv> BOTNICK: !presence mgv '1 year' 2
36 # < mgv> BOTNICK: presence mgv
40 statsbot is a simple IRC bot that tracks the people that inhabit a
41 channel. It is able to answer queries of the form "In the last <time
42 interval>, how much time did <nick> spend in this channel?".
44 It responds to queries of the form C<presence NICK [TIME
45 [PRECISION]]>, optionally preceded by C<BOTNICK:> or C<BOTNICK,>.
46 There can also be an optional "!" sign before the word "presence".
48 where BOTNICK is the nickname of the bot, NICK is the nickname of a
49 channel inhabitant, TIME is the interval that is considered, and
50 PRECISION is the number of units to display. For example, if a
51 PRECISION of 3 yields "1 hour, 2 minutes and 10 seconds", a PRECISION
52 of 2 would yield "1 hour and 2 minutes" while a PRECISION of 1 would
55 By default, the interval that is considered is one day and the result
56 is displayed in hours.
62 =item B<--debug>, B<--no-debug>
64 If B<--debug>, prints some debug information. Defaults to B<--no-debug>.
68 How often (in seconds) to poll the channel for nicks. Defaults to 10
71 =item B<--nickname>=I<"timebot">
73 The nickname of the bot. Defaults to "statsbot".
75 =item B<--server>=I<"irc.oftc.net">
77 The IRC server. Defaults to "irc.freenode.net".
79 =item B<--port>=I<6697>
81 The port. Defaults to 6667.
83 =item B<--ssl>, B<--no-ssl>.
85 If B<--ssl>, connect via SSL. Defaults to B<--no-ssl>.
87 =item B<--channel>=I<"#mychan">
89 The channel that should be monitored. Multiple channels can be
90 monitored by repeating this option.
92 =item B<--db>=I</path/to/some/file.sqlite>
94 Path to SQLite database. Must be writable. Will be created if it does
95 not exist. Defaults to C</var/lib/statsbot/db>.
105 Marius Gavrilescu, E<lt>marius@ieval.roE<gt>
107 =head1 COPYRIGHT AND LICENSE
109 Copyright (C) 2013-2015 by Marius Gavrilescu
111 This library is free software; you can redistribute it and/or modify
112 it under the same terms as Perl itself, either Perl version 5.20.2 or,
113 at your option, any later version of Perl 5 you may have available.
This page took 0.054981 seconds and 4 git commands to generate.