Dendrite is a second-generation Matrix homeserver written in Go!
Find a file
Andrew Morgan 04551becb4
Filter Roomserver Events Based on Application Service (#467)
* Compile room and alias namespace regexs

We'll be needing these for event filtering in the appservice component.

Signed-off-by: Andrew Morgan <andrewm@matrix.org>

* App service filters roomserver events

Doing so based on namespace regexes that each app service has defined.

To get the aliases for a roomID a new aliasAPI endpoint was defined,
GetAliasesFromRoomID, which does exactly what it says on the tin.

Next step is to queue events to be sent off to each homeserver.

* Additionally filter state events for app services

* Fixed context, logging, derps, config handling

* Prevented user from creating more than one regex per namespace type

Got caught out by realizing I had an extra '-' in the config file. This
prevents anyone from making the same mistake :)

* Removed exclusive RoomID namespace regex, as we won't need to check
upon room creation if the ID is reserved exclusively by an AS (as this
is silly and horribly inefficient).

* Fixed all else mentioned
2018-05-30 13:43:13 +01:00
docker Set up a development environment with docker (#387) 2018-01-02 18:26:37 +00:00
docs Add some basic docs about opentracing (#366) 2017-12-05 14:55:27 +00:00
hooks run commit hook on what we're committing (#356) 2017-11-27 12:19:04 +00:00
jenkins use matching sytest branch, or develop 2017-09-20 12:08:24 +01:00
scripts Make travis builds a bit faster (#382) 2017-12-19 14:09:15 +00:00
src/github.com/matrix-org/dendrite Filter Roomserver Events Based on Application Service (#467) 2018-05-30 13:43:13 +01:00
vendor Update Prometheus metrics tracking (#459) 2018-05-23 15:42:08 +01:00
.editorconfig Add .editorconfig (#179) 2017-08-05 02:25:40 +01:00
.gitignore Set up a development environment with docker (#387) 2018-01-02 18:26:37 +00:00
.travis.yml Make travis builds a bit faster (#382) 2017-12-19 14:09:15 +00:00
CODE_STYLE.md Code Style: Prefer WithFields over Infof (#349) 2017-11-22 09:35:25 +00:00
CONTRIBUTING.md Added notes for contributing to dependencies (#435) 2018-05-09 13:34:50 +01:00
dendrite-config.yaml Add Application Service component (#462) 2018-05-24 13:54:42 +01:00
DESIGN.md Clean up README a bit (#289) 2017-10-10 09:33:41 +01:00
INSTALL.md Add MacOS kafka setup instructions (#396) 2018-03-09 10:12:29 +00:00
LICENSE Add Apache Version 2.0 license and headers to all golang files 2017-04-21 00:40:52 +02:00
linter-fast.json Update gometalinter, and disable gas (#371) 2017-12-08 19:13:17 +00:00
linter.json Update gometalinter, and disable gas (#371) 2017-12-08 19:13:17 +00:00
README.md Clean up README a bit (#289) 2017-10-10 09:33:41 +01:00
WIRING.md Small cleanup to WIRING.md 2018-05-22 14:13:26 +01:00

Dendrite Build Status

Dendrite will be a matrix homeserver written in go.

It's still very much a work in progress, but installation instructions can be found in INSTALL.md

An overview of the design can be found in DESIGN.md

Contributing

Everyone is welcome to help out and contribute! See CONTRIBUTING.md to get started!

We aim to try and make it as easy as possible to jump in.

Discussion

For questions about Dendrite we have a dedicated room on Matrix #dendrite:matrix.org.

Progress

There's plenty still to do to make Dendrite usable! We're tracking progress in a spreadsheet.