fulvia/README.md
2019-01-17 11:18:46 -05:00

59 lines
2.1 KiB
Markdown
Executable File

# Fulvia
## NIGGER DICKS 2: Electric Boogaloo
It's like Sopel, except rewritten from scratch using Twisted as a base and over half the features ripped out.
## Requirements
Python 3.6+
Python packages: `twisted, python-dateutil, requests, bs4, wolfram, pyenchant, emoji, Pillow, xml2dict, ipython, numpy, numpngw`
## Config
`nickname` - The nickname the bot will use.
`realname` - The realname the bot will use.
`username` - The user ident the bot will use.
`prefix` - The command prefix the bot will listen for.
`homedir` - The bot's home directory. Required for the bot to get certain pathing right. In the future that will be obtained automatically.
`server` - The server address to connect to.
`port` - The server port to connect to. SSL will probably not work.
`use_ssl` - Place holder.
`channels` - Which channels to join upon connection.
`db_filename` - Filename to use for the bot's database.
`owner` - The bot's owner. Use for permission purposes on restricted commands. Outranks admins. Should be the full hostmask of the user.
`admins` - Comma-delineated list of admins the bot will recognize for restricted commands. Should be the full hostmask for each one.
`default_time_format` - The format used for all timestamp operations. See the official python docs for the `time` library for more information.
`disabled_modules` - Comma-delineated list of modules *not* to load on startup. Modules should be specified without the `.py` extension.
### Example default.cfg
```
[core]
nickname = DiceBot9002
realname = DiceBot9002
username = DiceBot9002
prefix = .
homedir = /home/iou1name/fulvia
server = irc.steelbea.me
port = 6667
use_ssl = false
channels = #SomaIsGay,#test
db_filename = DiceBot9002.db
owner = iou1name!~iou1name@operational.operator
admins =
default_time_format = [%Y-%m-%d %H:%M:%S]
disabled_modules = countdown
[wolfram]
app_id = API_KEY
units = nonmetric
[movie]
tmdb_api_key = API_KEY
[currency]
api_key = API_KEY
```
## TODO
Fix the movie table
Consider re-adding the following modules: `etymology, ip`
Add CTCP responses
More complex versioning