MatrixSynapse/synapse/federation
Erik Johnston 197fae1639 Use event streams to calculate presence
Primarily this fixes a bug in the handling of remote users joining a
room where the server sent out the presence for all local users in the
room to all servers in the room.

We also change to using the state delta stream, rather than the
distributor, as it will make it easier to split processing out of the
master process (as well as being more flexible).

Finally, when sending presence states to newly joined servers we filter
out old presence states to reduce the number sent. Initially we filter
out states that are offline and have a last active more than a week ago,
though this can be changed down the line.

Fixes #3962
2019-03-27 13:41:36 +00:00
..
sender Use event streams to calculate presence 2019-03-27 13:41:36 +00:00
transport Make federation endpoints more tolerant of trailing slashes v2 (#4935) 2019-03-26 11:35:29 +00:00
__init__.py Remove unused ReplicationLayer 2018-03-13 11:00:04 +00:00
federation_base.py No vdh tests! 2019-01-29 23:11:48 +00:00
federation_client.py MSC 1866 - Use M_UNSUPPORTED_ROOM_VERSION for invite API 2019-02-23 14:50:43 +00:00
federation_server.py When presence is enabled don't send over replication 2019-02-27 13:53:46 +00:00
persistence.py Fix origin handling for pushed transactions 2018-09-05 13:08:07 +01:00
send_queue.py Use event streams to calculate presence 2019-03-27 13:41:36 +00:00
units.py Clean up event accesses and tests 2018-11-02 13:44:14 +00:00