mirror of
https://mau.dev/mautrix/go.git
synced 2026-03-14 14:25:53 +01:00
A Golang Matrix framework.
- Go 99.7%
- PLpgSQL 0.3%
The AccountDataStore leverages a user's account data to load/save the next_batch token, while retaining the InMemoryStore behaviour for saving filters and room state. This permits a client to know which messages it has seen/processed when (re)syncing, for example after a bot is restarted. This isn't possible with the InMemoryStore since the token would be lost when the process is restarted resulting in answering to messages we might have already handled before. An otherwise stateless client can now use the home server as its persistent data store for the next_batch token, instead of having to use a file or database of its own. |
||
|---|---|---|
| appservice | ||
| crypto | ||
| event | ||
| example | ||
| format | ||
| id | ||
| pushrules | ||
| .gitignore | ||
| client.go | ||
| error.go | ||
| filter.go | ||
| go.mod | ||
| go.sum | ||
| LICENSE | ||
| README.md | ||
| requests.go | ||
| responses.go | ||
| room.go | ||
| store.go | ||
| sync.go | ||
| version.go | ||
mautrix-go
A Golang Matrix framework. Used by gomuks, go-neb, mautrix-whatsapp and others.
Matrix room: #maunium:maunium.net
This project is based on matrix-org/gomatrix. The original project is licensed under Apache 2.0.
In addition to the basic client API features the original project has, this framework also has:
- Appservice support (Intent API like mautrix-python, room state storage, etc)
- End-to-end encryption support (incl. interactive SAS verification)
- Structs for parsing event content
- Helpers for parsing and generating Matrix HTML
- Helpers for handling push rules
This project contains modules that are licensed under Apache 2.0: