aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--README.md4
-rw-r--r--docs/help/setup.md44
2 files changed, 46 insertions, 2 deletions
diff --git a/README.md b/README.md
index a63fafa7..5bc994e7 100644
--- a/README.md
+++ b/README.md
@@ -4,8 +4,8 @@ Python3 event-driven modular IRC bot!
## Dependencies
[BeautifulSoup4](https://pypi.python.org/pypi/beautifulsoup4), [requests](https://pypi.org/project/requests/), [scrypt](https://pypi.python.org/pypi/scrypt), [suds](https://pypi.python.org/pypi/suds-jurko) and [twitter](https://pypi.python.org/pypi/twitter). Use `pip3 install -r requirements.txt` to install them all at once.
-## 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.)
+## Setup
+See [docs/help/setup.md](docs/help/setup.md).
Run `./start.py` to run the bot with default settings (`--help` for more information) which will ask you for server details the first time you run it (run it again after filling out that information to get the bot going.) If you need to add more servers, use `./start.py --add-server`.
diff --git a/docs/help/setup.md b/docs/help/setup.md
new file mode 100644
index 00000000..84d79381
--- /dev/null
+++ b/docs/help/setup.md
@@ -0,0 +1,44 @@
+## Setting up BitBot
+
+* Move `bot.conf.example` to `bot.conf` and fill in the config options you care about. Ones blank or removed will disable relevant functionality.
+* Run `./start.py -a` to add a server.
+* Run `./start.py -m permissions -M master-password` to get the master admin password (needed to add regular admin accounts)
+* Run `./start.py` to start the bot.
+* 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
+* `/msg <bot> masterlogin <master admin password>` to login as master admin
+* `/msg <bot> givepermission <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.
+
+### 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 &lt;username>:&lt;password>
+> /msg <bot> config server sasl plain &lt;username>:&lt;password>
+> /msg <bot> config server sasl scram-sha-1 &lt;username>:&lt;password>
+> /msg <bot> config server sasl scram-sha-256 &lt;username>:&lt;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> performadd <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>