2.5 KiB
Setting up maubot (optional)
The playbook can install and configure maubot for you.
After setting up maubot, you can use the web management interface to make it do things.
The default location of the management interface is matrix.<your-domain>/_matrix/maubot/
See the project's documentation to learn what it does and why it might be useful to you.
Adjusting the playbook configuration
Add the following configuration to your inventory/host_vars/matrix.DOMAIN/vars.yml
file:
matrix_bot_maubot_enabled: true
matrix_bot_maubot_admins:
- yourusername: securepassword
You can add multiple admins. The admin accounts are not connected to any matrix ID and are only used to access the maubot administration interface.
Installing
After configuring the playbook, run the installation command again:
ansible-playbook -i inventory/hosts setup.yml --tags=setup-all,start
Usage
You can visit matrix.<your-domain>/_matrix/maubot/
to manage your available plugins, clients and instances.
You should start in the following order
- Create one or more clients: A client is a matrix account which the bot will use to message.
- Upload some Plugins: Plugins can be obtained from here or any other source.
- Create an instance: An instance is the actual bot. You have to specify a client which the bot instance will use and the plugin (how the bot will behave)
To add a client you first need to create an account and obtain a valid access token.
Registering the bot user
You need to register the bot user manually before setting up the bot. You can use the playbook to register a new user:
ansible-playbook -i inventory/hosts setup.yml --extra-vars='username=bot.maubot password=PASSWORD_FOR_THE_BOT admin=yes' --tags=register-user
Choose a strong password for the bot. You can generate a good password with a command like this: pwgen -s 64 1
.
Obtaining an admin access token
This can be done via mbc login
then mbc auth
(see the maubot documentation). To run these commands you'll need to open the bot docker container with docker exec -it matrix-bot-maubot sh
Alternatively, use Element or curl to obtain an access token. However these two methods won't allow the bot to work in encrypted rooms.