Home

Awesome

mautrix-syncproxy

A "proxy" microservice that runs Matrix C-S /sync on the server and pushes to-device events and other encryption-related things through the usual appservice transaction system.

This was designed for use with mautrix-wsproxy and the android-sms bridge to significantly reduce battery usage of the persistent foreground process (an idle websocket doesn't take much battery, but a HTTP request every 30 seconds does).

This partially implements MSC3202 and the to-device part of MSC2409.

Setup

You can download a prebuilt executable from the CI or GitHub releases. The executables are statically compiled and have no dependencies. Alternatively, you can build from source:

  1. Have Go 1.16 or higher installed.
  2. Clone the repository (git clone https://github.com/mautrix/syncproxy.git).
  3. Build with go build -o mautrix-syncproxy. The resulting executable will be in the current directory named mautrix-syncproxy.

Configuring is done via environment variables.

Since this is most useful with mautrix-wsproxy, the docker-compose instructions can be found in the mautrix-wsproxy readme.