___________________________________________________________________ / \ | SPALEWARE LICENSE (Revision 0.1) | |-------------------------------------------------------------------| | This file is part of a package called "GenEthic" and is | | licensed under SPALEWARE. You may freely modify and distribute | | this package or parts of it. But you MUST keep the SPALWARE | | license in it! | | | \ __________________________________________________________________/ _________________________________________________________________________ / \ | GenEthic IRC Server Monitoring Bot | |_________________________________________________________________________| | | | Version : 1.2.2 | | Base Concept : Pascal Gloor & Mehmet Akcin | | Coder : Pascal Gloor | | Source : http://www.genethic.ch/download/ | | Bug Report : bugs@genethic.ch | | Date : 13 Sept 2003 | | | \_________________________________________________________________________/ HISTORY After getting my server linked to Undernet, I had some ideas about having a bot, not like the others, but more like looking after what the server is doing, how many users connecting, and it's general healthy. Then I wrote the original GenEthic bot, which was not desgined for portability to another server, all it functions were 'hardcoded' and so on. That's why I decided to rewrite it completly and that's also why you are reading this now ;-P REQUIREMENTS Operating System requirements: - perl 5.004 or better - perl IO:Socket module - web server (optional) - MRTG (optional) IRC Server requirements: - Running ircu2.10.11.x (available at http://coder-com.undernet.org) - An o line(local oper) for the bot. - An I line with password (recommended but optional). - An Y line with at least 20Mbytes of SendQ. - Enable the following features in your ircd.conf: F:OPER_MODE_LCHAN:TRUE F:OPER_WALK_THROUGH_LMODES:TRUE F:SHOW_INVISIBLE_USERS:TRUE F:SHOW_ALL_INVISIBLE_USERS:TRUE F:UNLIMIT_OPER_QUERY:TRUE F:LOCOP_LGLINE:TRUE F:OPER_KILL:TRUE F:LOCOP_SEE_IN_SECRET_CHANNELS:TRUE F:NO_OPER_DEOP_LCHAN:TRUE F:CONNEXIT_NOTICES:TRUE If you dont enable all of these features the bot may work, but for sure not at 100% of its capacity. NOTE: All those F:Lines are compatible with the actual Undernet policy. Compatibility with the Undernet Policy: NOTE: You are only concerned by this if your server is linked to the Undernet IRC Network. NOTE: If you do not follow the rules described below, you could have your server delinked! You MUST announce to the admins mailing list the fact that you have added a new local oper, even if it's a bot! You have to know that this bot is giving out informations the MUST be kept 'secret'. Therefor, I strongly discourage running this bot in a GLOBAL #channel (instead of a local &channel as the bot as been designed for) and do NOT invite a non-oper to the channel. You have the possibility to login into the CSerivce bot 'X'. So if you want this feature, you need an X login/pass. http://cservice.undernet.org/live/ INSTALLATION Simply run the configuration software: ./install.sh Example: ./install.sh /home/genethic/ Once the files installed, be sure all the files are owned by the user which will execute the bot. chown -R genethic /home/genethic/ Then go and edit the configuration file, take your time, dont stress, it should be understandable for any OPER with some experience. Everything is explained for each option of the configuration file. cd /path/to/genethic/etc cp sample.conf genethic.conf vi genethic.conf You should change the 'shell' of the user running the bot to: /path/to/genethic/bin/runbot.sh So you can start the bot just by 'su genethic_user'. If you have setup the correct 'shell' as described above, you can also run the 'keepalive' script. Simply add to the crontab : */5 * * * * { /path/to/genethic/bin/keepalive.pl /path/to/genethic/tmp/keepalive; } > /dev/null This will restart the bot after 180 seconds of inactivity. It does also kill any running 'zombie' process of the bot. UNDERSTANDING BOT CHANNEL OUTPUT Once your bot is running it will output some informations to the channel every 5 minutes (may be changed in the config). Example: -bot:@&channel- @ 5492(4.28%)/128036 (+147/-118). No 15/26. 47175(-22)chans, ircu 16 days, 6:11:37 -bot:@&channel- @ RPING-> h54.eu:140 h22.eu:96 h69.eu:182 h12.eu:148 h25.eu:229 h51.us:353, hub_link 2d15h0m (h22.eu) on the first line, in the order the fields appear: - number of users on the local server - percentage of local users compared to global users - number of global users - number of users who connected in the last 5 minutes - number of users who disconnected in the last 5 minutes - position of the local server (regarding the amount of users) - number of global server (having at least a certain amount of users, which is a configurable option) - number of channels - number of more/less channels since 5 minutes - uptime of the irc daemon on the second line: - last received rping results of all the hubs configured in your server config. value is in miliseconds. - the hub name which you're currectly connected to and the uptime of this link. USAGE OF THE BOT Once everything is correctly configured, the bot should take place in its local channel. The channel is set in +i (invite only) mode. To be able to join the channel, just do '/join &channel OVERRIDE'. For sure you need to be OPER to do it ;-P Then the bot will authenticate you automaticly. You can talk to the bot by PRIVMSG or NOTICE. On another side the bot is putting information into a file at each update (as defined by configuration) in var/genethic.log You can use the informations in this file to do some MRTG Graphs or others... And now, HAVE FUN! CONTACT For BugReport/questions/remarks/ideas you can : Email : bugs@genethic.ch Web : http://www.genethic.ch/download COPYRIGHT For more information concerning the copyright of this software, please have a look at the file 'LICENSE' in this directory. EOF