bitbot-3.11-fork/docs/help/config.md
deepend-tildeclub 398aca20fa
config.md: add information on -c option (#352)
* Update  config.md

added -c option to the how to run the bot.   Without it I'm sure a ton of people had troubles with module loading and just gave up.

* Update config.md

making -c a clearer option?

* Update docs/help/config.md

Co-authored-by: David Schultz <me@zpld.me>

Co-authored-by: David Schultz <me@zpld.me>
2023-01-02 22:53:12 -06:00

2.5 KiB

Setting up BitBot

  • Move docs/bot.conf.example to ~/.bitbot/bot.conf and fill in the config options you care about. Ones blank or removed will disable relevant functionality.
  • Run ./bitbotd -a to add a server.
  • Run ./bitbotd to start the bot or ./bitbotd -c /path/to/bot.conf for non-standard config location (outside of ~/.bitbot).
  • Run ./bitbotctl command master-password to get the master admin password (needed to add regular admin accounts)
  • Join #bitbot on a server with the bot (or invite it to another channel)
  • /msg <bot> register <password here> to register your nickname with the bot
  • (use /msg <bot> identify <password> to log in in the future)
  • /msg <bot> masterlogin <master admin password> to login as master admin
  • /msg <bot> permission add <your nickname> * to give your account admin permissions

Configure client TLS certificate

Generate a TLS keypair and point bot.conf's tls-key to the private key and tls-certificate to the public key.

Below is an OpenSSL command example that will create a bitbot-cert.pem and bitbot-key.pem with 10y validity (self-signed):

openssl req -x509 -nodes -sha512 -newkey rsa:4096 -keyout bitbot-key.pem -out bitbot-cert.pem -days 3650 -subj "/CN=YourBotNick"

Configure SASL

Configure the bot to use SASL to authenticate (usually used for NickServ identification)

EXTERNAL usually mean client TLS certificate authentication; USERPASS is a BitBot-specific term that selects the strongest user/password algorithm.

/msg <bot> config server sasl userpass <username>:<password>

/msg <bot> config server sasl plain <username>:<password>

/msg <bot> config server sasl scram-sha-1 <username>:<password>

/msg <bot> config server sasl scram-sha-256 <username>:<password>

/msg <bot> config server sasl external

Commands on-connect

The perform.py module allows the bot to execute a saved list of raw IRC commands against a server it's connecting to. Use /msg <bot> perform add <raw irc command> to add to the current server's list of commands ({NICK} in a raw command will be replaced with the bot's current nick.)

Config options

View available config options

/msg <bot> config bot|server|channel|user

Set config options

/msg <bot> config bot <setting> <value>

/msg <bot> config server <setting> <value>

/msg <bot> config channel:#bitbot <setting> <value>

/msg <bot> config user <setting> <value>

/msg <bot> config user:other_user <setting> <value>