matrix-room-exporter/README.md

1.5 KiB

matrix-room-exporter

Export a Matrix a room.

A quick-n-dirty bot that exports a Matrix room and uploads the archive to a Cloudflare R2 bucket for the room to download.

Install

  1. pip install -r requirements.txt
  2. sudo apt install redis-server && sudo systemctl enable --now redis-server
  3. cp config.yml.sample config.yml
  4. Create a Cloudflare R2 bucket.
  5. Enable public access.
  6. Create an access key.
  7. Configure config.yml with your R2 credentials.
  8. Set up an object lifecycle rule to auto-delete old exports from your bucket. 24 hours is a good choice.
  9. Set up a matrix-org/pantalaimon for encrypted sync.
  10. Create a new Matrix user and configure it in config.yml
  11. Add your username to allowed_to_export in config.yml
  12. Start the bot with python3 main.py

Use

  1. Invite the new bot to the room you want to export.
  2. Send the message !export to start the export process.

The bot will upload the exported room to your R2 bucket and share the link with the room.

Remember, if your room is encrypted and new members can't see old history prior to their joining then the bot won't be able to export anything earlier than when it joined.