Maubot plugin for generating invite tokens via matrix-registration
Go to file
William Kray baaad0a52a clean up readme a bit 2022-09-06 14:44:45 -07:00
LICENSE add readme and license 2020-12-08 11:28:34 -08:00
README.md clean up readme a bit 2022-09-06 14:44:45 -07:00
base-config.yaml new config option for a custom bot response message, complete with variables and everything! fixes #1 2021-06-01 10:48:02 -07:00
invite.py improve error handling for bad server response 2021-06-08 08:11:15 -07:00
maubot.yaml improve error handling for bad server response 2021-06-08 08:11:15 -07:00

README.md

this is a simple maubot plugin which interacts with a matrix-registration deployment and generates invite tokens.

NOTICE: this bot depends on Maubot engine and matrix-registration. it does not work with synapse's native registration tokens. reasons you may still prefer this project:

  1. you already have set up maubot
  2. you already have set up matrix-registration
  3. this bot only requires administrative access to matrix-registration, whereas the ability to generate synapse registration tokens would require the bot to be a server administrator

if you would prefer to use native synapse registration tokens, please check out matrix-registration-bot, an unrelated but similar project which is a standalone bot (no maubot engine).

usage

modify the config to point to your matrix-registration url, include your admin secret to authenticate, and ensure that you're in the list of approved users.

please note that matrix-registration versions BELOW 0.9.0 have different API endpoints, expected date structures, json arguments, etc. and require the legacy_mr value in your config to be set to True! If your matrix-registration instance is 0.9.0 or greater, leave this as false.

once your bot is running, simply use the command

!invite generate

to generate a token with some generic text you can copy-paste when sharing it with your invitee!

to check the status of a specific token, use

!invite status MyTokenName

and similarly to list all tokens in the database, use

!invite list

to revoke a token, use

!invite revoke MyTokenName