No description
Find a file
2018-09-19 01:13:54 +01:00
modules Only allow the register command on networks that support internal identity 2018-09-19 00:45:14 +01:00
.gitignore Ignore .key/.crt in .gitignore 2018-09-17 10:55:53 +01:00
bot.conf.example Add support for TLS client certificate/key 2018-09-17 10:55:39 +01:00
Config.py
Database.py Add optional aliases for IRCServers, mostly to make logging prettier. 2018-09-19 01:13:54 +01:00
EventManager.py Change default priority to "medium", add priority lower than "low" ("monitor") 2018-09-09 17:08:38 +01:00
Exports.py
IRCBot.py Add optional aliases for IRCServers, mostly to make logging prettier. 2018-09-19 01:13:54 +01:00
IRCBuffer.py Utils.irc_lower and Utils.irc_equals take an IRCServer parameter 2018-09-11 10:15:16 +01:00
IRCChannel.py Utils.irc_lower and Utils.irc_equals take an IRCServer parameter 2018-09-11 10:15:16 +01:00
IRCLineHandler.py When we get a command without *any* arguments e.g. ":nick!user@host AWAY" don't 2018-09-17 20:19:57 +01:00
IRCServer.py Add optional aliases for IRCServers, mostly to make logging prettier. 2018-09-19 01:13:54 +01:00
IRCUser.py Utils.irc_lower and Utils.irc_equals take an IRCServer parameter 2018-09-11 10:15:16 +01:00
LICENSE
Logging.py Change log level to show in logs as "[LEVEL]" instead of " - LEVEL - " 2018-09-19 00:43:44 +01:00
ModuleManager.py Add !enablemodule and !disablemodule to modules.py 2018-09-13 13:35:05 +01:00
README.md
start.py Add !enablemodule and !disablemodule to modules.py 2018-09-13 13:35:05 +01:00
Timer.py
Utils.py Implement __str__ and __repr__ on Utils.IRCHostmask 2018-09-17 21:49:32 +01:00

BitBot

Python3 event-driven modular IRC bot!

Dependencies

Configurating

To get BitBot off the ground, there's some API-keys and the like in bot.conf.example. move it to bot.conf, fill in the API keys you want (and remove the ones you don't want - this will automatically disable the modules that rely on them.)

Eagle

BitBot's National Rail module can optionally include output from Network Rail's SCHEDULE via Eagle. Configuration on BitBot's end is covered by the eagle- keys in bot.conf.example.

Running

Just run ./start.py

On first boot, he'll ask for a first server to connect to then exit. do ./start.py again and he'll connect to that server and join #bitbot (to get him to join other channels, simply invite him to them.)

Data storage

The main data storage for Bitbot is done in his sqlite3 database, bot.db.