1
0
Fork 0
mirror of https://codeberg.org/june64/mrvc.git synced 2026-01-09 23:52:54 +01:00
mrvc (max room version checker) - a tool for determining how many members support which maximum room version for a given Matrix room
Find a file
June 29e99b708c
get and print the aliases for each room
This is especially useful when using the recursive option as it allows
for easier identification of each child room.
2025-08-19 03:46:23 +02:00
config introduce configuration options for recursively getting rooms 2025-08-19 02:53:07 +02:00
roominfotree get and print the aliases for each room 2025-08-19 03:46:23 +02:00
.gitignore add go build output to .gitignore 2025-08-18 22:08:52 +02:00
Containerfile add Containerfile 2025-08-18 20:00:04 +02:00
flake.lock add flake.nix with an mrvc package for various platforms 2025-08-18 18:48:04 +02:00
flake.nix add flake.nix with an mrvc package for various platforms 2025-08-18 18:48:04 +02:00
go.mod add first version of mrvc (max room version checker) 2025-08-15 18:05:14 +02:00
go.sum add first version of mrvc (max room version checker) 2025-08-15 18:05:14 +02:00
LICENSE license mrvc under the MIT license 2025-08-15 23:56:17 +02:00
main.go get and print the aliases for each room 2025-08-19 03:46:23 +02:00
README.md introduce option for recursively checking all child rooms as well 2025-08-19 02:16:57 +02:00

mrvc (max room version checker)

mrvc is a tool for determining how many members support which maximum room version for a given Matrix room.

Its output looks something like this:

Room:
  !amwlFMejXQcoCxNYHH:matrix.org -> 1131
Given Aliases:
  #element-x-ios:matrix.org
Version Support:
  unkown -> 103
    ...
    unknown -> 101
      unknown -> 101
  v10 -> 2
    Synapse -> 2
      1.76.0 -> 1
      1.85.2 -> 1
  v11 -> 87
    Conduwuit -> 1
      0.4.6 (8f7ade4) -> 1
    Synapse -> 68
      ...
      1.134.0 -> 22
      1.135.0+pro.4 -> 3
      1.135.0 -> 17
    Tuwunel -> 9
      1.2.0 -> 1
      1.3.0 -> 8
    conduwuit -> 2
      0.5.0 (3e57b7d) -> 1
      0.5.0 (bec19df-dirty) -> 1
    continuwuity -> 7
      ...
      0.5.0-rc.7 (583cb92) -> 1
      0.5.0-rc.7 (e4a43b1) -> 1
  v12 -> 939
    Conduit -> 2
      0.10.8 -> 2
    Synapse -> 937
      1.135.2 -> 34
      1.136.0 -> 87
      1.136.0 (b=HEAD,t=v1.136.0,e8c6cb3d9e) -> 1
      1.136.0 (b=matrix-org-hotfixes-priv,a4db588e87) -> 815

Features

  • Show member count broken down by maximum room version, Matrix server implementation and version and optionally homeserver name.
  • Check multiple rooms at once by setting the --room flag multiple times.
  • Recursively check all the child rooms for the given rooms (spaces) by setting the --recursive flag.

Usage

Get a version of mrvc using either go build, nix or the Containerfile.
Furthermore a Matrix account with its access token is required. One way to obtain the access token is by going into Element -> Settings -> "Help & About" and at the bottom under "Advanced" the access token can be copied.

Then just run:

mrvc --user-id @myuser:myhomeserver.tld --token token --room '#name:homeserver.tld'

Note that each option is also available via an environment variable, which is especially useful for providing the access token to mrvc.

For a list of all the available options run:

mrvc -h

License

mrvc is licensed under the MIT License.