See: https://github.com/moan0s/matrix-registration-bot/blob/main/README.md Signed-off-by: Suguru Hirahara <acioustick@noreply.codeberg.org>
4.7 KiB
Setting up matrix-registration-bot (optional)
The playbook can install and configure matrix-registration-bot for you.
The bot allows you to easily create and manage registration tokens aka. invitation codes. It can be used for an invitation-based server, where you invite someone by sending them a registration token (tokens look like this: rbalQ0zkaDSRQCOp
). They can register as per normal but have to provide a valid registration token in the final step of the registration process.
See the project's documentation to learn what it does and why it might be useful to you.
Adjusting the playbook configuration
To enable the bot, add the following configuration to your inventory/host_vars/matrix.example.com/vars.yml
file:
matrix_bot_matrix_registration_bot_enabled: true
# By default, the playbook will set use the bot with a username like this: `@bot.matrix-registration-bot:example.com`.
# Uncomment and adjust this part if you'd like to use a username different than the default
# matrix_bot_matrix_registration_bot_matrix_user_id_localpart: bot.matrix-registration-bot
# Generate a strong password for the bot. You can create one with a command like `pwgen -s 64 1`.
matrix_bot_matrix_registration_bot_bot_password: PASSWORD_FOR_THE_BOT
# Enables registration
matrix_synapse_enable_registration: true
# Restrict registration to users with a token
matrix_synapse_registration_requires_token: true
The bot account will be created automatically.
Extending the configuration
There are some additional things you may wish to configure about the bot.
Take a look at:
roles/custom/matrix-bot-matrix-registration-bot/defaults/main.yml
for some variables that you can customize via yourvars.yml
fileroles/custom/matrix-bot-matrix-registration-bot/templates/config.yaml.j2
for the bridge's default configuration
Installing
After configuring the playbook, run it with playbook tags as below:
ansible-playbook -i inventory/hosts setup.yml --tags=setup-all,ensure-matrix-users-created,start
Notes:
-
The
ensure-matrix-users-created
playbook tag makes the playbook automatically create the bot's user account. -
The shortcut commands with the
just
program are also available:just install-all
orjust setup-all
just install-all
is useful for maintaining your setup quickly (2x-5x faster thanjust setup-all
) when its components remain unchanged. If you adjust yourvars.yml
to remove other components, you'd need to runjust setup-all
, or these components will still remain installed. -
If you change the bot password (
matrix_bot_matrix_registration_bot_bot_password
in yourvars.yml
file) subsequently, the bot user's credentials on the homeserver won't be updated automatically. If you'd like to change the bot user's password, use a tool like synapse-admin to change it, and then updatematrix_bot_matrix_registration_bot_bot_password
to let the bot know its new password.
Usage
To use the bot, start a chat with @bot.matrix-registration-bot:example.com
(where example.com
is your base domain, not the matrix.
domain).
Send help
to the bot to see the available commands.
You can also refer to the upstream Usage documentation.
If you have any questions, or if you need help setting it up, read the troublshooting guide or join #matrix-registration-bot:hyteck.de.
To clean the cache (session & encryption data) after you changed the bot's username, changed the login method from access_token to password etc… you can use:
just run-tags bot-matrix-registration-bot-clean-cache
Troubleshooting
As with all other services, you can find the logs in systemd-journald by logging in to the server with SSH and running journalctl -fu matrix-registration-bot
.
Increase logging verbosity
The default logging level for this component is INFO
. If you want to increase the verbosity, add the following configuration to your vars.yml
file and re-run the playbook:
# Valid values: ERROR, INFO, DEBUG
matrix_bot_matrix_registration_bot_logging_level: DEBUG