2024-04-03 19:41:36 -06:00
|
|
|
# matrix-room-exporter
|
|
|
|
|
2024-04-03 22:57:54 -06:00
|
|
|
_Export a Matrix a room._
|
|
|
|
|
|
|
|
This is a simple bot that can export a Matrix room and upload the compressed archive to a Cloudflare R2 bucket for the
|
|
|
|
room to download.
|
|
|
|
|
|
|
|
### Install
|
|
|
|
|
|
|
|
1. `pip install -r requirements.txt`
|
|
|
|
2. `cp config.yml.sample config.yml`
|
|
|
|
3. [Create a Cloudflare R2 bucket](https://developers.cloudflare.com/r2/get-started/#2-create-a-bucket).
|
|
|
|
4. Enable [public access](https://developers.cloudflare.com/r2/buckets/public-buckets/).
|
|
|
|
5. Create an [access key](https://developers.cloudflare.com/r2/api/s3/tokens/).
|
|
|
|
6. Set up an [object lifecycle rule](https://developers.cloudflare.com/r2/buckets/object-lifecycles/) to auto-delete old
|
|
|
|
exports from your bucket. 24 hours is a good choice.
|
|
|
|
7. Configure `config.yml` with your R2 credentials.
|
|
|
|
8. Set up a [matrix-org/pantalaimon](https://github.com/matrix-org/pantalaimon) for encrypted sync.
|
|
|
|
9. Create a new Matrix user and configure it in `config.yml`.
|
|
|
|
10. 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.
|