Mirror of the 'Export Matrix Messages' tool
Go to file
Aine c6df622a9b
add aur package
2024-05-08 12:48:30 +03:00
cmd move project repo; make linter happy 2023-10-13 22:59:25 +03:00
contrib init 2022-01-11 19:58:35 +02:00
export move project repo; make linter happy 2023-10-13 22:59:25 +03:00
flags move project repo; make linter happy 2023-10-13 22:59:25 +03:00
matrix update deps; update aux (justfile, CI config, linter, etc.) 2024-05-08 12:31:04 +03:00
vendor update deps; update aux (justfile, CI config, linter, etc.) 2024-05-08 12:31:04 +03:00
.gitlab-ci.yml update deps; update aux (justfile, CI config, linter, etc.) 2024-05-08 12:31:04 +03:00
.golangci.yml update deps; update aux (justfile, CI config, linter, etc.) 2024-05-08 12:31:04 +03:00
.goreleaser.yml update deps; update aux (justfile, CI config, linter, etc.) 2024-05-08 12:31:04 +03:00
LICENSE.md move project repo; make linter happy 2023-10-13 22:59:25 +03:00
README.md add aur package 2024-05-08 12:48:30 +03:00
go.mod update deps; update aux (justfile, CI config, linter, etc.) 2024-05-08 12:31:04 +03:00
go.sum update deps; update aux (justfile, CI config, linter, etc.) 2024-05-08 12:31:04 +03:00
justfile update deps; update aux (justfile, CI config, linter, etc.) 2024-05-08 12:31:04 +03:00

README.md

emm: Export Matrix Messages

A CLI tool that joins the room and exports last N messages to the file you specified.

Features

  • Get messages from any matrix room with pagination (if limit greather than page, to prevent timeout errors) or without it (if limit less or equals page)
  • Export messages to one file for all messages
  • Export each message in separate file
  • Custom templates supported (contrib contains an example of hugo post template, etke.cc/webite can be used as reference)
  • Delegation and aliases supported
  • Anyone/world_readable access supported without invite

Usage

Full example

That's how etke.cc/website news generated

emm -hs hs.url -u user -p pass -r "#room:hs.url" -t contrib/hugo-post-template.md -o /tmp/%s.md

Documentation

Usage of emm:
  -hs string
    	Homeserver URL (supports delegation)
  -l int
    	Messages limit
  -o string
    	Output filename. If it contains %s, it will be replaced with event ID (one message per file)
  -p string
    	Password of the matrix user
  -r string
    	Room ID or alias
  -t string
    	Template file. Default is JSON message struct
  -u string
    	Username/Login of the matrix user

How to get

  • Arch Linux AUR
  • Releases for freebsd, linux and MacOS
  • or go install gitlab.com/etke.cc/tools/emm@latest
  • or from source code