A Golang Matrix framework.
  • Go 99.7%
  • PLpgSQL 0.3%
Find a file
Daniele Sluijters 9fcaadcb2c store: Add AccountDataStore
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.
2020-12-26 14:39:06 +01:00
appservice Fix duplicate event handling 2020-11-10 16:30:09 +02:00
crypto Keep references to memory allocated for Olm structs 2020-11-21 14:37:07 +02:00
event Merge branch 'master' into cross-sign 2020-10-27 00:43:30 +02:00
example Update example a bit 2020-09-12 21:05:55 +03:00
format Fix HTML parser adding extra newline at the end of code blocks 2020-09-04 18:18:29 +03:00
id DB changes for storing cross-signing keys and signatures 2020-08-30 20:45:26 +02:00
pushrules Merge branch 'e2ee' 2020-05-05 21:17:15 +03:00
.gitignore Rename package 2018-10-08 01:22:27 +03:00
client.go Use pointer structs with SendMessageEvent (ref #21) 2020-11-27 16:01:54 +02:00
error.go Merge branch 'master' into cross-sign 2020-10-27 00:38:52 +02:00
filter.go Overhaul event content representation 2020-04-19 03:23:27 +03:00
go.mod Merge branch 'master' into cross-sign 2020-10-27 00:38:52 +02:00
go.sum Merge branch 'master' into cross-sign 2020-10-27 00:38:52 +02:00
LICENSE Switch license to MPL 2.0 2020-04-13 15:49:16 +03:00
README.md Update README.md 2020-09-15 16:40:22 +03:00
requests.go Merge branch 'master' into cross-sign 2020-10-27 00:38:52 +02:00
responses.go Merge branch 'master' into cross-sign 2020-10-27 00:38:52 +02:00
room.go Overhaul event content representation 2020-04-19 03:23:27 +03:00
store.go store: Add AccountDataStore 2020-12-26 14:39:06 +01:00
sync.go Make sure DefaultSyncer implements ExtensibleSyncer 2020-06-09 22:09:23 +03:00
version.go Bump version to v0.8.0-rc.4 2020-11-21 14:38:00 +02:00

mautrix-go

GoDoc

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: